{"id":48704,"date":"2025-03-05T09:37:12","date_gmt":"2025-03-05T09:37:12","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=48704"},"modified":"2025-03-05T09:37:12","modified_gmt":"2025-03-05T09:37:12","slug":"aws-tutorials-different-types-modes-of-deployment-of-amazon-eks","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/aws-tutorials-different-types-modes-of-deployment-of-amazon-eks\/","title":{"rendered":"AWS Tutorials: Different Types &amp; Modes of Deployment of Amazon EKS"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><strong>Different Types &amp; Modes of Deployment of Amazon EKS (Elastic Kubernetes Service)<\/strong><\/h2>\n\n\n\n<p>Amazon <strong>EKS (Elastic Kubernetes Service)<\/strong> provides multiple <strong>deployment types and modes<\/strong> based on user requirements, infrastructure needs, and the level of control and automation required. These can be classified into <strong>Types (Control Plane Management) &amp; Modes (Worker Node Deployment Strategies)<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\ud83d\udd39 Types of EKS Deployment (Control Plane Management)<\/strong><\/h1>\n\n\n\n<p>The <strong>types of EKS deployment<\/strong> define how <strong>Kubernetes clusters are managed and hosted<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>EKS Deployment Type<\/strong><\/th><th><strong>Description<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>EKS Auto Mode<\/strong><\/td><td>Fully managed Kubernetes cluster by AWS, including worker nodes and auto-scaling.<\/td><\/tr><tr><td><strong>EKS Standard Mode<\/strong><\/td><td>AWS manages the control plane, but the user manages worker nodes (EC2 instances).<\/td><\/tr><tr><td><strong>EKS Fargate Mode<\/strong><\/td><td>Serverless Kubernetes, AWS runs pods directly without user-managed nodes.<\/td><\/tr><tr><td><strong>EKS Anywhere<\/strong><\/td><td>Run Kubernetes on <strong>on-prem infrastructure<\/strong> using AWS-supported tooling.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1\ufe0f\u20e3 EKS Auto Mode (Fully Managed)<\/strong><\/h3>\n\n\n\n<p>\ud83d\udd39 <strong>What is it?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>AWS fully manages the control plane and worker nodes.<\/strong><\/li>\n\n\n\n<li><strong>No manual intervention is required<\/strong> for <strong>provisioning, scaling, or upgrades<\/strong>.<\/li>\n\n\n\n<li>Automatically optimizes <strong>compute resources<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udd39 <strong>Best For:<\/strong><br>\u2714 <strong>DevOps teams<\/strong> who want <strong>Kubernetes without infrastructure management<\/strong>.<br>\u2714 <strong>Microservices-based architectures<\/strong> that scale dynamically.<br>\u2714 <strong>Startups &amp; SMBs<\/strong> who want Kubernetes with minimal setup.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Pros:<\/strong><br>\u2714 <strong>Completely managed by AWS<\/strong>.<br>\u2714 <strong>Auto-scaling<\/strong> for pods &amp; nodes.<br>\u2714 <strong>No manual worker node management<\/strong>.<br>\u2714 <strong>Optimized cost &amp; security settings<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Cons:<\/strong><br>\u274c <strong>Less flexibility<\/strong> for custom networking and node configurations.<br>\u274c <strong>May not support all Kubernetes workloads<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2\ufe0f\u20e3 EKS Standard Mode (Self-Managed Worker Nodes)<\/strong><\/h3>\n\n\n\n<p>\ud83d\udd39 <strong>What is it?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>AWS manages the control plane<\/strong>, but <strong>you must provision and manage worker nodes<\/strong> (EC2 instances).<\/li>\n\n\n\n<li>Requires <strong>manual scaling, networking, and security management<\/strong>.<\/li>\n\n\n\n<li>More control over <strong>node types (GPUs, Spot instances, etc.).<\/strong><\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udd39 <strong>Best For:<\/strong><br>\u2714 <strong>Enterprises<\/strong> needing <strong>full control over Kubernetes infrastructure<\/strong>.<br>\u2714 <strong>AI\/ML workloads<\/strong> requiring <strong>customized EC2 instances<\/strong>.<br>\u2714 <strong>Hybrid cloud deployments<\/strong> with <strong>custom networking &amp; IAM policies<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Pros:<\/strong><br>\u2714 <strong>More control over worker nodes and networking.<\/strong><br>\u2714 <strong>Supports GPUs &amp; specialized instance types.<\/strong><br>\u2714 <strong>Can optimize costs using Reserved &amp; Spot instances.<\/strong><\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Cons:<\/strong><br>\u274c <strong>Requires more DevOps expertise.<\/strong><br>\u274c <strong>Manual scaling &amp; updates needed.<\/strong><br>\u274c <strong>Networking &amp; IAM configurations must be handled manually.<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3\ufe0f\u20e3 EKS Fargate Mode (Serverless Kubernetes)<\/strong><\/h3>\n\n\n\n<p>\ud83d\udd39 <strong>What is it?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>No EC2 worker nodes<\/strong>; AWS runs <strong>Kubernetes pods directly on AWS infrastructure<\/strong>.<\/li>\n\n\n\n<li><strong>Fully serverless Kubernetes<\/strong> with pod-level auto-scaling.<\/li>\n\n\n\n<li>Ideal for <strong>lightweight, short-lived applications<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udd39 <strong>Best For:<\/strong><br>\u2714 <strong>Serverless workloads &amp; microservices<\/strong>.<br>\u2714 <strong>Event-driven applications<\/strong>.<br>\u2714 <strong>Teams who want Kubernetes without node management<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Pros:<\/strong><br>\u2714 <strong>No worker nodes to manage<\/strong>.<br>\u2714 <strong>Pod-level auto-scaling<\/strong>.<br>\u2714 <strong>Granular IAM security per pod<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Cons:<\/strong><br>\u274c <strong>Limited to stateless workloads<\/strong>.<br>\u274c <strong>Higher costs for long-running workloads<\/strong>.<br>\u274c <strong>Does not support GPU-based applications<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4\ufe0f\u20e3 EKS Anywhere (On-Prem Kubernetes)<\/strong><\/h3>\n\n\n\n<p>\ud83d\udd39 <strong>What is it?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Deploy EKS on <strong>on-prem servers, private cloud, or hybrid environments<\/strong>.<\/li>\n\n\n\n<li>Useful for <strong>compliance, regulatory, and low-latency requirements<\/strong>.<\/li>\n\n\n\n<li>Users <strong>fully manage worker nodes and infrastructure<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udd39 <strong>Best For:<\/strong><br>\u2714 <strong>Enterprises needing hybrid cloud solutions<\/strong>.<br>\u2714 <strong>Organizations with strict data residency laws<\/strong>.<br>\u2714 <strong>Large-scale deployments needing custom networking<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Pros:<\/strong><br>\u2714 <strong>Keeps workloads on-prem for security\/compliance<\/strong>.<br>\u2714 <strong>Full control over Kubernetes infrastructure<\/strong>.<br>\u2714 <strong>Supports custom networking &amp; storage solutions<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Cons:<\/strong><br>\u274c <strong>Requires infrastructure setup &amp; management<\/strong>.<br>\u274c <strong>More complex networking &amp; security configurations<\/strong>.<br>\u274c <strong>Not fully managed like cloud-based EKS<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\ud83d\udd39 Modes of EKS Worker Node Deployment<\/strong><\/h1>\n\n\n\n<p>The <strong>modes<\/strong> of EKS deployment define how <strong>worker nodes are deployed and managed<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>EKS Node Mode<\/strong><\/th><th><strong>Description<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>EKS Managed Node Groups<\/strong><\/td><td>AWS-managed EC2 nodes with auto-scaling and automated updates.<\/td><\/tr><tr><td><strong>EKS Self-Managed Nodes<\/strong><\/td><td>User provisions EC2 instances manually and integrates them into EKS.<\/td><\/tr><tr><td><strong>EKS Fargate Mode<\/strong><\/td><td>No worker nodes; AWS runs Kubernetes pods in a serverless fashion.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1\ufe0f\u20e3 EKS Managed Node Groups<\/strong><\/h3>\n\n\n\n<p>\ud83d\udd39 <strong>What is it?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>AWS provisions and manages EC2 worker nodes<\/strong> within an EKS cluster.<\/li>\n\n\n\n<li><strong>Built-in auto-scaling and rolling updates<\/strong>.<\/li>\n\n\n\n<li>Best suited for <strong>teams wanting control over instances but without heavy management<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udd39 <strong>Best For:<\/strong><br>\u2714 Teams wanting <strong>custom EC2 instance types but with AWS management<\/strong>.<br>\u2714 <strong>Workloads needing GPU\/Spot instances<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Pros:<\/strong><br>\u2714 <strong>AWS manages EC2 lifecycle<\/strong> (scaling, draining, patching).<br>\u2714 <strong>Simplifies scaling &amp; security<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Cons:<\/strong><br>\u274c <strong>Less control over instance configurations<\/strong>.<br>\u274c <strong>Costs more than self-managed nodes<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2\ufe0f\u20e3 EKS Self-Managed Nodes<\/strong><\/h3>\n\n\n\n<p>\ud83d\udd39 <strong>What is it?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Users manually provision and manage EC2 instances<\/strong> for EKS worker nodes.<\/li>\n\n\n\n<li><strong>Full control over networking, scaling, patching, and upgrades<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udd39 <strong>Best For:<\/strong><br>\u2714 <strong>Enterprises needing full EC2 control<\/strong>.<br>\u2714 <strong>AI\/ML workloads requiring GPUs or HPC clusters<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Pros:<\/strong><br>\u2714 <strong>More flexibility with EC2 instance selection<\/strong>.<br>\u2714 <strong>Better cost optimization (Spot, Reserved instances).<\/strong><\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Cons:<\/strong><br>\u274c <strong>Requires DevOps expertise<\/strong>.<br>\u274c <strong>Scaling &amp; patching must be handled manually<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3\ufe0f\u20e3 EKS Fargate Mode<\/strong><\/h3>\n\n\n\n<p>\ud83d\udd39 <strong>What is it?<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>No worker nodes; AWS runs <strong>Kubernetes pods directly<\/strong> in a <strong>serverless<\/strong> fashion.<\/li>\n\n\n\n<li><strong>Fully managed by AWS<\/strong>.<\/li>\n\n\n\n<li>No instance provisioning, scaling, or patching needed.<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udd39 <strong>Best For:<\/strong><br>\u2714 <strong>Event-driven applications, microservices<\/strong>.<br>\u2714 <strong>Teams who want zero infrastructure management<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Pros:<\/strong><br>\u2714 <strong>No EC2 nodes to manage<\/strong>.<br>\u2714 <strong>Pod-level auto-scaling<\/strong>.<\/p>\n\n\n\n<p>\ud83d\udd39 <strong>Cons:<\/strong><br>\u274c <strong>Higher costs than EC2<\/strong>.<br>\u274c <strong>Limited to stateless workloads<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\ud83d\udd39 Comparison of EKS Deployment Types &amp; Modes<\/strong><\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Feature<\/th><th><strong>EKS Auto Mode<\/strong><\/th><th><strong>EKS Standard Mode<\/strong><\/th><th><strong>EKS Fargate<\/strong><\/th><th><strong>EKS Anywhere<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Control Plane<\/strong><\/td><td>Managed by AWS<\/td><td>Managed by AWS<\/td><td>Managed by AWS<\/td><td>Self-managed<\/td><\/tr><tr><td><strong>Worker Nodes<\/strong><\/td><td><strong>AWS managed nodes<\/strong><\/td><td><strong>User-managed EC2<\/strong><\/td><td><strong>No worker nodes<\/strong><\/td><td><strong>On-prem nodes<\/strong><\/td><\/tr><tr><td><strong>Scaling<\/strong><\/td><td>Automatic<\/td><td>Manual (Cluster Autoscaler)<\/td><td>Pod-level auto-scaling<\/td><td>Manual<\/td><\/tr><tr><td><strong>Networking<\/strong><\/td><td>Pre-configured<\/td><td>Customizable<\/td><td>AWS VPC integration<\/td><td>On-prem networking<\/td><\/tr><tr><td><strong>Best For<\/strong><\/td><td><strong>No infrastructure management<\/strong><\/td><td><strong>Full control over infrastructure<\/strong><\/td><td><strong>Serverless Kubernetes<\/strong><\/td><td><strong>Hybrid\/On-prem Kubernetes<\/strong><\/td><\/tr><tr><td><strong>Use Cases<\/strong><\/td><td>DevOps, Startups<\/td><td>AI\/ML, HPC workloads<\/td><td>Event-driven, CI\/CD<\/td><td>On-prem deployments<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\ud83d\udd39 Which EKS Mode Should You Choose?<\/strong><\/h1>\n\n\n\n<p>\u2714\ufe0f <strong>Use EKS Auto Mode<\/strong> \u2192 If you <strong>want Kubernetes without infrastructure management<\/strong>.<br>\u2714\ufe0f <strong>Use EKS Standard Mode<\/strong> \u2192 If you <strong>need full control over EC2-backed Kubernetes<\/strong>.<br>\u2714\ufe0f <strong>Use EKS Fargate Mode<\/strong> \u2192 If you <strong>want a fully serverless Kubernetes<\/strong> experience.<br>\u2714\ufe0f <strong>Use EKS Anywhere<\/strong> \u2192 If you <strong>need Kubernetes on-premises<\/strong> or in a <strong>hybrid cloud<\/strong>.<\/p>\n\n\n\n<p>Would you like <strong>deployment guides<\/strong> for setting up these EKS types? \ud83d\ude80<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Different Types &amp; Modes of Deployment of Amazon EKS (Elastic Kubernetes Service) Amazon EKS (Elastic Kubernetes Service) provides multiple deployment types and modes based on user requirements, infrastructure needs, and&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[2],"tags":[],"class_list":["post-48704","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/48704","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=48704"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/48704\/revisions"}],"predecessor-version":[{"id":48705,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/48704\/revisions\/48705"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=48704"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=48704"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=48704"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}