Skip to content

Latest commit

 

History

History
247 lines (187 loc) · 8.59 KB

File metadata and controls

247 lines (187 loc) · 8.59 KB

AWS Cheatsheet

text

1. Introduction:

  • Amazon Web Services (AWS) is a comprehensive cloud platform offering over 200 fully featured services from data centers globally. AWS provides cloud solutions for compute, storage, databases, machine learning, security, and more.

2. Core AWS Services:

  • Compute:

    • EC2 (Elastic Compute Cloud):

      • Virtual servers for running applications.

      • Instance types: General Purpose, Compute Optimized, Memory Optimized, etc.

      • Key Concepts: AMI, Instance Types, Key Pairs, Security Groups, EBS Volumes.

      • Example:

        aws ec2 run-instances --image-id ami-12345678 --instance-type t2.micro --key-name MyKeyPair
    • Lambda:

      • Serverless computing to run code without provisioning or managing servers.

      • Key Concepts: Functions, Event Sources, IAM Roles.

      • Example:

        aws lambda create-function --function-name my-function --runtime python3.8 --role arn:aws:iam::123456789012:role/execution_role --handler my_function.handler --zip-file fileb://my-deployment-package.zip
    • ECS/EKS (Elastic Container Service/Elastic Kubernetes Service):

      • ECS: Fully managed container orchestration service.

      • EKS: Managed Kubernetes service for running Kubernetes on AWS.

      • Key Concepts: Clusters, Tasks, Services, Fargate.

      • Example:

        aws ecs create-cluster --cluster-name my-cluster
  • Storage:

    • S3 (Simple Storage Service):

      • Scalable object storage service.

      • Key Concepts: Buckets, Objects, Storage Classes, Lifecycle Policies.

      • Example:

        aws s3 mb s3://my-bucket
        aws s3 cp my-file.txt s3://my-bucket/
    • EBS (Elastic Block Store):

      • Block storage for use with EC2 instances.

      • Key Concepts: Volumes, Snapshots, Volume Types (gp2, io1, st1, etc.).

      • Example:

        aws ec2 create-volume --size 10 --region us-east-1 --availability-zone us-east-1a --volume-type gp2
    • Glacier:

      • Long-term, secure, and durable storage for data archiving and backup.

      • Key Concepts: Vaults, Archives, Retrieval Policies.

      • Example:

        aws glacier create-vault --vault-name my-vault --account-id -
  • Database:

    • RDS (Relational Database Service):

      • Managed relational database service supporting various engines (MySQL, PostgreSQL, Oracle, SQL Server, etc.).

      • Key Concepts: DB Instances, Snapshots, Security Groups, Multi-AZ.

      • Example:

        aws rds create-db-instance --db-instance-identifier mydbinstance --db-instance-class db.t2.micro --engine mysql --master-username admin --master-user-password password --allocated-storage 20
    • DynamoDB:

      • Managed NoSQL database service.

      • Key Concepts: Tables, Items, Attributes, Primary Key, Global/Local Secondary Indexes.

      • Example:

        aws dynamodb create-table --table-name MyTable --attribute-definitions AttributeName=Id,AttributeType=N --key-schema AttributeName=Id,KeyType=HASH --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5
    • Aurora:

      • MySQL and PostgreSQL-compatible relational database built for the cloud, providing high performance and availability.

      • Key Concepts: Clusters, Replicas, Global Databases.

      • Example:

        aws rds create-db-cluster --db-cluster-identifier my-cluster --engine aurora-mysql --master-username admin --master-user-password password

3. Networking:

  • VPC (Virtual Private Cloud):

    • Isolated network environment to launch AWS resources.

    • Key Concepts: Subnets, Route Tables, Internet Gateways, NAT Gateways, Security Groups, NACLs.

    • Example:

      aws ec2 create-vpc --cidr-block 10.0.0.0/16
      aws ec2 create-subnet --vpc-id vpc-12345678 --cidr-block 10.0.1.0/24
  • Route 53:

    • Scalable DNS and domain name registration service.

    • Key Concepts: Hosted Zones, Record Sets, Health Checks, Traffic Policies.

    • Example:

      aws route53 create-hosted-zone --name example.com --caller-reference unique-string
  • CloudFront:

    • Content delivery network (CDN) for delivering content globally with low latency.

    • Key Concepts: Distributions, Origins, Behaviors, Edge Locations.

    • Example:

      aws cloudfront create-distribution --origin-domain-name mybucket.s3.amazonaws.com
  • Elastic Load Balancing (ELB):

    • Distributes incoming traffic across multiple targets, such as EC2 instances.

    • Key Concepts: Load Balancers (ALB, NLB, CLB), Target Groups, Listeners.

    • Example:

      aws elbv2 create-load-balancer --name my-load-balancer --subnets subnet-12345678 subnet-87654321 --security-groups sg-12345678

