EKS Flashcards
What is EKS?
A managed service that allows you to run Kubernetes on AWS without installing, operating, or maintaining your own Kubernetes control plane or nodes.
What AWS services can EKS integrate with?
-Amazon ECR for container images
-Elastic Load Balancing for load distribution
-IAM for authentication
-Amazon VPC for isolation
What does an EKS cluster consist of?
-EKS Control Plane
-EKS Nodes
What does EKS Control Plane do?
-It is made up of nodes that run the Kubernetes software (API server & ).
-Each cluster is single-tenant and unique, and runs on its own set of EC2 instances.
-Cluster control plane is provisioned across multiple AZs and fronted by an ELB Network Load Balancer.
-Use AWS KMS to encrypt data stored by nodes and associated EBS volumes.
What are EKS Nodes?
-A cluster consists of one or more EC2 nodes on which pods are scheduled.
-Connects to the cluster’s control plane via the API server endpoint.
True/False. The API server endpoint is not public to the internet by default, but you can enable private access to keep communication between nodes and the API server within the VPC.
False. The API server endpoint IS public to the internet by default, but you can enable private access to keep communication between nodes and the API server within the VPC.
What autoscaling products does EKS support?
-Cluster Autoscaler – uses AWS Auto Scaling groups.
-Karpenter – works directly with the Amazon EC2 Fleet.
True/False. By default, cluster control plane logs aren’t sent to CloudWatch Logs. In order to send logs for your cluster, you have to enable each log type individually.
True.
What authentication and authorization does an EKS cluster use?
EKS cluster uses IAM / OIDC for authentication and Kubernetes RBAC for authorization.
True/False. Nodes must not be in the same VPC as the subnets you chose when creating a cluster.
False. Nodes MUST BE in the same VPC as the subnets you chose when creating a cluster.
What do Nodes represent from the perspective of the Kubernetes API?
From the perspective of the Kubernetes API, nodes represent the compute resources provisioned for your cluster.
What prevents PODs from being scheduled on the wrong nodes?
Taints and tolerations prevent pods from being scheduled on the wrong nodes.
True/False. (Self-Managed Nodes) A cluster can have several node groups.
True.
True/False. (Self-Managed Nodes) A node group is a collection of one or more EC2 instances deployed in an Amazon EC2 Auto Scaling group.
True.
(Self-Managed Nodes) What characteristics must an instance have in a Node Group?
-Same instance type
-Running the same AMI
-Uses the same EKS node IAM role
True/False. (Self-Managed Nodes) Node groups with different instance types and host operating systems cannot exist in a cluster.
False. Node groups with different instance types and host operating systems CAN exist in a cluster.
(Self-Managed Nodes) What methods are used for updating self-managed Node Groups in a cluster to use a new AMI?
-Migrating to a new node group
-Updating an existing self-managed node group
What are Managed Node Groups?
Automates the provisioning and lifecycle management of nodes in EKS clusters.
True/False. Every managed node is provisioned as part of Amazon EC2 Auto Scaling group.
True.
True/False. When nodes are launched as part of a managed node group, they are not automatically tagged for auto-discovery by Kubernetes Cluster Autoscaler.
False. When nodes are launched as part of a managed node group, they ARE automatically tagged for auto-discovery by Kubernetes Cluster Autoscaler.
True/False. (Managed node groups) Use node group to apply Kubernetes labels to nodes.
True.
True/False. Multiple managed node groups can exist in a single cluster.
True.
What options do you have when creating Managed Node Groups?
you have the option of selecting On-Demand or Spot instances
How do applications remain available in a Managed Node Group?
To ensure that your applications remain available, node updates and terminations drain nodes automatically.
What kind of Nodes can you have with EKS?
-Managed Node Groups
-Self Managed Node Groups
-AWS Fargate
What must you do first before scheduling PODs on Fargate in your cluster?
You must first define a Fargate profile before scheduling pods on Fargate in your cluster.
True/False. If a pod matches more than one Fargate profile, Amazon EKS picks one at random.
True.
Are Fargate Profiles immutable and what components do they contain?
Yes.
-Pod execution role
-Subnets
-Selectors
-Namespace
-Labels
True/False. Fargate runs only one pod per node.
True.
True/False. Regarding Fargate, Pod storage is not ephemeral, and data is encrypted with AWS Fargate managed keys.
False. Pod storage IS ephemeral, and data is encrypted with AWS Fargate managed keys.
Regarding Fargate, how do you encrypt ephemeral POD storage?
To encrypt ephemeral pod storage, you can use AWS Fargate managed keys.
How are Workloads deployed?
Workloads are deployed in containers and define the applications that run on a Kubernetes cluster
Can a POD contain one or more containers?
Yes.
What adjusts your PODs’ CPU and memory reservations?
Vertical Pod Autoscaler adjusts your pods’ CPU and memory reservations.
What adjusts the number of PODs in a deployment?
Horizontal Pod Autoscaler adjusts the number of pods in a deployment, replication controller, or replica set based on CPU utilization.
What does an EKS connector do?
Enables you to register and connect any Kubernetes cluster to AWS.
How can you view the status, configuration, and workloads of a cluster?
You can view the status, configuration, and workloads of the cluster in the Amazon EKS console after it has been connected.
What is Container Storage Interface (CSI)?
Container Storage Interface (CSI) enables third-party storage providers to create and deploy plugins in Kubernetes that provide alternative storage systems without modifying the core Kubernetes code.