Skip to content

Latest commit

 

History

History
30 lines (23 loc) · 1.24 KB

README.md

File metadata and controls

30 lines (23 loc) · 1.24 KB

codesnap

Overview: EKS Pod Identity: Easily Attach IAM Roles to K8s pods 🎡

Objective 🏅 : Utilize EKS Pod Identity to easily attach IAM roles to Kubernetes pods.

Highlights 🏆 : EKS Pod Identity allows to assign IAM roles to pods without annotating the deployment pod spec.

Technologies 🛠️ :

  • Python
  • boto3
  • Docker
  • Kubernetes
  • EKS
  • IAM Services (roles, policies, pod-identity-attachment)
  • Terraform

Steps 📝 :

  1. Create a Python application that uploads a file to an S3 bucket.
  2. Dockerize the application.
  3. Create a Kubernetes deployment for the Python application.
  4. Define all infrastructure as code (IaC) Terraform such as VPC, EKS, S3, IAM, Node Group, etc.
  5. Install Pod Identity add-on on the EKS cluster.
  6. Define all the required IAM services (role, policy, pod-identity-attachment) for the Kubernetes deployment.

Structure 🏗️ :

  • 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.