Eks - Elastic Kubernetes Service
Eks - Elastic Kubernetes Service
eks is a fully managed control plan of aws for Kubernetes. you don't have to worry
about certificates, control plane components
Create entire control plane for you , but you don't gave to worry about control
plane configuration..
Eks takes care of control plane, fargate will take care of worker node. You can
also use ec2 instance, but then you will have to take care of high availability and
autoscale group for ec2 worker nodes
you can also create ec2 instances for worker nodes , but then you will have to take
care of configuring highavailability using autoscaling groups
in ingress resource yml file you will write , if user is accessing example.com/abc
redirect/route the request to the particular service, and from service the
request will go to pod.
ingress controller will watch for ingress resource and create an ALB, or if load
lancer is already there it will configure load balancer as per rule mentioned in
ingress resource
Go to the IAM (Identity and Access Management) service in the AWS Management
Console.
Click on "Users" in the left-hand navigation pane and then click on "Add user."
Enter a username for the new IAM user and select the access type (Programmatic
access, AWS Management Console access, or both).
Choose the permissions for the IAM user by adding them to one or more IAM groups or
attaching policies directly.
Optionally, set permissions boundary, tags, and enable MFA for the IAM user.
Access Keys (for Programmatic Access):
If you selected "Programmatic access" during user creation, you will receive access
keys (Access Key ID and Secret Access Key).
Store these access keys securely, as they will be used to authenticate API requests
made to AWS services.
prerequisites
install aws cli -> aws configure
install kubectl
install eksctl
eksctl create cluster --name demo-cluster --region ap-south-1 --fargate
you can integrate iam roles with Kubernetes service account so that you can talk
to any other Kubernetes svc
you can see fargate profile is attached only to default and kube-system namespace,
only in these namespaces you can run pods
Deployment file -
https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/
v2.5.4/docs/examples/2048/2048_full.yaml