Kubernetes Architecture & Components
 Overview
Kubernetes (K8s) is an open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications. It follows a master-worker node architecture for control and execution.
 Core Architecture
Kubernetes architecture consists of two main layers:
✓ Control Plane (Master Node) – Manages and controls the entire cluster.
✓ Worker Nodes – Execute workloads and run containerized applications (Pods).
 Control Plane Components
 1. API Server
✓ Central access point for all Kubernetes components.
✓ Exposes the Kubernetes API to handle REST requests.
✓ Validates and processes commands from kubectl and other components.
 2. etcd
✓ A distributed key-value store maintaining cluster configuration and state.
✓ Ensures high availability and consistency of cluster data.
✓ Used as the single source of truth for all cluster information.
 3. Controller Manager
✓ Runs background controllers to maintain cluster state.
✓ Includes Node Controller, Replication Controller, and Endpoint Controller.
✓ Ensures the desired state of objects matches the actual state.
 4. Scheduler
✓ Assigns newly created Pods to suitable worker nodes.
✓ Uses resource metrics and policies for intelligent scheduling.
✓ Ensures balanced workload distribution.
 5. Cloud Controller Manager
✓ Integrates Kubernetes with cloud provider APIs.
✓ Manages cloud-specific tasks like load balancing and node management.
✓ Separates cloud logic from the core Kubernetes system.
 Worker Node Components
 1. Kubelet
✓ Agent running on every node that communicates with the API Server.
✓ Ensures containers in Pods are running correctly.
✓ Reports node and Pod status to the control plane.
 2. Kube Proxy
✓ Maintains networking rules across nodes.
✓ Handles Pod-to-Pod and external communication.
✓ Implements load balancing within the cluster.
 3. Container Runtime
✓ Executes and manages containers in Pods.
✓ Common runtimes include Docker, containerd, and CRI-O.
✓ Pulls container images and handles low-level operations.
 Additional Concepts
 Pods
✓ Smallest deployable unit containing one or more containers.
✓ Shared storage and network resources.
 ReplicaSets
✓ Maintains the desired number of Pod replicas.
✓ Ensures high availability and fault tolerance.
 Deployments
✓ Provides declarative application updates.
✓ Simplifies scaling, rollback, and rollout processes.
 Services
✓ Abstracts access to a set of Pods.
✓ Provides stable networking endpoints within or outside the cluster.
 ConfigMaps & Secrets
✓ Store configuration and sensitive data securely.
✓ Separate configuration from application code.
 Namespaces
✓ Logical segmentation for resource isolation and organization.
✓ Useful in managing large clusters and multi-tenant environments.
Tip
Kubernetes architecture harmonizes the Control Plane (for management) and Worker Nodes (for execution). Together, they automate the deployment, scaling, networking, and health of containerized workloads efficiently and reliably.
 Here are 10 high-level EC2 scenario-based questions to challenge your AWS & DevOps skills 1. Your EC2 instance is running but you can’t connect via SSH. What troubleshooting steps will you take?  Check Security Group inbound rules (port 22 open to your IP).  Verify Network ACLs (NACLs not blocking inbound/outbound).  Confirm instance’s Public IP / Elastic IP.  Validate Key Pair and correct permissions on .pem.  Ensure SSM Agent is installed (Session Manager can help).  Check system logs on the console for OS-level issues. 2. You terminated an EC2 instance by mistake. How can you prevent this in the future? Enable Termination Protection in EC2 settings. Use IAM permissions to restrict TerminateInstances. Tag critical instances and set resource policies. 3. Your EC2 instance needs to access an S3 bucket securely. What’s the best way to configure this? Best practice: Attach an IAM Role with least privilege policy to the EC2 instance. Avoid hardcoding...
Comments
Post a Comment