Day 18: AWS Provisioning , server less services, Elastic Beanstalk
AWS Cloud Practitioner With Neel Patel
Provisioning Services
Provisioning refers to the allocation or creation of resources and services for a customer. AWS Provisioning Services are responsible for setting up and managing these resources.
Elastic Beanstalk (EB): A Platform as a Service (PaaS) that simplifies web application deployment. It automatically provisions AWS services like EC2, S3, SNS, CloudWatch, Auto Scaling Groups, and Elastic Load Balancers. It's similar to Heroku but for AWS.
AWS OpsWorks: A configuration management service offering managed instances of open-source configuration management tools Chef and Puppet.
CloudFormation: An Infrastructure as Code (IaC) service that automates provisioning through templates written in JSON or YAML, enabling the automated setup of AWS services.
AWS Quick Starts: Pre-made packages that streamline the deployment and configuration of AWS compute, network, storage, and other services needed for specific workloads.
AWS Marketplace: A digital catalog of thousands of software listings from independent vendors, allowing users to find, buy, test, and deploy software.
AWS Amplify: A mobile and web application framework that provisions multiple AWS services for backend support.
AWS App Runner: A fully managed service for deploying containerized web applications and APIs at scale, with no infrastructure management required.
AWS Copilot: A CLI tool for quickly launching and managing containerized applications on AWS.
AWS CodeStar: Provides a unified interface for managing software development activities, including launching common stacks like LAMP.
AWS Cloud Development Kit (CDK): An IaC tool that allows you to use your preferred programming language to generate CloudFormation templates for IaC.
Platform as a Service (PaaS)
Platform as a Service (PaaS) allows customers to develop, run, and manage applications without the complexity of managing the underlying infrastructure.
- Elastic Beanstalk: A PaaS that simplifies the deployment of web applications. Users upload their code, and Elastic Beanstalk handles the setup of infrastructure components like load balancers, autoscaling, and monitoring. It is not recommended for large, enterprise-level production applications.
Serverless Services
Serverless refers to cloud services where the underlying infrastructure, servers, and operating systems are managed by the cloud provider. These services are generally highly available, scalable, and cost-effective.
DynamoDB: A serverless NoSQL key/value and document database that scales to billions of records with consistent data return. It handles scaling and sharding automatically.
Simple Storage Service (S3): A serverless object storage service that allows for the storage of unlimited files. You pay for what you store, without worrying about the underlying file system.
ECS Fargate: A serverless container orchestration service. Unlike ECS, which requires running EC2 instances, Fargate handles the infrastructure management, billing per container.
AWS Lambda: A serverless functions service that executes code without server management. You pay based on the runtime of your code, rounded to the nearest 100 milliseconds.
Step Functions: A state machine service that coordinates multiple AWS services into serverless workflows, allowing data sharing among Lambdas, waiting for tasks, and creating logical steps.
Aurora Serverless: A serverless, on-demand version of Amazon Aurora, suitable for variable traffic workloads with cold-start delays.
Serverless Characteristics
Serverless architecture generally describes fully managed cloud services with varying degrees of serverless features:
Highly Elastic and Scalable: Automatically adjusts resources based on demand.
Highly Available: Ensures uptime and resilience.
Highly Durable: Provides data redundancy and protection.
Secure by Default: Built with security measures in place.
Abstracts Infrastructure: Users are billed based on task execution, not idle resources.
Scales to Zero: Costs are zero when not in use.
Pay-for-Value: Charges are based on actual usage rather than allocated resources.
Serverless services provide an analogy to energy ratings, where services can be compared based on their serverless characteristics.