Architecting for the Cloud Flashcards

1
Q

Traditional vs Cloud Computing Environments (6)

A
  1. IT Assets as Provisioned Resources
    - Provision as needed and scale on-demand
  2. Global, Available, and Scalable Capacity
    - deploy globally, easily, cost-effectively, and quickly
  3. Higher-Level Managed Services
    - lower operational cost by leveraging managed storage, database, analytics, application and deployment services
  4. Built-in Security
    - Leverage AWS’ significant investment in security, simplify security testing, and use native security and encryption features
  5. Architecting for Cost
    - fine grained billing, transparent costs, budgets and alerting tools
  6. Operating on AWS
    - tooling, processes and best practices to support operational transitions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Scaling Vertically

A

change to a bigger instance

Examples:
Amazon EC2 instances
Amazon RDS Database instances (they run on EC2)

Limitations:
often requires manual intervention (though can be scripted/automated)
typically requires downtime (may need to shut down and re-start up)
can reach a limit of scalability

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Scaling Horizontally

A

Add replica’s of the original, instead of making the original bigger
The preferred method of scaling

Examples:
Amazon EC2 Auto Scaling
Amazon DynamoDB - DynamoDB Table

Benefits:
Seamless scaling, w/o downtime
can scale almost limitlessly (in some cases)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

AWS Best Practices - 9

white paper

A
  1. Disposable Resources instead of Fixed Servers
  2. Automation
  3. Loose Coupling
  4. Services, Not Servers
  5. Databases
  6. Removing Single Points of Failure
  7. Optimize for Cost
  8. Caching
  9. Security
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

AWS Best Practices:

1. Disposable Resources instead of Fixed Resources

A

with traditional infrastructure you work w/ fixed resources due to upfront cost and lead time
with the cloud you can take advantage of the dynamically provisioned resources
when designing for AWS, you can take advantage of the dynamically provisioned nature of cloud computing
you can think of servers and other components as temporary resources
you can launch as many as you need, and use them only for as long as you need them

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

AWS Best Practices:

2. Automation

A

use automation tools on AWS to improve system stability and organizational efficiency

Examples:
Serverless Management and Deployment
Infrastructure Management and Deployment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

AWS Best Practices:

3. Loose Coupling

A

design IT systems to reduce interdependencies; a change/failure in one component should not cascade to other components

Examples:
Service Discovery - componenets should be able to “find” each other
Asynchronous Integration - introduce a layer b/w application compoenents to store messages

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

AWS Best Practices:

4. Services, Not Servers

A

this best practices advises customers to leverage more than just Amazon EC2
Try to use the breadth of services available on AWS

Examples: 
Amazon CloudFront for content delivery
ELB for load balancing 
Amazon DynamoDB for NoSQL databases 
Amazon CloudSearch for search workloads
Amazon Elastic Transcoder for video encoding
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

AWS Best Practices:

5. Databases

A

use the right database technology for each workload
consider performance requirements, scalability, durability, functionality, etc.
Choose between Relational, NoSQL, Data Warehouse, Search, and Graph

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

AWS Best Practices:

6. Removing Single Points of Failure

A

design for failure! you should have failure in mind as you design
Introduce redundancy - ensure if a component / resource failed, another can take over
Detect failure - use health checks and alarms and try to automate detection and reaction
Durable Data Storage - ensure your data aligns w/ you Recovery Point Objective (RPO) and Recovery TIme Objective (RTO)
Automated Multi-Data Center Resilience - be resilient in the face of a major disaster

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

AWS Best Practices:

7. Optimize for Cost

A

right sizing - use the best instances sizes and number of instances for cost efficiency
Elasticity - horizontally scale as needed w/ changing demand
Take Advantage of the Variety of Purchasing Options - use Reserved Instances and Spot Instances

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

AWS Best Practices

8. Caching

A

can be used to improve performance and cost efficiency

Methods:
Application Data Caching - examples are Amazon ElastiCache and DynamoDB DAX
Edge Caching - key example if Amazon CloudFront

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

AWS Best Practices:

9. Security

A

use AWS features for defense in depth
share security responsibility w/ AWS
reduce privileges access
Security as Code - ie, use CloudFormation to repeatedly build secure environments
Real-Time Auditing - tools such as Trusted Advisor, AWS Config, and Amazon Inspector

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

5 Pillars of Operational Excellence

A
  1. Operational Excellence
  2. Security
  3. Reliability
  4. Performance Efficiency
  5. Cost Optimization
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Infrastructure as Code

A

AWS assets are programmable, so you can apply techniques, practices, and tools from software development to make your whole infrastructure reusable, maintainable, extensible, and testable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Bootstrapping

A

you can execute automated actions to modify default configurations. This includes scripts that install software or copy data to bring that resource to a particular state

17
Q

5 Pillars of Operational Excellence:

Operational Excellence

A
  1. Operational Excellence: run and monitor systems to deliver business value and to continually improve supporting processes and procedures
18
Q

5 Pillars of Operational Excellence:

Security

A
  1. Security: protect information, systems, and assets while delivering business value through risk assessment and mitigation strategies
19
Q

5 Pillars of Operational Excellence:

Reliability

A
  1. Reliability: ability of a system to recover from infrastructure or service disruptions, dynamically acquire computing resources to meet demand, and mitigate disruptions such as misconfigurations or transient network issues
20
Q

5 Pillars of Operational Excellence:

Performance Efficiency

A
  1. Performance Efficiency: use computing resources efficiently to meet system requirements and to maintain that efficiency as demand changes and technologies evolve
21
Q

5 Pillars of Operational Excellence:

Cost Optimization

A
  1. Cost Optimization: avoid or eliminate unneeded cost or suboptimal resources