AWS Academy Cloud Foundations Extended Notes Modules 1 10 PDF
AWS Academy Cloud Foundations Extended Notes Modules 1 10 PDF
AWS Academy Cloud Foundations Extended Notes Modules 1 10 PDF
• Cloud computing is the on-demand delivery of compute power, database, storage, applications, and
other IT resources via the internet with pay-as-you-go pricing.
• Cloud computing enables you to stop thinking of your infrastructure as hardware, and instead
think of (and use) it as software.
Security:
• Security groups
• Network ACLs
• IAM (auth)
Networking:
• Elastic Balancing
• Amazon VPC
Compute:
• AMI (Amazon Machine Images)
• Amazon EC2 instances
Storage and database:
• Amazon EBS
• Amazon EFS
• Amazon S3
• Amazon RDS
What is AWS?
• AWS is a secure cloud platform that offers a broad set of global cloud-based products.
• AWS provides you with on-demand access to compute, storage, network, database, and other IT
resources and management tools.
• AWS offers flexibility.
• You pay only for the individual services you need, for as long as you use them.
• AWS services work together like building blocks.
• The service you select depends on your business goals and technology requirements.
• AWS CAF provides guidance and best practices to help organizations build a comprehensive
approach to cloud computing across the organization and throughout the IT lifecycle to accelerate
successful cloud adoption.
• AWS CAF is organized into six perspectives.
• Perspectives consist of sets of capabilities.
Business capabilities:
• Business
• We must ensure that IT is aligned with business needs, and that IT investments can be traced to
demonstratable business results.
• IT finance
• IT strategy
• Benefits realization
• Business risk management
• Business managers, finance managers, budget owners, and strategy stakeholders
• People
• We must prioritize training, staffing, and organizational changes to build an agile organization.
• Resource management
• Incentive management
• Career management
• Training management
• Organizational change management
• Human resources, staffing, and people managers.
• Governance
• We must ensure that skills and processes align IT strategy and goals with business strategy and
goals so the organization can maximize the business value of its IT investment and minimize
business risks.
• Portfolio management
• Program and project management
• Business performance measurement
• License management
• CIO, program managers, enterprise architects, business analysts, and portfolio managers
Technical capabilities:
• Platform
• We must understand and communicate the nature of IT systems and their relationships. We
must be able to describe the architecture of the target state environment in detail.
• Compute provisioning
• Network provisioning
• Storage provisioning
• Database provisioning
• Systems and solution architecture
• Application development
• CIO, IT managers, and solutions architects.
• Security
• We must ensure that the organization meets its security objectives.
• Identity and access management
• Detective control
• Infrastructure security
• Data protection
• Incident response
• CISO, IT security managers, and IT security analysts
• Operations
• We align with and support the operations of the business, and define how day-to-day, quarter-
to-quarter, and year-to-year business will be conducted.
• Service monitoring
• Application performance monitoring
• Resource inventory management
• Release management/change management
• Reporting and analytics
• Business continuity/Disaster recovery
• IT service catalog
• IT operations managers and IT support managers
Key takeways:
• There is no charge for:
• Inbound data transfer
• Data transfer between services within the same AWS region.
• Pay for what you use.
• Start and stop anytime.
• No long-term contracts are required.
• Some services are free, but the other AWS services that they provision might not be free.
TCO considerations:
• Server Costs
• Hardware: Server, rack chassis power distribution units (PDUs), top-of-rack (TOR) switches (and
maintenance)
• Software: Operating system, virtualization licenses (and maintenance)
• Facilities cost: Space, power, cooling
• Storage Costs
• Hardware: Storage disks, storage area network (SAN) or Fiber Channel (FC) switches
• Storage administration costs
• Facilities cost: space, power, cooling
• Network Costs
• Network hardware: LAN switches, load balancer bandwidth costs
• Network administration costs
• Facilities cost: space, power, cooling
• It Labor Costs
• Server administration costs
Hard benefits:
• Reduced spending on compute, storage, networking, security
• Reductions in hardware and software purchases (capex)
• Reductions in operational costs, backup, and disaster recovery
• Reduction in operations personnel
Soft Benefits:
• Reuse of service and applications that enable you to define (and redefine solutions) by using the
same cloud service.
• Increased developer productivity
• Improved customer satisfaction
• Agile business processes that can quickly respond to new and emerging opportunities
• Increase in global reach
Section 3: Billing
• AWS Organizations is a free account management service that enables you to consolidate multiple
AWS accounts into an organization that you create and centrally manage. AWS Organizations
include consolidated billing and account management capabilities that help you to better meet the
budgetary, security, and compliance needs of your business.
Organizations Setup:
1. Create Organization
2. Create organizational units
3. Create service control policies (SCP)
4. Test restrictions
Tools
• AWS Budgets
• AWS Cost and Usage Report
• AWS Cost Explorer
• Proactive guidance
• Technical Account Manager (TAM)
• Best practices
• AWS Trusted Advisor
• Account assistance
• AWS Support Concierge
• The AWS Global Infrastructure is designed and built to deliver a flexible, reliable, scalable, and
secure cloud computing environment with high-quality global network performance.
• This map from https://infrastructure.aws shows the current AWS Regions and more that are coming
soon.
AWS Regions:
• An AWS Region is a geographical area.
• Data replication across Regions is controlled by you.
• Communication between Regions uses AWS backbone network infrastructure.
• Each Region provides full redundancy and connectivity to the network.
• A Region typically consists of two or more Availability Zones.
Selecting a Region:
• Determine the right Region for your services, applications, and data based on these factors.
• Data governance, legal requirements
• Proximity to customers (latency)
• Services available within the Region
• Costs (vary by Region)
Availability Zones
• Each Region has multiple Availability Zones
• Each Availability Zone is a fully isolated partition of the AWS infrastructure
• There are currently 69 Availability Zones worldwide
• Availability Zones consist of discrete data centers
• They are design for fault isolation
• They are interconnected with other Availability Zones by using high-speed private networking
• You choose your Availability Zones
• AWS recommends replicating data and resources across Availability Zones for resiliency.
AWS data centers
• AWS data centers are designed for security.
• Data centers are where the data resides and data processing occurs.
• Each data center has redundant power, networking, and connectivity, and is housed in a separate
facility.
• A data center typically has 50,000 to 80,000 physical servers.
Points of Presence
• AWS provides a global network of 187 Points of Presence locations.
• Consists of 176 edge locations and 11 Regional edge caches.
• Used with Amazon CloudFront
• A global Content Delivery Network (CDN), that delivers content to end users with reduced
latency.
• Regional edge caches used for content with infrequent access.
Key takeaways
• The AWS Global Infrastructure consists of Regions and Availability Zones.
• Your choice of a Region is typically based on compliance requirements or to reduce latency.
• Each Availability Zone is physically separate from other Availability Zones and has redundant power,
networking, and connectivity.
• Edge locations, and Regional edge caches improve performance by caching content closer to users.
When you define an IAM user, you select what types of access the user is permitted to use.
Programmatic access
• Authenticate using:
• Access key ID
• Secret access key
• Provides AWS CLI and AWS SDK access
IAM MFA
• MFA provides increased security
• In addition to user name and password, MFA requires a unique authentication code to access AWS
services
IAM: Authorization
• Assign permissions by creating an IAM policy
• Permissions determine which resources and operations are allowed:
• All permissions are implicitly denied by default
• If something is explicitly denied, it is never allowed
• Best practice: Follow the principle of least privilege.
• Note: The scope of IAM service configurations is global. Settings apply across all AWS Regions.
IAM policies
• An IAM policy is a document that defines permissions
• Enables fine-grained access control
• Two types of policies – identity-based and resource-based
• Identity-based policies
• Attach a policy to any IAM entity
• An IAM user, an IAM group, or an IAM role
• Policies specify:
• Actions that may be performed by the entity
• Actions that may not be performed by the entity
• A single policy can be attached to multiple entities
• A single entity can have multiple policies attached to it
• Resource-based policies
• Attached to a resource (such as an S3 bucket)
• Characteristics of resource-based policies—
• Specifies who has access to the resource and what actions they can perform on it
• The policies are inline only, not managed
• Resource-based policies are supported only by some AWS services
IAM groups:
• An IAM group is a collection of IAM users
• A group is used to grant the same permissions to multiple users
• Permissions granted by attaching IAM policy or policies to the group
• A user can belong to multiple groups
• There is no default group
• Groups cannot be nested
IAM roles:
• An IAM role is an IAM identity with specific permissions
• Similar to an IAM user
• Attach permissions policies to it
• Different from an IAM user
• Not uniquely associated with one person
• Intended to be assumable by a person, application, or service
• Role provides temporary security credentials
• Examples of how IAM roles are used to delegate access –
• Used by an IAM user in the same AWS account as the role
• Used by an AWS service – such as Amazon EC2 – in the same account as the role
• Used by an IAM user in a different AWS account than the role
Solution:
• Define an IAM policy that grants access to the S3 bucket.
• Attach the policy to a role
• Allow the EC2 instance to assume the role.
• Step 4: Enable a billing report, such as the AWS Cost and Usage Report
• Billing reports provide information about your use of AWS resources and estimated costs for that
use
• AWS delivers the reports to an Amazon S3 bucket that you specify
• Report is updated at least once per day
• The AWS Cost and Usage Report tracks your AWS usage and provides estimated charges associated
with your AWS account, either by the hour or by the day
AWS Organizations:
• AWS Organizations enables you to consolidate multiple AWS accounts so that you centrally manage
them
• Security features of AWS Organizations:
• Group AWS accounts into organizational units (OUs) and attach different access policies to
each OU
• Integration and support for IAM
• Permissions to a user are the intersection of what is allowed by AWS Organizations and
what is granted by IAM in that account
• Use service control policies to establish control over the AWS services and API actions that each
AWS account can access
AWS Config:
• Assess, audit, and evaluate the configurations of AWS resources
• Use for continuous monitoring of configurations
• Automatically evaluate recorded configurations versus desired configurations
• Review configuration changes
• View detailed configuration histories
• Simplify compliance auditing and security analysis
AWS Artifact:
• Is a resource for compliance-related information
• Provide access to security and compliance reports, and select online agreements
• Can access example downloads:
• AWS ISO certifications
• Payment Card Industry (PCI) and Service Organization Control (SOC) reports
• Access AWS Artifact directly from the AWS Management Console
• Under Security, Identify & Compliance, click Artifact
Amazon VPC
• Enables you to provision a logically isolated section of the AWS Cloud where you can launch AWS
resources in a virtual network that you define
• Gives you control over your virtual networking resources, including:
• Selection of IP address range
• Creation of subnets
• Configuration of route tables and network gateways
• Enables you to customize the network configuration for your VPC
• Enables you to use multiple layers of security
VPCs
• Logically isolated from other VPCs
• Dedicated to your AWS account
• Belong to a single AWS Region and can span multiple Availability Zones
Subnets
• Range of IP addresses that divide a VPC
• Belong to a single Availability Zone
• Classified as public or private
IP addressing
• When you create a VPC, you assign it to an IPv4 CIDR block (range of private IPv4 addresses)
• You cannot change the address range after you create the VPC.
• The largest IPv4 CIDR block size is /16
• The smallest IPv4 CIDR block size is /28
• IPv6 is also supported (with a different block size limit)
• CIDR blocks of subnets cannot overlap
Reserved IP addresses
• Example: A VPC with an IPv4 CIDR block of 10.0.0.0/16 has 65,536 total IP addresses. The VPC has
four equal-sized subnets. Only 251 IP addresses are available for us by each subnet (Each subnet
using /24).
VPC Sharing
• VPC sharing enables customers to share subnets with other AWS accounts in the same organization
in AWS Organizations. VPC sharing enables multiple AWS accounts to create their application
resources – such as EC2, RDS, Redshift clusters, and Lambda functions – into shared, centrally
managed VPCs.
VPC sharing offers several benefits:
• Separation of duties – centrally controlled VPC structure, routing, IP address allocation
• Ownership – Application owners continue to own resources, accounts, and security groups
• Security groups – VPC sharing participants can reference the security group IDs of each other
• Efficiencies – Higher density in subnets, efficient use of VPNs and AWS Direct Connect
• No hard limits – Hard limits can be avoided – for example, 50 virtual interfaces per AWS Direct
Connect connection through simplified network architecture
• Optimized costs – Costs can be optimized through the reuse of NAT gateways, VPC interface
endpoints, and intra-Availability Zone traffic
VPC peering
• You can connect VPCs in your own AWS account, between AWS accounts, or between AWS Regions
• Restrictions:
• IP spaces cannot overlap
• Transitive peering is not supported
• You can only have one peering resource between the same two VPCs
• AWS Site-to-Site VPN – By default, instances that you launch into a VPC cannot communicate with a
remote network. To connect your VPC to your remote network:
• Create a new virtual gateway device (called a virtual private network (VPN) gateway) and attach
it to your VPC
• Define the configuration of the VPN device or the customer gateway.
• Create a custom route table to point corporate data center-bound traffic to the VPN gateway.
You also must update security group rules.
• Establish an AWS Site-to-Site VPN connection to link the two systems together
• Configure routing to pass traffic through the connection
VPC endpoints
• A VPC endpoint is a virtual device that enables you to privately connect your VPC to supported AWS
services and VPC endpoint services that are powered by AWS PrivateLink.
• Does not require an internet gateway, NAT device, VPN connection, or DX connection.
• Interface endpoints (powered by AWS PrivateLink)
• Gateway endpoints (Amazon S3 and Amazon DynamoDB)
Section 3 takeaways
• There are several VPC networking options, which include:
• Internet gateway
• NAT gateway
• VPC endpoint
• VPC peering
• VPC sharing
• AWS Site-to-Site VPN
• AWS Direct Connect
• AWS Transit Gateway
• You can use the VPC Wizard to implement your design
Security groups
• Act at the instance level, not the subnet level
• Acts as a virtual firewall for your instance, and it controls and filters inbound and outbound traffic
• Security groups have rules that control inbound and outbound instance traffic
• Default security groups deny all inbound traffic and allow all outbound traffic
• Security groups are stateful
Amazon Route 53
• Is a highly available and scalable Domain Name System (DNS) web service
• Is used to route end users to internet applications by translating names (like www.example.com)
into numeric IP addresses (like 192.0.2.1) that computers use to connect to each other
• Is fully compliant with IPv4 and IPv6
• Connects user requests to infrastructure running in AWS and also outside of AWS
• Is used to check the health of your resources
• Features traffic flow
• Enables you to register domain names
Multi-region deployment
• Latency-based routing to the Region
• Load balancing routing to the Availability Zone
DNS failover
• Improve the availability of your applications that run on AWS by:
• Configuring backup and failover scenarios for your own applications
• Enabling highly available multi-region architectures on AWS
• Creating health checks
Amazon CloudFront
• Fast, global, and secure CDN service
• Global network of edge locations and Regional edge caches
• Self-service model
• Pay-as-you-go pricing
Benefits:
• Fast and global
• Security at the edge
• Network-level and application-level protection. Various built-in protections, such as AWS Shield
Standard. You can also use configurable features, such as AWS Certificate Manager (ACM), to
create and manage custom Secure Sockets Layer (SSL) certificates at no extra cost.
• Highly programmable
• Integrates with Lambda@Edge so that you can run custom code across AWS locations
worldwide, which enables you to move complex application logic closer to users to improve
responsiveness. Offers CI/CD environments.
• Deeply integrated with AWS
• Cost-effective
Module 6: Compute
AWS offers many compute services. Here is a brief summary of what each compute service offers:
• Elastic Compute Cloud (EC2) provides resizable virtual machines.
• IaaS | Instance-based | Virtual machines
• Provision virtual machines that you can manage as you choose
• A familiar concept to many IT professionals
• EC2 Auto Scaling supports application availability by allowing you to define conditions that will
automatically launch or terminate EC2 instances.
• Elastic Container Registry (ECR) is used to store and retrieve Docker images.
• Container-based computing | Instance-based
• Spin up and execute jobs more quickly
• Elastic Container Service (ECS) is a container orchestration service that supports Docker.
• Container-based computing | Instance-based
• Spin up and execute jobs more quickly
• VMware Cloud on AWS enables you to provision a hybrid cloud without custom hardware.
• Elastic Beanstalk provides a simple way to run and manage web applications.
• PaaS | For web applications
• Focus on your code (building your application)
• Can easily tie into other services – databases, DNS, etc
• Fast and easy to get started
• Lambda is a serverless compute solution. You pay only for the compute time that you use.
• Serverless computing | Function-based | Low-cost
• Write and deploy code that executes on a schedule or that can be triggered by events
• Use when possible (architect for the cloud)
• A relatively new concept for many IT staff members, but easy to use after you learn how
• Elastic Kubernetes Service (EKS) enables you to run managed Kubernetes on AWS.
• Container-based computing | Instance-based
• Spin up and execute jobs more quickly
• Lightsail provides a simple-to-use service for building an application or website.
• Batch provides a tool for running batch jobs at any scale.
• Fargate provides a way to run containers that reduce the need for you to manage servers or
clusters.
• Container-based computing | Instance-based
• Spin up and execute jobs more quickly
• Outposts provides a way to run select AWS services in your on-premises data center.
• Serverless Application Repository provides a way to discover, deploy, and publish serverless
applications.
Basic monitoring
• Default, no additional cost
• Metric data sent to CloudWatch every 5 minutes
Detailed monitoring
• Fixed monthly rate for seven pre-selected metrics
• Metric data delivered every 1 minute
On-Demand Instances
• Pay by the hour
• No long-term commitments
• Eligible for the AWS Free Tier
Reserved Instances
• Full, partial, or no upfront payment for instance you reserve
• Discount on hourly charge for that instance
• 1-year or 3-year term
Spot Instances
• Instances run as long as they are available and your bid is above the Spot Instance price
• They can be interrupted by AWS with a 2-minute notification
• Interruption options include terminated, stopped or hibernated
• Prices can be significantly less expensive compared to On-Demand Instances
• Good choice when you have flexibility in when your applications can run
Dedicated Hosts
• A physical server with EC2 instance capacity fully dedicated to your use
Dedicated Instances
• Instances that run in a VPC on hardware that is dedicated to a single customer
Container basics
• Containers are a method of operating system virtualization
• Benefits –
• Repeatable
• Self-contained execution environments
• Software runs the same in different environments
• Developer’s laptop, test, production
• Faster to launch and stop or terminate then virtual machines
What is Docker?
• Docker is a software platform that enables you to build, test, and deploy applications quickly
• You run containers on Docker
• Containers are created from a template called an image
• A container has everything a software application needs to run
• Libraries, system tools, code, runtime
• Amazon Elastic Container Service (ECS)
• A highly scalable, fast, container management service
• Key benefits –
• Orchestrates the execution of Docker containers
• Maintains and scales the fleet of nodes that run your containers
• Removes the complexity of standing up the infrastructure
• Integrated with features that are familiar to Amazon EC2 service users –
• Elastic Load Balancing
• Amazon EC2 security groups
• Amazon EBS volumes
• IAM roles
What is Kubernetes?
• Kubernetes is open source software for container orchestration
• Deploy and manage containerized applications at scale
• The same toolset can be used on premises and in the cloud
• Complements Docker
• Docker enables you to run multiple containers on a single OS host
• Kubernetes orchestrates multiple Docker hosts (nodes)
• Automates –
• Container provisioning
• Networking
• Load distribution
• Scaling
• An event source is an AWS service or a developer-created application that produces events that
trigger an AWS Lambda function to run
• You can invoke Lambda functions directly with the Lambda console, the Lambda API, the AWS SDK,
AWS CLI, and AWS toolkits.
Module 7: Storage
Amazon S3 pricing
• Pay only for what you use, including –
• GBs per month
• Transfer OUT to other Regions
• PUT, COPY, POST, LIST, and GET requests
• You do not pay for –
• Transfers IN to Amazon S3
• Transfers OUT from Amazon S3 to Amazon CloudFront or Amazon EC2 in the same Region
Amazon S3 Glacier is a data archiving service that is designed for security, durability, and an extremely
low cost:
• Designed to provide 11 9s of durability for objects
• It supports the encryption of data in transit and at rest through Secure Sockets Layer (SSL) or
Transport Layer Security (TLS)
• The vault Lock feature enforces compliance through a policy
• Extremely low-cost design works well for long-term archiving
• Provides three options for access to archives – expedited, standard, and bulk – retrieval times
range from a few minutes to several hours
Amazon S3 Glacier
• Storage service for low-cost data archiving and long-term backup
• You can configure lifecycle archiving of Amazon S3 content to Amazon S3 Glacier
• Retrieval options –
• Standard: 3-5 hours
• Bulk: 5-12 hours
• Expedited: 1-5 minutes
Amazon S3 Glacier use cases
• Media asset archiving
• Healthcare information archiving
• Regulatory and compliance archiving
• Scientific data archiving
• Digital preservation
• Magnetic tape replacement
Module 8: Databases
Amazon RDS
• A managed service that sets up and operates a relational database in the cloud
• AWS provides a service that sets up, operates, and scales the relational database without any
ongoing administration. Amazon RDS provides cost-efficient and resizable capacity, while
automating time-consuming administrative tasks.
Use cases
• Web and mobile applications
• High throughput
• Massive storage scalability
• High availability
• Ecommerce applications
• Low-cost database
• Data security
• Fully managed solution
• Mobile and online games
• Rapidly grow capacity
• Automatic scaling
• Database monitoring
Compatibility
• Amazon Redshift is compatible with the tools that you already known and use. It supports standard
SQL. It also provides high-performance Java Database Connectivity (JDBC) and Open Database
Connectivity (ODBC) connectors, which enable you to use the SQL clients and BI tools of your choice.
High availability
• Amazon Aurora stores multiple copies of your data across multiple Availability Zones with
continuous backups to Amazon S3. Can use up to 15 read replicas to reduce the possibility of losing
your data. Designed for instant crash recovery if your primary database becomes unhealthy.
Cloud architects:
• Engage with decision makers to identify the business goal and the capabilities that need
improvement
• Ensure alignment between technology deliverables of a solution and the business goals
• Work with delivery teams that are implementing the solution to ensure that the technology features
are appropriate
Security questions
• Identity and access management
• How do you manage credentials and authentication?
• How do you control human access?
• How do you control programmatic access?
• Detective controls
• How do you detect and investigate security events?
• How do you defend against emerging security threats?
• Infrastructure protection
• How do you protect your networks?
• How do you protect your compute resources?
• Data protection
• How do you classify your data?
• How do you protect your data at rest?
• How do you protect your data in transit?
• Incident response
• How do you respond to an incident?
Reliability pillar
• Focus
• Prevent and quickly recover from failures to meet business and customer demand
• Key topics
• Setting up
• Cross-project requirements
• Recovery planning
• Handling change
Reliability questions
• Foundations
• How do you manage service limits?
• How do you manage your network topology?
• Change management
• How does your system adapt to changes in demand?
• How do you monitor your resources?
• How do you implement change?
• Failure management
• How do you back up data?
• How does your system withstand component failure?
• How do you test resilience?
• How do you plan for disaster recovery?
Reliability
• A measure of your system’s ability to provide functionality when desired by the user
• System includes all system components: hardware, firmware, and software
• Probability that your entire system will function as intended for a specific period
• Mean time between failures (MTBF) = total time in service/number of failures
Availability
• Normal operation time / total time
• A percentage of uptime (for example, 99.9 percent) over time (for example, 1 year)
• Number of 9s – Five 9s means 99.999 percent availability
High availability
• System can withstand some measure of degradation while still remaining available
• Downtime is minimized
• Minimal human intervention is required
Example:
Amazon CloudWatch
• Monitors –
• AWS resources
• Applications that run on AWS
• Collects and tracks –
• Standard metrics
• Custom metrics
• Alarms –
• Send notifications to an Amazon SNS topic
• Perform Amazon EC2 Auto Scaling or Amazon EC2 actions
• Events –
• Define rules to match changes in AWS environment and route these events to one or more
target functions or streams for processing
CloudWatch alarms
• Create alarms based on –
• Static threshold
• Anomaly detection
• Metric math expression
• Specify –
• Namespace
• Metric
• Statistic
• Period
• Conditions
• Additional configuration
• Actions