# ferdianhanif/aws-cloud-engineering-labs architecture

> Architecture diagram of the GitHub repository ferdianhanif/aws-cloud-engineering-labs, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/ferdianhanif/aws-cloud-engineering-labs
- Repository: https://github.com/ferdianhanif/aws-cloud-engineering-labs

## Overview

This repository is a portfolio of independent AWS hands-on labs, not a single application. The principal workflow is for an engineer to choose a lab, follow its documented exercise, and configure or investigate the AWS resources named there. The graph groups major lab domains and preserves representative workflows and capabilities from the README; no source excerpts were available, so links show only documented lab-to-service relationships, not internal execution wiring.

Main entry points: [`01-ec2-webserver-management/README.md`](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/01-ec2-webserver-management/README.md) (EC2 provisioning), [`28-creating-amazon-ec2-instances-cli-automation/README.md`](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/28-creating-amazon-ec2-instances-cli-automation/README.md) (EC2 CLI automation), [`31-scale-and-load-balance-your-architecture/README.md`](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/31-scale-and-load-balance-your-architecture/README.md) (Scaling and load balancing), [`32-using-auto-scaling-in-aws-linux/README.md`](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/32-using-auto-scaling-in-aws-linux/README.md) (Linux Auto Scaling)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_compute["Compute and Storage"]
  node_ec2_bootstrap["EC2 provisioning<br/>[README.md]"]
  node_ec2_cli["EC2 CLI automation<br/>[README.md]"]
  node_scaling["Scaling and load balancing<br/>[README.md]"]
  node_autoscaling["Linux Auto Scaling<br/>[README.md]"]
  node_storage["EBS and S3 storage<br/>[README.md]"]
  node_s3["S3 object services<br/>[README.md]"]
  node_lambda["Lambda functions<br/>[README.md]"]
end

subgraph group_network["Networking"]
  node_vpc["VPC construction<br/>[README.md]"]
  node_network_diagnostics["Network troubleshooting<br/>[README.md]"]
  node_dns_failover["DNS failover<br/>[README.md]"]
end

subgraph group_database["Database Systems"]
  node_sql["SQL and relational data<br/>[README.md]"]
  node_rds_app["RDS application integration<br/>[README.md]"]
  node_aurora["Aurora clusters<br/>[README.md]"]
  node_dynamodb["DynamoDB data<br/>[README.md]"]
  node_migration["RDS migration<br/>[README.md]"]
end

subgraph group_security["Security and Operations"]
  node_inspector["Vulnerability assessment<br/>[README.md]"]
  node_patching["Systems hardening<br/>[README.md]"]
  node_encryption["Data encryption<br/>[README.md]"]
  node_iam["IAM policy controls<br/>[README.md]"]
  node_monitoring["Monitoring and alerts<br/>[README.md]"]
  node_cloudformation["Infrastructure automation<br/>[README.md]"]
  node_forensics["CloudTrail forensics<br/>[README.md]"]
end

subgraph group_analytics["Analytics and ML"]
  node_sagemaker["Model training<br/>[README.md]"]
end

node_engineer(("Cloud engineer"))
node_aws{{"AWS services"}}

node_engineer -->|"follows lab"| node_ec2_bootstrap
node_engineer -->|"follows lab"| node_ec2_cli
node_engineer -->|"follows lab"| node_scaling
node_engineer -->|"follows lab"| node_autoscaling
node_engineer -->|"follows lab"| node_storage
node_engineer -->|"follows lab"| node_s3
node_engineer -->|"follows lab"| node_lambda
node_engineer -->|"follows lab"| node_vpc
node_engineer -->|"follows lab"| node_network_diagnostics
node_engineer -->|"follows lab"| node_dns_failover
node_engineer -->|"follows lab"| node_sql
node_engineer -->|"follows lab"| node_rds_app
node_engineer -->|"follows lab"| node_aurora
node_engineer -->|"follows lab"| node_dynamodb
node_engineer -->|"follows lab"| node_migration
node_engineer -->|"follows lab"| node_inspector
node_engineer -->|"follows lab"| node_patching
node_engineer -->|"follows lab"| node_encryption
node_engineer -->|"follows lab"| node_iam
node_engineer -->|"follows lab"| node_monitoring
node_engineer -->|"follows lab"| node_cloudformation
node_engineer -->|"follows lab"| node_forensics
node_engineer -->|"follows lab"| node_sagemaker
node_ec2_bootstrap -->|"configures EC2"| node_aws
node_ec2_cli -->|"automates EC2"| node_aws
node_scaling -->|"configures ALB"| node_aws
node_autoscaling -->|"scales instances"| node_aws
node_storage -->|"manages EBS/S3"| node_aws
node_s3 -->|"configures S3"| node_aws
node_lambda -->|"uses Lambda"| node_aws
node_vpc -->|"configures VPC"| node_aws
node_network_diagnostics -->|"investigates VPC"| node_aws
node_dns_failover -->|"configures Route 53"| node_aws
node_sql -->|"queries MySQL"| node_aws
node_rds_app -->|"integrates RDS"| node_aws
node_aurora -->|"configures Aurora"| node_aws
node_dynamodb -->|"uses DynamoDB"| node_aws
node_migration -->|"migrates to RDS"| node_aws
node_inspector -->|"scans workloads"| node_aws
node_patching -->|"patches systems"| node_aws
node_encryption -->|"uses KMS"| node_aws
node_iam -->|"configures IAM"| node_aws
node_monitoring -->|"monitors EC2"| node_aws
node_cloudformation -->|"deploys resources"| node_aws
node_forensics -->|"analyzes CloudTrail"| node_aws
node_sagemaker -->|"trains model"| node_aws

