AWS infrastructure notes

Who should read it: It is for you if you are looking for a quick overview of this topic for a project, to conduct/appear in an interview, or in general. As we learn more, we will update this article. What is Cloud computing: Cloud computing is an on-demand IT resources and applications via the internet with the pay-as-you-go solution. In a simpler way, cloud computing provides ways to access servers, databases, storage, and many application services over the internet. Why cloud infrastructure matters:  As of today, AWS has 81 availability zones within 25 geographic regions. On a high level, AWS cloud infrastructure these main benefits:
  • Security
  • Availability
  • Performance
  • Global Footprint
  • Scalability
  • Flexibility
Advantages of cloud computing:  Six major advantages are below:
  • Variable versus Capital Expense: Instead of setting up servers and paying the cost of it, we can pay for the infrastructure per the usage.
  • Economies of Scale: Using cloud resources like AWS can reduce the cost.
  • Stop guessing capacity: Companies can gain as little or as much per the requirement, within a short notice.
  • Increase speed and agility: new IT resources can be made available very quickly.
  • Focus on business differentiators: Businesses can stop focusing on maintaining the infrastructure and focus on main business items.
  • Go global in minutes: it’s easy to expand the applications globally, in few minutes.
Cloud computing models:
  • All-in cloud based applications:  everything on cloud.
  • Hybrid deployment: A hybrid solution with some parts on cloud and some on on-premises.
AWS compute and networking services:
  • Amazon Elastic Compute Cloud (EC2): it’s a service that provides resizable compute capacity in the cloud. Organization can select memory, CPU, etc. per their need.
  • AWS Lambda: It’s a platform that allows developers to have zero maintenance of infrastructure. AWS deploys the code on Amazon EC2 instances.
  • Auto-scaling: Auto scaling allows companies to scale up or down the resources as needed.
  • Elastic load balancing: Elastic load balancing allows automatic distribution of traffic across Amazon load balancers.
  • AWS elastic Beanstalk: To deploy a web application faster, this service handles resource provisioning, monitoring, etc. automatically.
  • Amazon Virtual private Cloud (Amazon VPC): Amazon VPC allows organizations to control the AWS infrastructure, by allowing them to choose IP address, etc.
  • AWS Direct Connect: This provides direct network connections between a company\’s owned data centers and AWS.
  • Amazon Route 53: It’s a highly scalable DNS service. For example, using Route 53, I configured my own domain name with AWS.
 Storage and Content delivery:
  • Simple Storage Service (Amazon S3): Amazon S3 provide the storage for various usages like storing files, code backups, etc.
  • Amazon Glacier: It’s a low cost service that allows data storage for the long term backups.
  • Amazon Elastic Block Store (Amazon EBS): Amazon EBS provide block-level storage volume for use within Amazon EC2 instances.
  • AWS Storage Gateway: AWS Storage Gateway service connects on-premises software appliances with AWS infrastructure.
  • Amazon CloudFront: It’s a content delivery web service.
Databases:
  • Amazon Relational Database Service (Amazon RDS): It’s a fully managed relational database service.
  • Amazon DynamoDB: It’s a NOSQL database service.
  • Amazon RedShift: It’s a petabyte-scale data warehouse service.
  • Amazon ElastiCache: It’s a service that provides in-memory cache in the cloud. It supports Memcached and Redis cache engines.
Management Tools:
  • Amazon CloudWatch: It’s a monitoring service for cloud resources and cloud hosted applications.
  • AWS CloudFormation: It provides a way to effective manage a collection of AWS resources.
  • AWS CloudTrail: It records logs for the audit and review.
  • AWS Config: This service provides configuration history and configuration change notifications.
Security and Identity services:
  • AWS Identity and Access Management (IAM): It allows organization users to securely access AWS cloud services.
  • AWS Key Management Service (KMS): It allows users to create encryption keys to encrypt the data. It uses Hardware Security Modules (HMS) to protect the security of the keys.
  • AWS Directory Service: AWS Directory Service uses Microsoft Active Directory. Using AWS Directory Service, organization users and user groups can manage single sign-on, group user accounts, etc.
  • AWS Certificate Manager: It’s a service that manages SSL/TLS certificates for use with AWS cloud services.
  • AWS Web Application Firewall (WAF): WAF allows to manage security and allow/deny access of web applications, for the security attacks prevention.
