> For the complete documentation index, see [llms.txt](https://awsarch.adot8.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://awsarch.adot8.com/module-2.md).

# Module 2

### AWS Business Operations

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FxIqm97miTXYwCwnytsjw%2Fimage.png?alt=media&amp;token=8707c621-0960-4a85-b81c-93a8ea389afc" alt=""><figcaption></figcaption></figure>

### Role of a cloud architect

| Plan                                                  | Research                                                            | Build                                                                        |
| ----------------------------------------------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
| Set technical cloud strategy with business leads.     | Investigate cloud services specifications and workload requirements | Design the transformation roadmap with milestones, work streams, and owners. |
| Analyze solutions for business needs and requirements | Review existing workload architectures                              | Manage the adoption and migration                                            |
|                                                       | Design prototype solutions                                          |                                                                              |

### AWS Well-Architected Framework

{% embed url="<https://awsfdn.adot8.com/module-9>" %}

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FcclbEbVxzuu4tjo6Wf0J%2Fimage.png?alt=media&amp;token=a8cf9227-c2c3-488b-b3e5-0c4b59bc527a" alt=""><figcaption></figcaption></figure>

### AWS WA Tool

Checks out your environment and gives you recommendations to be compliant with best practices and the AWS Well-Architected Framework

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FQ6EGW5y4vxmLFh8bRauz%2Fimage.png?alt=media&amp;token=3c4adeee-a272-4e81-af15-ebaf517f3d5b" alt=""><figcaption></figcaption></figure>

The AWS Well-Architected Framework provides a consistent approach to evaluating cloud architectures and guidance to help implement designs

### Design Trade-offs

* Evaluate trade-offs so you can select an optimal approach.

* Examples of trade-offs include the following
  * Trade consistency, durability, and space for time and latency to deliver higher performance.
  * For new features, prioritize speed to market over cost.

* Base design decisions on empirical data

{% hint style="info" %}
Do you need CloudFront if you don't have customers outside your country?
{% endhint %}

### Implement scalability

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FjVe2gjdH7Ekg7fB7jpDn%2Fimage.png?alt=media&amp;token=81466e6a-cd52-413a-857d-e6489f3deb37" alt=""><figcaption></figcaption></figure>

{% embed url="<https://awsfdn.adot8.com/module-10#auto-scaling-group>" %}

### Automating your environment

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FxNEDiqh9PQBAXrpOoimf%2Fimage.png?alt=media&amp;token=329247b1-12e1-4e01-bda8-9ce3a216daf3" alt=""><figcaption></figcaption></figure>

* No need for human-interaction to spin up another EC2 instance if this were to occur over night

### Infrustructure as Code (IaC)

* Use files with code to deploy applications or instances
* Rapidly deploy duplicate environments.
* Reduce configuration errors from manual configuration.
* Propagate changes consistently to all stacks

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FTOG4hu05k6yS2V2eodtt%2Fimage.png?alt=media&amp;token=10505fbd-cf06-4a10-bb17-17bc5947a67f" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
All someone will have to do is fill in the blanks  (IP = ?)
{% endhint %}

### Treating resources as disposable

* Automate deployment of new resources with identical configurations
* Stop resources that are not in use
* Test updates on new resources, and then replace old resources with updated ones

### Designing architectures with independent components

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FnSASuN09Ej2wvu49SP9k%2Fimage.png?alt=media&amp;token=d3bb06a6-fdb9-457e-87ed-69c5dee923f1" alt=""><figcaption></figcaption></figure>

### Design services, not servers

* When appropriate, consider using containers or a serverless solution.
* Message queues can handle communication between applications.
* Static web assets can be stored off the server, such as on Amazon Simple Storage Service (Amazon S3).
* Managed AWS services can handle user authentication and user state storage.

{% hint style="info" %}
A **queue** can be used to prevent from applications from crashing when experiencing high workloads (e.g. online store sending orders to a shipping service. **Queue** in the middle of the two)
{% endhint %}

### Database solution requirements

* Read and write needs
* Total storage requirements
* Typical object size and nature of access to these objects
* Durability requirements
* Latency requirements
* Maximum concurrent users to support
* Nature of queries
* Required strength of integrity controls

### Avoiding Single Points of Failure

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FBz1qduMUIeumSjyVx9OP%2Fimage.png?alt=media&amp;token=f03819f1-8700-4419-8515-aa8eac34bb12" alt=""><figcaption></figcaption></figure>

### Caching

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FQETsExX4stQEdnzdM3v7%2Fimage.png?alt=media&amp;token=dd23f71a-27e5-49dc-a73d-e54c0cda715c" alt=""><figcaption></figcaption></figure>

### AWS Infrustructure Topics

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2Fpv7DeAtxtkbE587MQ3EW%2Fimage.png?alt=media&amp;token=2e8afee6-cff2-4fc0-b36e-3849120ca4b5" alt=""><figcaption></figcaption></figure>

{% embed url="<https://awsfdn.adot8.com/module-3>" %}

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FGNwXrF2oDUZkqw9JFV1v%2Fimage.png?alt=media&amp;token=7744293d-95dd-4532-87f4-d4888e7f41aa" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FhsKTVlAtuQZl3F4FaaOr%2Fimage.png?alt=media&amp;token=eb4379bf-4bb6-493c-b84c-80ebf2f94053" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FVEr31dRgxGclPKKEe3hD%2Fimage.png?alt=media&amp;token=4b7e9319-3f9d-48ae-b55e-44cf48cd91f4" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2F7lIJWdItZ8QkN7zcsJ2E%2Fimage.png?alt=media&amp;token=2c3e32bf-8bfd-40d5-9496-913af7acbb30" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2Fea7mhcKFZIKFEQ0Kumk3%2Fimage.png?alt=media&amp;token=c84fe65a-026e-48bd-9385-4886c8fccc01" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FKV8r0QvLvv75RKIRgPZN%2Fimage.png?alt=media&amp;token=4af1820f-750d-4cfd-bd71-076049b648b6" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FNipbtmXWO3LxwyS0vzu6%2Fimage.png?alt=media&amp;token=c2853492-373c-4e92-a391-2300ee09c990" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2F3xjveX6tTuldVIbzeLig%2Fimage.png?alt=media&amp;token=60d6235d-bf50-491f-8678-1ad7645822d9" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3899036363-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsmRwCapKRPjknpALqp9Y%2Fuploads%2FHSkpApBQLd82Dv058UO7%2Fimage.png?alt=media&amp;token=a1f32559-9c62-4fa0-a975-663d95792a13" alt=""><figcaption></figcaption></figure>