click node_ec2_bootstrap "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/01-ec2-webserver-management/README.md"
click node_ec2_cli "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/28-creating-amazon-ec2-instances-cli-automation/README.md"
click node_scaling "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/31-scale-and-load-balance-your-architecture/README.md"
click node_autoscaling "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/32-using-auto-scaling-in-aws-linux/README.md"
click node_storage "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/38-managing-storage-ebs-s3/README.md"
click node_s3 "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/41-working-with-amazon-s3/README.md"
click node_lambda "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/34-working-with-aws-lambda/README.md"
click node_vpc "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/37-configuring-an-amazon-vpc/README.md"
click node_network_diagnostics "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/39-troubleshooting-a-vpc-flow-logs/README.md"
click node_dns_failover "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/33-amazon-route53-failover-routing/README.md"
click node_sql "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/11-selecting-data-from-a-database/README.md"
click node_rds_app "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/15-build-db-server-interact-with-app/README.md"
click node_aurora "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/16-introduction-to-amazon-aurora/README.md"
click node_dynamodb "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/17-introduction-to-amazon-dynamodb/README.md"
click node_migration "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/36-migrating-to-amazon-rds/README.md"
click node_inspector "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/19-amazon-inspector-vulnerability-assessment-remediation/README.md"
click node_patching "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/20-systems-hardening-patch-manager-aws-systems-manager/README.md"
click node_encryption "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/21-data-protection-using-encryption/README.md"
click node_iam "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/22-introduction-to-iam-user-groups-policies/README.md"
click node_monitoring "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/24-monitoring-ec2-cloudwatch-sns-alarm/README.md"
click node_cloudformation "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/47-automating-deployments-with-aws-cloudformation/README.md"
click node_forensics "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/44-working-with-aws-cloudtrail-athena-forensics/README.md"
click node_sagemaker "https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/50-sagemaker-training-machine-learning-model/README.md"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_ec2_bootstrap,node_ec2_cli,node_scaling,node_autoscaling,node_storage,node_s3,node_lambda toneBlue
class node_vpc,node_network_diagnostics,node_dns_failover toneAmber
class node_sql,node_rds_app,node_aurora,node_dynamodb,node_migration toneMint
class node_inspector,node_patching,node_encryption,node_iam,node_monitoring,node_cloudformation,node_forensics toneRose
class node_sagemaker,node_engineer,node_aws toneIndigo
```

## Components

### Compute and Storage

- [EC2 provisioning](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/01-ec2-webserver-management/README.md): `01-ec2-webserver-management/README.md`
- [EC2 CLI automation](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/28-creating-amazon-ec2-instances-cli-automation/README.md): `28-creating-amazon-ec2-instances-cli-automation/README.md`
- [Scaling and load balancing](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/31-scale-and-load-balance-your-architecture/README.md): `31-scale-and-load-balance-your-architecture/README.md`
- [Linux Auto Scaling](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/32-using-auto-scaling-in-aws-linux/README.md): `32-using-auto-scaling-in-aws-linux/README.md`
- [EBS and S3 storage](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/38-managing-storage-ebs-s3/README.md): `38-managing-storage-ebs-s3/README.md`
- [S3 object services](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/41-working-with-amazon-s3/README.md): `41-working-with-amazon-s3/README.md`
- [Lambda functions](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/34-working-with-aws-lambda/README.md): `34-working-with-aws-lambda/README.md`

### Networking

- [VPC construction](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/37-configuring-an-amazon-vpc/README.md): `37-configuring-an-amazon-vpc/README.md`
- [Network troubleshooting](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/39-troubleshooting-a-vpc-flow-logs/README.md): `39-troubleshooting-a-vpc-flow-logs/README.md`
- [DNS failover](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/33-amazon-route53-failover-routing/README.md): `33-amazon-route53-failover-routing/README.md`

### Database Systems

- [SQL and relational data](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/11-selecting-data-from-a-database/README.md): `11-selecting-data-from-a-database/README.md`
- [RDS application integration](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/15-build-db-server-interact-with-app/README.md): `15-build-db-server-interact-with-app/README.md`
- [Aurora clusters](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/16-introduction-to-amazon-aurora/README.md): `16-introduction-to-amazon-aurora/README.md`
- [DynamoDB data](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/17-introduction-to-amazon-dynamodb/README.md): `17-introduction-to-amazon-dynamodb/README.md`
- [RDS migration](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/36-migrating-to-amazon-rds/README.md): `36-migrating-to-amazon-rds/README.md`

### Security and Operations

- [Vulnerability assessment](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/19-amazon-inspector-vulnerability-assessment-remediation/README.md): `19-amazon-inspector-vulnerability-assessment-remediation/README.md`
- [Systems hardening](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/20-systems-hardening-patch-manager-aws-systems-manager/README.md): `20-systems-hardening-patch-manager-aws-systems-manager/README.md`
- [Data encryption](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/21-data-protection-using-encryption/README.md): `21-data-protection-using-encryption/README.md`
- [IAM policy controls](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/22-introduction-to-iam-user-groups-policies/README.md): `22-introduction-to-iam-user-groups-policies/README.md`
- [Monitoring and alerts](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/24-monitoring-ec2-cloudwatch-sns-alarm/README.md): `24-monitoring-ec2-cloudwatch-sns-alarm/README.md`
- [Infrastructure automation](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/47-automating-deployments-with-aws-cloudformation/README.md): `47-automating-deployments-with-aws-cloudformation/README.md`
- [CloudTrail forensics](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/44-working-with-aws-cloudtrail-athena-forensics/README.md): `44-working-with-aws-cloudtrail-athena-forensics/README.md`

### Analytics and ML

- [Model training](https://github.com/ferdianhanif/aws-cloud-engineering-labs/blob/main/50-sagemaker-training-machine-learning-model/README.md): `50-sagemaker-training-machine-learning-model/README.md`

### Other components

- **Cloud engineer**
- **AWS services**

## Connections

- Cloud engineer → EC2 provisioning: follows lab
- Cloud engineer → EC2 CLI automation: follows lab
- Cloud engineer → Scaling and load balancing: follows lab
- Cloud engineer → Linux Auto Scaling: follows lab
- Cloud engineer → EBS and S3 storage: follows lab
- Cloud engineer → S3 object services: follows lab
- Cloud engineer → Lambda functions: follows lab
- Cloud engineer → VPC construction: follows lab
- Cloud engineer → Network troubleshooting: follows lab
- Cloud engineer → DNS failover: follows lab
- Cloud engineer → SQL and relational data: follows lab
- Cloud engineer → RDS application integration: follows lab
- Cloud engineer → Aurora clusters: follows lab
- Cloud engineer → DynamoDB data: follows lab
- Cloud engineer → RDS migration: follows lab
- Cloud engineer → Vulnerability assessment: follows lab
- Cloud engineer → Systems hardening: follows lab
- Cloud engineer → Data encryption: follows lab
- Cloud engineer → IAM policy controls: follows lab
- Cloud engineer → Monitoring and alerts: follows lab
- Cloud engineer → Infrastructure automation: follows lab
- Cloud engineer → CloudTrail forensics: follows lab
- Cloud engineer → Model training: follows lab
- EC2 provisioning → AWS services: configures EC2
- EC2 CLI automation → AWS services: automates EC2
- Scaling and load balancing → AWS services: configures ALB
- Linux Auto Scaling → AWS services: scales instances
- EBS and S3 storage → AWS services: manages EBS/S3
- S3 object services → AWS services: configures S3
- Lambda functions → AWS services: uses Lambda
- VPC construction → AWS services: configures VPC
- Network troubleshooting → AWS services: investigates VPC
- DNS failover → AWS services: configures Route 53
- SQL and relational data → AWS services: queries MySQL
- RDS application integration → AWS services: integrates RDS
- Aurora clusters → AWS services: configures Aurora
- DynamoDB data → AWS services: uses DynamoDB
- RDS migration → AWS services: migrates to RDS
- Vulnerability assessment → AWS services: scans workloads
- Systems hardening → AWS services: patches systems
- Data encryption → AWS services: uses KMS
- IAM policy controls → AWS services: configures IAM
- Monitoring and alerts → AWS services: monitors EC2
- Infrastructure automation → AWS services: deploys resources
- CloudTrail forensics → AWS services: analyzes CloudTrail
- Model training → AWS services: trains model
