Deployment Automation, Arch for the Cloud Flashcards
AWS Elastic Beanstalk
- Managed service for web applications on Amazon EC2
instances and Docker containers - Deploys an environment that can include Auto Scaling,
Elastic Load Balancing and databases - Considered a Platform as a Service (PaaS) solution
- Allows full control of the underlying resources
- Code is deployed using a ZIP file, WAR file or Git repository
AWS Cloud Development Kit (CDK)
- Open-source software development framework to define
your cloud application resources using familiar programming
languages - Preconfigures cloud resources with proven defaults using
constructs - Provisions your resources using AWS CloudFormation
- Enables you to model application infrastructure using
TypeScript, Python, Java, and .NET - Use existing IDE, testing tools, and workflow patterns
AWS CloudFormation
- Infrastructure is provisioned consistently, with fewer
mistakes (human error) - Less time and effort than configuring resources manually
- Free to use (you’re only charged for the resources
provisioned) - A template is a YAML or JSON template used to describe the
end-state of the infrastructure you are either provisioning or
changing - CloudFormation creates a Stack based on the template
- Can easily rollback and delete the entire stack as well
Amazon CloudFront
- CloudFront is a content delivery network (CDN) that allows
you to store (cache) your content at “edge locations” located
around the world - This allows customers to access content more quickly and
provides security against DDoS attacks - CloudFront can be used for data, videos, applications, and
APIs - CloudFront reduces latency for global users
AWS Global Accelerator
- Routes connections to application endpoints (EC2/ELB) in
multiple Regions - Improves the availability and performance of applications
with local or global users - Uses the AWS global network to optimize the path from
users to applications, improving the performance of TCP and
UDP traffic
AWS Global Accelerator vs CloudFront
- Both use the AWS global network and edge locations
- CloudFront improves performance for cacheable content and
dynamic content - GA improves performance for a wide range of applications
over TCP and UDP - GA proxies connections to applications in one or more AWS Regions
- GA provides failover between AWS Regions
AWS X-Ray
- AWS X-Ray helps developers analyze and debug production,
distributed applications, such as those built using a microservices architecture AWS OpsWorks
AWS OpsWorks
- AWS OpsWorks is a configuration management service that
provides managed instances of Chef and Puppet - Updates include patching, updating, backup, configuration
and compliance management
AWS Well-Architected Framework
Helps you understand the pros and cons of
decisions you make while building systems on AWS
Based on 6 pillars: Operational Excellence, Security, Reliability, Performance, Sustainability
Operational Excellence Pillar
- Support development and run workloads
effectively - Gain insight into workload operations
- Continuously improve processes and procedures to
deliver business value
Best practices for operational excellence pillar?
- Perform operations as code
- Make frequent, small, reversible changes
- Refine operations procedures frequently
- Anticipate failure
- Learn from all operational failures
Security Pillar and best practices
- Protect data, systems, and assets to take advantage
of cloud technologies to improve your security - Best practices for security:
- Implement a strong identity foundation
- Enable traceability
- Apply security at all layers
- Automate security best practices
- Protect data in transit and at rest
- Keep people away from data
- Prepare for security events
Reliability Pillar
- Ensuring a workload can perform its intended function
correctly and consistently when it’s expected to - This includes the ability to operate and test the
workload through its total lifecycle
Best practices for reliability pillar?
- Automatically recover from failure
- Test recovery procedures
- Scale horizontally to increase aggregate workload
availability - Stop guessing capacity
- Manage change in automation
Performance Efficiency Pillar
- The ability to use computing resources efficiently to
meet system requirements, and to maintain that
efficiency as demand changes and technologies
evolve
Best practices for Performance Efficiency Pillar?
- Best practices for performance efficiency:
- Democratize advanced technologies
- Go global in minutes
- Use serverless architectures
- Experiment more often
- Consider mechanical sympathy
Cost Optimization Pillar and best practices?
- The ability to run systems to deliver business value
at the lowest price point - Best practices for cost optimization:
- Implement Cloud Financial Management
- Adopt a consumption model
- Measure overall efficiency
- Stop spending money on undifferentiated heavy
lifting - Analyze and attribute expenditure
Pay-as-you-go
- Easily adapt to changing business needs
- Improved responsiveness to change
- Adapt based on needs, not forecasts
- Reduce risk over overpositioning of missing capacity
How do you Save when you reserve
- Invest in reserved capacity (e.g. RDS and EC2)
- Save up to 75% compared to on-demand (pay-as-you-go)
- The more you pay upfront the greater the discount
How do you Pay less by using more
- Pay less using volume-based discounts
- Tiered pricing means the more you use the lower the unit
pricing
Types of Billing
On demand
Reserved
Spot
Dedicated Instance
Dedicated Host
Savings Plan
On-Demand Billing
Standard rate - no discount; no commitments; dev/test, short-term, or unpredictable workloads
Reserved Billing
1 or 3-year commitment;
up to 75% discount; steady-state,
predictable workloads and reserved capacity
Spot Instances
Bid for unused capacity; up to 90% discount;
can be terminated at any time; workloads
with flexible start and end times
Dedicated Instances
Physical isolation at the host hardware level
from instances belonging to other
customers; pay per instance
Dedicated Hosts
Physical server dedicated for your use;
Socket/core visibility, host affinity; pay per
host; workloads with server-bound software
licenses
Savings Plans
Commitment to a consistent amount of
usage (EC2 + Fargate + Lambda); Pay by
$/hour; 1 or 3-year commitment
Amazon S3 Pricing
- Storage class – e.g. Standard or IA
- Storage quantity – data volume stored in your buckets on a
per GB basis - Number of requests – the number and type of requests
Lifecycle transitions requests – moving data between storage
classes - Data transfer – data transferred out of an S3 region is
charged
Options to access to S3 archives - access times, retrieval and retrieval requests
Expedited Standard Bulk
Data access time 1-5 minutes, 3-5 hours, 5-12 hours
Data retrievals $0.03 per GB, $0.01 per GB, $0.0025 per GB
Retrieval requests On-Demand: $0.01 per request Provisioned: $100 per Provisioned Capacity Unit (expedited), $0.050 per 1,000
requests (standard)
$0.025 per 1,000 requests (bulk)
Amazon EBS Pricing
- Volumes – volume storage for all EBS volumes type is
charged by the amount of GB provisioned per month - Snapshots – based on the amount of space consumed by
snapshots in S3
Amazon RDS Pricing
- Clock hours of server uptime – amount of time the DB
instance is running - Database characteristics – e.g. database engine, size and
memory class - Database purchase type – e.g. On-Demand, Reserved
Amazon DynamoDB charges?
Charged for reading, writing, and storing data
Two modes impact charging:
On-demand capacity mode
Provisioned capacity mode
Amazon DynamoDB On-demand capacity mode
Charged for reading, writing, and storing data
On-demand capacity mode
Charged for reads and writes
No need to specify how much capacity is required
Good for unpredictable workloads
Amazon DynamoDB Provisioned capacity mode
- Specify number of reads and writes per second
- Can use Auto Scaling
- Good for predictable workloads
- Consistent traffic or gradual changes
AWS Lambda pricing
- Number of requests
- Duration of request – rounded up to the nearest millisecond
- Price is dependent on the amount of memory allocated to
the function
AWS Organizations
* Consolidated billing has the following benefits:
- One bill – You get one bill for multiple accounts
- Easy tracking – You can track the charges across multiple
accounts and download the combined cost and usage data - Combined usage – You can combine the usage across all
accounts in the organization to share the volume pricing
discounts and Reserved Instance discounts - No extra fee – Consolidated billing is offered at no additional
cost
AWS Budgets
- Set Custom Budgets - set custom usage and reservation
budgets - Configure Alerts – receive alerts when you exceed or are
forecast to exceed your alert thresholds - Integrated with other AWS services – Includes Cost Explorer
Chatbot, and Service Catalog
AWS Cost Explorer
- Free tool that allows you to view charts of your costs
- Cost Explorer can be used to discover patterns in how much
you spend on AWS resources over time and to identify cost
problem areas
AWS Cost & Usage Report
- Publish AWS billing reports to an Amazon S3 bucket
- Reports break down costs by:
- Hour, day, month, product, product resource, tags
AWS Price List API
- Query the prices of AWS services
- Price List Service API
- AWS Price List API
Sustainability Well Arch Pillar
The ability to increase efficiency across all components of a workload by maximizing the benefits from the provisioned resources.