{"id":80641,"date":"2022-01-12T22:23:34","date_gmt":"2022-01-13T03:53:34","guid":{"rendered":"https:\/\/www.whizlabs.com\/blog\/?p=80641"},"modified":"2022-01-17T03:15:17","modified_gmt":"2022-01-17T08:45:17","slug":"kubernetes-architecture","status":"publish","type":"post","link":"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/","title":{"rendered":"Explained: Kubernetes Architecture"},"content":{"rendered":"<p>In this blog post, we are explaining in details about the <strong>Kubernetes Architecture<\/strong>. <span style=\"font-weight: 400;\">Unlike past solutions, which were meant to do one thing well, Kubernetes was built from the ground up with comprehensibility in mind. Kubernetes is the preferred option for container orchestration as:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">It is a platform for automating deployment, scaling, and management of containerized applications across multiple hosts.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">It helps in automating work that would have had to be taken care of manually in the past such as the utilization and management of computing, network, and storage resources.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">It has various options to support customization in a workflow and higher-level automation.<\/span><\/li>\n<\/ul>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_76 ez-toc-wrap-left counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #ea7e02;color:#ea7e02\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #ea7e02;color:#ea7e02\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Kubernetes_Architecture\" >Kubernetes Architecture<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#At_a_higher_level_Kubernetes_follows_a_client-server_architecture\" >At a higher level, Kubernetes follows a client-server architecture.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Master_node\" >Master node<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Etcd\" >Etcd<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Worker_node\" >Worker node<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Master_node_components\" >Master node components<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Worker_node_components\" >Worker node components<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Kubectl\" >Kubectl<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Steps_for_Creation_of_a_new_pod_in_a_Kubernetes_cluster\" >Steps for Creation of a new pod in a Kubernetes cluster<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.whizlabs.com\/blog\/kubernetes-architecture\/#Summary\" >Summary<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h2 style=\"text-align: center;\"><span class=\"ez-toc-section\" id=\"Kubernetes_Architecture\"><\/span>Kubernetes Architecture<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">The <strong>kubernetes architecture<\/strong> provides it with the ability to combine many helpful tools into one easy-to-use solution. It&#8217;s great for those who want something that can<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">orchestrate containers<\/span><\/li>\n<li><span style=\"font-weight: 400;\">has self-healing capabilities<\/span><\/li>\n<li><span style=\"font-weight: 400;\">load balance the traffic<\/span><\/li>\n<\/ul>\n<p>The below diagram provides a high-level overview of the kubernetes architecture.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-80678 size-large\" title=\"Kubernetes Architecture Diagram\" src=\"https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/whizlabs-1-1024x576.png\" alt=\"Kubernetes Architecture Diagram\" width=\"1024\" height=\"576\" srcset=\"https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/whizlabs-1-1024x576.png 1024w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/whizlabs-1-300x169.png 300w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/whizlabs-1-768x432.png 768w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/whizlabs-1-747x420.png 747w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/whizlabs-1-640x360.png 640w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/whizlabs-1-681x383.png 681w, https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/whizlabs-1.png 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"At_a_higher_level_Kubernetes_follows_a_client-server_architecture\"><\/span><span style=\"font-weight: 400;\">At a higher level, Kubernetes follows a client-server architecture.<\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">It consists of the following major components &#8211;<\/span><\/p>\n<ul>\n<li>master node<\/li>\n<li>etcd<\/li>\n<li>worker nodes<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"Master_node\"><\/span><span style=\"font-weight: 400;\">Master node<br \/>\n<\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">It maintains the integrity of the cluster and its vital components, keeps a check on how the components are interacting with one another, and works to make the actual state of system objects match the desired state.<\/span><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Etcd\"><\/span><span style=\"font-weight: 400;\">Etcd<br \/>\n<\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">It is a simple, distributed key-value storage system for keeping a record and consistency of the cluster states. It is used to store the cluster data such as<br \/>\n<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">number of pods<\/span><\/li>\n<li><span style=\"font-weight: 400;\">deployment states<\/span><\/li>\n<li><span style=\"font-weight: 400;\">namespaces<\/span><\/li>\n<li><span style=\"font-weight: 400;\">service discovery details.<br \/>\n<\/span><\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"Worker_node\"><\/span><span style=\"font-weight: 400;\">Worker node<\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">The worker nodes are the component that actually runs the containers, they are managed by the master node.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Each of these components (except Etcd) has in turn different parts which serve a unique purpose. To understand the purposes, it will be helpful to understand the different parts of these components.<br \/>\n<\/span><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Master_node_components\"><\/span><span style=\"font-weight: 400;\">Master node components<\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span style=\"font-weight: 400;\">Kube-apiserver<\/span><\/h4>\n<ul>\n<li><span style=\"font-weight: 400;\">\u00a0The kube-apiserver provides a key gateway to the cluster. The user can use it to interact with the cluster and perform actions such as creation, deletion, scaling, updation on different types of objects.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Clients such as kubectl authenticate with the cluster via the kube-apiserver and also use it as a proxy\/tunnel to nodes, pods, and services.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">This is the only component that communicates with the etcd cluster, making sure data is stored in etcd.<\/span><\/li>\n<\/ul>\n<h4><span style=\"font-weight: 400;\">Kube-controller-manager<\/span><\/h4>\n<p><span style=\"font-weight: 400;\"><em>In order to understand this component, it is helpful to first gain an understanding of controllers.<\/em><\/span><\/p>\n<p><em>You see, most resources contain metadata, such as labels and annotations, desired state i.e. specified state, and observed state i.e. current state. A controller in Kubernetes works to drive the actual state of an object toward its desired state. <\/em><\/p>\n<p><em>For example, the replication controller controls a number of replicas in a pod, endpoints controller populates endpoint objects like services and pods, and others.<\/em><\/p>\n<p><span style=\"font-weight: 400;\">The kube-controller-manager is a collection of such controller processes that are executed in the background to run the core control loops, watch the state of the cluster, and make changes to drive status toward the desired state.<\/span><\/p>\n<h4><span style=\"font-weight: 400;\">Kube-scheduler<\/span><\/h4>\n<p><span style=\"font-weight: 400;\">It is responsible for scheduling containers across nodes in the cluster. It reads the service\u2019s operational requirements and schedules it on the best fit node after taking various constraints into accounts such as resource limitations or guarantees, and affinity and anti-affinity specifications.<\/span><\/p>\n<h4><span style=\"font-weight: 400;\">Cloud-controller-manager<\/span><\/h4>\n<p><span style=\"font-weight: 400;\">This component integrates into each public cloud for optimal support of availability zones, VM instances, storage services, and network services for DNS, routing, and load balancing.<\/span><\/p>\n<p>For example, when a controller needs to check if a node was terminated or set up routers, load balancers, or volumes in the cloud infrastructure, all that is handled by the cloud-controller-manager.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Worker_node_components\"><\/span><span style=\"font-weight: 400;\">Worker node components<\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4>Kubelet<\/h4>\n<p><span style=\"font-weight: 400;\">The Kubelet is the primary and most important controller in Kubernetes.<br \/>\n<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">&#8211;\u00a0 <\/span><span style=\"font-weight: 400;\">It is the part that enforces the desired state of a resource, ensuring that pods and their containers are running in the desired state. <\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">&#8211;\u00a0 It&#8217;s responsible for sending the health report of the worker node where it is running to the master node.<\/span><\/p>\n<h4>Kube-proxy<\/h4>\n<p>A proxy service that runs on each worker node to forward individual requests destined for specific pods\/containers across various isolated networks in a cluster.<\/p>\n<p>These were components related to the Kubernetes cluster. In practice, there is one more component that is used. It&#8217;s the &#8216;Kubectl&#8217;.<\/p>\n<h4>Container runtime<\/h4>\n<p>It&#8217;s is a software component that runs the containers on the worker nodes. Common examples of container runtimes are runC, containerd, Docker, and Windows Containers.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Kubectl\"><\/span>Kubectl<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>It is a command-line utility that helps in easy interaction with the kube-apiserver. It lets us issue simple human-friendly commands to perform actions via the kube-apiserver.<\/p>\n<p>Some example commands of it are<\/p>\n<ul>\n<li>To create a new pod running nginx: &#8216;kubectl run nginx &#8211;image=nginx&#8217;<\/li>\n<li>To create a new deployment: &#8216;kubectl create deployment nginx &#8211;image=nginx &#8211;replicas=2&#8217;<\/li>\n<\/ul>\n<p>So, these were the different components of Kubernetes.<\/p>\n<p>Now, In order to gain a better understanding of how the different components interact with each other &#8211; let&#8217;s see the different steps involved in performing an action on the cluster.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Steps_for_Creation_of_a_new_pod_in_a_Kubernetes_cluster\"><\/span>Steps for Creation of a new pod in a Kubernetes cluster<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4>Step 1: User request processing<\/h4>\n<ul>\n<li>\u00a0The user issues a command requesting the creation of a new <em>pod<\/em> via <em>kubectl<\/em>.<\/li>\n<li>\u00a0From the <em>kubectl<\/em> CLI utility, the request reaches the <em>kube-apiserver<\/em> which validates the user request.<\/li>\n<li>\u00a0Once the validation is successful, the <em>kube-apiserver<\/em> creates a new key-value record for this new <em>pod<\/em> inside <em>etcd<\/em>.<\/li>\n<\/ul>\n<h4>Step 2: Worker node scheduling process<\/h4>\n<ul>\n<li>\u00a0The <em>kube-scheduler<\/em> continuously interacts with the <em>kube-apiserver<\/em> and gets to know about the requirement of a new <em>pod<\/em>.<\/li>\n<li>\u00a0The <em>kube-scheduler<\/em> measures all the parameters such as resource requirements and affinity rules to determine a <em>worker node<\/em> where the new <em>pod<\/em> can be scheduled.<\/li>\n<li>\u00a0The <em>kube-apiserver<\/em> interacts with the <em>kubelet<\/em> of the chosen <em>worker node<\/em> and passes necessary information such as image name, env vars of the <em>pod<\/em> to the <em>kubelet<\/em>.<\/li>\n<li>\u00a0After the information has been passed to the <em>kubelet<\/em>, the <em>worker node<\/em> information is passed to <em>etcd<\/em> as well by the<em> kube-apiserver.<\/em><\/li>\n<\/ul>\n<h4>Step3: Pod status<\/h4>\n<ul>\n<li>\u00a0The <em>pod&#8217;s<\/em> present status is continuously communicated with the<em> kube-apiserver <\/em>by the <em><em>kubelet.<\/em><\/em><\/li>\n<li>\u00a0The <em>kube-apiserver <\/em>passes on the state of the new <em>pod<\/em> to the <em>etcd<\/em> key-value store.<\/li>\n<li>Once the <em>pod<\/em> starts running, the same is communicated to the user via the <em>kube-apiserver<\/em> after the state is updated on the <em>etcd<\/em>.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"Summary\"><\/span>Summary<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>That&#8217;s all there is to know about the architecture of a Kubernetes cluster. Keep learning &amp; keep practicing! if you have any questions about Kubernetes Architecture, please contact us for more details. We will respond to your questions. Also you can learn more about this topic in our <a href=\"https:\/\/www.whizlabs.com\/certified-kubernetes-administrator\/\">kubernetes certification course<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this blog post, we are explaining in details about the Kubernetes Architecture. Unlike past solutions, which were meant to do one thing well, Kubernetes was built from the ground up with comprehensibility in mind. Kubernetes is the preferred option for container orchestration as: It is a platform for automating deployment, scaling, and management of containerized applications across multiple hosts. It helps in automating work that would have had to be taken care of manually in the past such as the utilization and management of computing, network, and storage resources. It has various options to support customization in a workflow [&hellip;]<\/p>\n","protected":false},"author":357,"featured_media":80936,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[10],"tags":[],"class_list":["post-80641","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud-computing-certifications"],"uagb_featured_image_src":{"full":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",600,315,false],"thumbnail":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture-150x150.png",150,150,true],"medium":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture-300x158.png",300,158,true],"medium_large":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",600,315,false],"large":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",600,315,false],"1536x1536":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",600,315,false],"2048x2048":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",600,315,false],"profile_24":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",24,13,false],"profile_48":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",48,25,false],"profile_96":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",96,50,false],"profile_150":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",150,79,false],"profile_300":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",300,158,false],"tptn_thumbnail":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture-250x250.png",250,250,true],"web-stories-poster-portrait":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",600,315,false],"web-stories-publisher-logo":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",96,50,false],"web-stories-thumbnail":["https:\/\/www.whizlabs.com\/blog\/wp-content\/uploads\/2022\/01\/Kubernetes-Architecture.png",150,79,false]},"uagb_author_info":{"display_name":"Shishir Khandelwal","author_link":"https:\/\/www.whizlabs.com\/blog\/author\/shishir-khandelwal\/"},"uagb_comment_info":3,"uagb_excerpt":"In this blog post, we are explaining in details about the Kubernetes Architecture. Unlike past solutions, which were meant to do one thing well, Kubernetes was built from the ground up with comprehensibility in mind. Kubernetes is the preferred option for container orchestration as: It is a platform for automating deployment, scaling, and management of&hellip;","_links":{"self":[{"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/posts\/80641","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/users\/357"}],"replies":[{"embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/comments?post=80641"}],"version-history":[{"count":27,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/posts\/80641\/revisions"}],"predecessor-version":[{"id":80865,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/posts\/80641\/revisions\/80865"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/media\/80936"}],"wp:attachment":[{"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/media?parent=80641"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/categories?post=80641"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.whizlabs.com\/blog\/wp-json\/wp\/v2\/tags?post=80641"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}