Application Services:
  • Amazon API Gateway: It is a managed service that helps developers to create, publish, maintain, and secure APIs.
  • Amazon Elastic Transcoder: It’s a media transcoding in the cloud. Transcoding is a process to convert an audio or a video file from one format to another.
  • Amazon Simple Notification Service (SNS): Amazon SMS is a service to delivery messages to recipients.
  • Amazon Simple Email Service (SES): It is an email service, to send any kind of emails to their customers.
  • Amazon Simple Workflow Service (SWS): SWS is a workflow service that can run jobs in parallel or in a sequential steps. It has retry features.
  • Amazon Simple Queue Service (SQS): SQS is a messaging queueing service.
Five pillars of Amazon Web Services (AWS):
  • Operational excellence:
    • Infrastructure as a Code (IaC): There are two main services: CloudFormation and Cloud Development Kit (CDK)
    • Observability: it’s a process of monitoring infrastructure metrics at three levels: ◦ Infrastructure level ◦ Application level ◦ Account level
    • Three things:
      • PRINCIPAL(S) for WHO has permissions to
      • ACTION(S) for WHAT to perform
      • RESOURCE(S) specifies which properties to access
  • Network Security: A zero trust on Network Security involves a defense in search approach. It involves Network Level Security and Resource Level Security. Data Encryption is about a plan to encrypt the data in the transit and at rest.
  • Reliability: this pillar focuses on building services resilient to both service and infrastructure disruptions
  • Performance efficiency: focuses on running services efficiently and scalably. AWS focuses on two categories:
    • Selection: For the selection, there are three things you need to consider:
      • Type of service: it could be VM based, container based, or serverless based.
      • Degree of Management
      • Configuration
    • Scaling: Is is easy to scale in AWS
  • Cost optimization: this pillar helps achieve business outcomes while minimizing costs. Think of cloud spend in terms of Opex, instead of Capex. Opex is a pay as you go model. Capex is a one time cost.
References:
  • Performance efficiency: focuses on running services efficiently and scalably. AWS focuses on two categories:
    • Selection: For the selection, there are three things you need to consider:
      • Type of service: it could be VM based, container based, or serverless based.
      • Degree of Management
      • Configuration
    • Scaling: Is is easy to scale in AWS
  • Cost optimization: this pillar helps achieve business outcomes while minimizing costs. Think of cloud spend in terms of Opex, instead of Capex. Opex is a pay as you go model. Capex is a one time cost.
References:
  • Performance efficiency: focuses on running services efficiently and scalably. AWS focuses on two categories:
    • Selection: For the selection, there are three things you need to consider:
      • Type of service: it could be VM based, container based, or serverless based.
      • Degree of Management
      • Configuration
    • Scaling: Is is easy to scale in AWS
  • Cost optimization: this pillar helps achieve business outcomes while minimizing costs. Think of cloud spend in terms of Opex, instead of Capex. Opex is a pay as you go model. Capex is a one time cost.
References:
  • Performance efficiency: focuses on running services efficiently and scalably. AWS focuses on two categories:
    • Selection: For the selection, there are three things you need to consider:
      • Type of service: it could be VM based, container based, or serverless based.
      • Degree of Management
      • Configuration
    • Scaling: Is is easy to scale in AWS
  • Cost optimization: this pillar helps achieve business outcomes while minimizing costs. Think of cloud spend in terms of Opex, instead of Capex. Opex is a pay as you go model. Capex is a one time cost.
References:
  • Performance efficiency: focuses on running services efficiently and scalably. AWS focuses on two categories:
    • Selection: For the selection, there are three things you need to consider:
      • Type of service: it could be VM based, container based, or serverless based.
      • Degree of Management
      • Configuration
    • Scaling: Is is easy to scale in AWS
  • Cost optimization: this pillar helps achieve business outcomes while minimizing costs. Think of cloud spend in terms of Opex, instead of Capex. Opex is a pay as you go model. Capex is a one time cost.
References:

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s