All technological notes.
Every AWS Account has a unique Account ID.
The Account ID can be easily found by dropping down the current user in the Global Navigation.
The AWS Account ID is composed of 12 digits.
The AWS Account ID is used:
Example: role

Example: policy

Amazon Resource Name (ARN)
ARNs are required to specify a resource unambiguously across all of AWS.ARNs format variations:
arn.partition:service:region:account-id:resource-idarn.partition:service:region:account-id:resource-type/resource-idarn.partition:service:region:account-id:resource-type:resource-idPartition
aws: AWS Regionsaws-cn: China Regionsaws-us-gov: AWS GovCloud (US) RegionsService: Identifies the service
Region: which AWS resource
Account ID
Resource ID: could be a number name or path
Paths can include a wildcard character, namely an asterisk (*)

AWS Documentation
AWS Documentation: https://docs.aws.amazon.com/
AWS Labs(examples and tutorial): https://github.com/awslabs
Application Programming Interface(API)
HTTP requests.AWS API
HTTP API and user can interact by sending HTTPS requests
Example:

List of Service endpoints: https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html
| Access | protected by |
|---|---|
AWS Management Console |
password + MFA |
AWS Command Line Interface (CLI) |
access keys |
AWS Software Developer Kit (SDK) |
access keys |
AWS ConsoleManagement Console
Service Console
AWS CLICommand Line Interface (CLI)
Terminal
Console
Shell
AWS Command Line Interface (CLI)
AWS API via entering single or multi-line commands into a shell or terminal.awsAbout AWS CLI: https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html
AWS CloudShellAWS CloudShell
Powershell
Unlinke most shells, which accept and return text, PowerShell is built on top of the .NET Common Language Runtime (CLR), and accepts and returns .NET objects.
Cmdlet
New-S3BucketAWS Tools for Powershell lets user interact with the AWS API via PowerShell Cmdlets.
pwsh: Command to Switch to PowerShell in AWS CloudShell

AWS SDKSoftware Developement Kit (SDK)
AWS SDK
AWS SDK for Python: https://aws.amazon.com/sdk-for-python/
AWS Cloud9
Infrastructure as Code (IaC)
AWS has two offering for writing Infrastructure as Code.
AWS CloudFormation (CFN): CFN is a Declarative IaC tool
AWS Cloud Development Kit (CDK): CDK is an Imperative IaC tool.
CloudFormation - Free, IaC, templateAWS CloudFormation
Infrastructure as Code (IaC) as either a JSON or YAML file.CloudFormation is simple but it can lead to large files or is limited in some regard to creating dynamic or repeatable infrastructure compared to CDK.
CloudFormation can be easier for DevOps Engineers who do not have a background in web programming languages.
CloudFormation creates those for you, in the right order, with the exact configuration that you specify
Since CDK generates out CloudFormation, it’s still important to be able to read and understand CloudFormation in order to debug IaC stacks.
Benefits
Infrastructure as code
Cost
Productivity
Don’t re-invent the wheel
Supports (almost) all AWS resources:
Create a CloudFormation Stack:
AWS CloudFormation: https://aws.amazon.com/cloudformation/
Cloud Development Kit (CDK)- programming language, IaCAWS CDK
You can therefore deploy infrastructure and application runtime code together
CDK is powered by CloudFormation (it generates out CloudFormation templates)
CDK Construct: a large library of reusable cloud components. https://constructs.dev
CDK comes with its own CLI
CDK Piplines to quickly setup CI/CD pipelines for CDK projects.
CDK has a testing framework for Unit and Integration Testing.
CDK documentation: https://docs.aws.amazon.com/cdk/api/v2/
About CDK: https://aws.amazon.com/cdk/