AWS Services and Use Cases:
Amazon S3 (Simple Storage Service): Used for object storage. You can store and retrieve data, host static websites, backup, and data archiving.
Amazon EC2 (Elastic Compute Cloud): Provides scalable virtual servers. Use cases include hosting web applications, running various workloads, and setting up development and test environments.
Amazon RDS (Relational Database Service): Managed relational database service for MySQL, PostgreSQL, Oracle, and others. It's used for running databases in a highly available and scalable manner.
Amazon Lambda: A serverless computing service for running code in response to events. Use cases include building event-driven applications, automating tasks, and running code without managing servers.
Amazon CloudWatch: Monitoring and observability service used for collecting and tracking metrics, logs, and events. It's essential for managing and monitoring AWS resources.
Tools for Sending Logs to the Cloud: Common tools include the AWS CloudWatch Logs agent, AWS CloudTrail, and third-party log management services like Loggly, Splunk, and ELK Stack (Elasticsearch, Logstash, Kibana).
IAM Roles: IAM (Identity and Access Management) roles are used to delegate permissions to AWS services or users. Roles are typically associated with AWS resources like EC2 instances or Lambda functions. You create and manage IAM roles through the AWS Management Console, AWS CLI, or AWS SDKs.
Upgrade or Downgrade with Zero Downtime: This involves strategies like Blue-Green deployments or rolling deployments. With Blue-Green, you create a duplicate environment, switch traffic, and then upgrade the inactive environment. For rolling deployments, you gradually upgrade instances, monitoring for issues to minimize downtime.
Infrastructure as Code (IaC): IaC is a practice of managing and provisioning infrastructure using code. AWS offers tools like AWS CloudFormation and AWS CDK to define and deploy infrastructure as code. This ensures consistency and repeatability in infrastructure management.
Load Balancer: AWS provides various load balancers:
Application Load Balancer (ALB): Distributes traffic at the application layer (HTTP/HTTPS). Useful for web applications.
Network Load Balancer (NLB): Distributes TCP/UDP traffic at the network layer. Ideal for high-performance applications.
Classic Load Balancer: Provides basic load balancing for EC2 instances.
AWS CloudFormation: It's a service to create and manage AWS resources as code. You define templates (YAML or JSON) specifying the resources you need, and CloudFormation provisions and manages them. It's used for automated infrastructure provisioning and management.
AWS CloudFormation vs. AWS Elastic Beanstalk: CloudFormation is used for creating and managing a wide range of AWS resources. Elastic Beanstalk, on the other hand, is a Platform as a Service (PaaS) that simplifies application deployment by handling the platform configuration. CloudFormation provides more control and flexibility, while Elastic Beanstalk is more streamlined for deploying applications.
Security Attacks in the Cloud: Common cloud security attacks include DDoS attacks, data breaches, identity theft, and misconfigured services. Minimizing them involves practices like proper IAM policies, network security, encryption, and monitoring.
Recovering an EC2 Instance with Lost Key: You cannot recover an EC2 instance if you've lost the key pair used for SSH access. You'll need to either recreate the instance with a new key pair or attempt to recover it if you have other means of access, such as through IAM roles or other users.
Gateway: A gateway is a network node that serves as an entry point for data traffic. In the context of AWS, it could refer to services like API Gateway (for managing APIs), VPN Gateway (for connecting on-premises networks), or VPC Gateway (for connecting VPCs).
Difference Between Amazon RDS, DynamoDB, and Redshift:
RDS is a managed relational database service.
DynamoDB is a NoSQL database for fast and flexible data storage.
Redshift is a data warehousing service for analyzing large datasets.
Hosting a Website on S3: Yes, hosting a static website on Amazon S3 is a common practice because it's cost-effective, scalable, and reliable for serving static content like HTML, CSS, JavaScript, and images. However, for dynamic websites, you might use other services like EC2 or AWS Elastic Beanstalk for the server-side logic.
Thank you so much for reading
Follow me on LinkedIn to see interesting posts like this : )