4. Security and Identity:

  • IAM (Identity and Access Management):

    • Manages users, groups, roles, and permissions.

    • Key Concepts: Users, Groups, Roles, Policies, MFA, Access Keys.

    • Example:

      aws iam create-user --user-name myuser
      aws iam attach-user-policy --user-name myuser --policy-arn arn:aws:iam::aws:policy/AmazonS3FullAccess
  • KMS (Key Management Service):

    • Managed service for creating and controlling encryption keys.

    • Key Concepts: CMKs (Customer Master Keys), Aliases, Grants, Key Policies.

    • Example:

      aws kms create-key --description "My CMK"
  • CloudTrail:

    • Tracks user activity and API usage across AWS accounts.

    • Key Concepts: Trails, Logs, S3 Buckets, Insights.

    • Example:

      aws cloudtrail create-trail --name MyTrail --s3-bucket-name my-bucket

5. Management Tools:

  • CloudFormation:

    • Infrastructure as Code service for modeling and setting up AWS resources.

    • Key Concepts: Templates, Stacks, Resources, Outputs, Parameters.

    • Example:

      aws cloudformation create-stack --stack-name my-stack --template-body file://template.json
  • CloudWatch:

    • Monitoring and observability service for AWS resources and applications.

    • Key Concepts: Metrics, Alarms, Logs, Events, Dashboards.

    • Example:

      aws cloudwatch put-metric-alarm --alarm-name my-alarm --metric-name CPUUtilization --namespace AWS/EC2 --statistic Average --period 300 --threshold 80 --comparison-operator GreaterThanOrEqualToThreshold --evaluation-periods 1 --alarm-actions arn:aws:sns:us-east-1:123456789012:my-topic
  • AWS Config:

    • Service for assessing, auditing, and evaluating the configurations of AWS resources.

    • Key Concepts: Rules, Resources, Aggregators, Config Recorder.

    • Example:

      aws configservice put-configuration-recorder --configuration-recorder name=my-recorder,roleARN=arn:aws:iam::123456789012:role/my-role
  • Trusted Advisor:

    • Provides real-time guidance to help you provision your resources following AWS best practices.
    • Key Concepts: Checks, Recommendations.
    • Example:
      • Access via AWS Management Console.

6. Advanced Topics:

  • Cost Management:

    • Use AWS Cost Explorer, Budgets, and Cost & Usage Reports to monitor and optimize spending.

    • Example:

      aws ce get-cost-and-usage --time-period Start=2024-08-01,End=2024-08-31 --granularity MONTHLY --metrics "BlendedCost"
  • Auto Scaling:

    • Automatically adjust the capacity of your resources based on demand.

    • Key Concepts: Auto Scaling Groups, Scaling Policies, Launch Configurations.

    • Example:

      aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg --launch-configuration-name my-lc --min-size 1 --max-size 10 --desired-capacity 2 --vpc-zone-identifier subnet-12345678
  • Serverless Architectures:

    • Use AWS Lambda, API Gateway, and DynamoDB to build serverless applications.

    • Key Concepts: Functions, APIs, Tables, Events, Triggers.

    • Example:

      aws apigateway create-rest-api --name 'My API'

**7. Best

Practices:**

  • Security:

    • Use IAM Roles and Policies, enable MFA, encrypt data at rest and in transit, monitor with CloudTrail, and apply the Principle of Least Privilege.
  • Reliability:

    • Design for failure, use multiple Availability Zones (AZs), implement backups, and set up auto-scaling.
  • Performance Efficiency:

    • Right-size instances, use appropriate storage classes, and leverage managed services.
  • Cost Optimization:

    • Use Reserved Instances (RIs), Spot Instances, and review billing regularly.
  • Operational Excellence:

    • Automate processes, monitor operations, and use infrastructure as code (IaC).