Highlights π : EKS Pod Identity allows to assign IAM roles to pods without annotating the deployment pod spec.
- Python
- boto3
- Docker
- Kubernetes
- EKS
- IAM Services (roles, policies, pod-identity-attachment)
- Terraform
- Create a Python application that uploads a file to an S3 bucket.
- Dockerize the application.
- Create a Kubernetes deployment for the Python application.
- Define all infrastructure as code (IaC) Terraform such as VPC, EKS, S3, IAM, Node Group, etc.
- Install Pod Identity add-on on the EKS cluster.
- Define all the required IAM services (role, policy, pod-identity-attachment) for the Kubernetes deployment.
- infrastructure/: Terraform code for creating the EKS cluster, S3 bucket, IAM services, etc.
- kubernetes/: Kubernetes deployment for the Python application & service account.
- python-app/: Python application that uploads a file to an S3 bucket.