{"id":36905,"date":"2026-03-17T10:42:03","date_gmt":"2026-03-17T14:42:03","guid":{"rendered":"https:\/\/www.lpi.org\/articles\/\/"},"modified":"2026-03-25T10:58:10","modified_gmt":"2026-03-25T14:58:10","slug":"devops-tools-introduction-09-machine-deployment","status":"publish","type":"post","link":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/","title":{"rendered":"DevOps Tools Introduction #09: Machine Deployment"},"content":{"rendered":"<p>In previous discussions about DevOps tools, we explored container virtualization and how containers transformed the way applications are packaged and deployed. One of the major advantages of containers is their extremely fast startup time combined with minimal resource overhead compared to traditional virtual machines. Because containers share the host operating system kernel, they can start in seconds and allow organizations to run many isolated workloads efficiently on the same infrastructure.<\/p>\n<p>However, while containers simplify application packaging and execution, managing large numbers of containers across multiple servers quickly becomes complex. Modern applications often consist of dozens or even hundreds of containers that must be scheduled, monitored, restarted when failures occur, and scaled dynamically according to demand. Performing these tasks manually would be impractical in production environments.<\/p>\n<p>This challenge led to the development of <a href=\"https:\/\/devopscube.com\/docker-container-clustering-tools\/\">container orchestration platforms<\/a>, designed to automate the deployment, scaling, networking, and lifecycle management of containers across clusters of machines. Among these platforms, <a href=\"https:\/\/kubernetes.io\/\">Kubernetes<\/a> has emerged as the most widely adopted solution for orchestrating containerized workloads.<\/p>\n<p>Originally developed by Google and later donated to the <a href=\"https:\/\/www.cncf.io\/\">Cloud Native Computing Foundation<\/a>, Kubernetes provides a powerful and extensible architecture that allows organizations to manage distributed containerized applications reliably and at scale. By introducing concepts such as <a href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/pods\/\">Pods<\/a>, <a href=\"https:\/\/kubernetes.io\/docs\/concepts\/services-networking\/service\/\">Services<\/a>, <a href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/controllers\/deployment\/\">Deployments<\/a>, and <a href=\"https:\/\/kubernetes.io\/docs\/concepts\/architecture\/controller\/\">controllers<\/a>, Kubernetes enables administrators and DevOps engineers to define the desired state of their infrastructure while the platform continuously ensures that the cluster maintains that state.<\/p>\n<p>In this lesson, we will explore the architecture of Kubernetes, the main components of a Kubernetes cluster, and how administrators can interact with the platform using tools such as <a href=\"https:\/\/kubernetes.io\/docs\/tasks\/tools\/\">kubectl<\/a> to inspect cluster state and manage resources.<\/p>\n<h2>Kubernetes Cluster Architecture<\/h2>\n<p>A Kubernetes <em>cluster<\/em> is a distributed system composed of two main parts.<\/p>\n<p>The <em><a href=\"https:\/\/kubernetes.io\/docs\/concepts\/overview\/components\/\">control plane<\/a><\/em> manages the cluster and makes scheduling decisions, while worker nodes execute application workloads.<\/p>\n<p>The architecture allows Kubernetes to maintain the desired state of applications. Instead of manually starting processes on servers, administrators declare the intended configuration and Kubernetes automatically reconciles the cluster state to match that configuration.<\/p>\n<h3>Core Control Plane Components<\/h3>\n<p>The control plane contains several critical components responsible for cluster management and orchestration.<\/p>\n<h4>API Server<\/h4>\n<p>The <a href=\"https:\/\/kubernetes.io\/docs\/concepts\/overview\/kubernetes-api\/\">Kubernetes API Server (kube-apiserver)<\/a> is the central communication hub of the cluster. All operations performed by administrators\u2014whether using kubectl, internal components, or automation tools\u2014pass through this API.<\/p>\n<p>Its main responsibilities include:<\/p>\n<ul>\n<li>Exposing the Kubernetes REST API<\/li>\n<li>Authenticating and authorizing requests<\/li>\n<li>Validating resource definitions<\/li>\n<li>Persisting cluster state into etcd<\/li>\n<\/ul>\n<p>Because it acts as the gateway to the cluster, it is designed as a stateless service that can scale horizontally.<\/p>\n<h4>etcd<\/h4>\n<p><a href=\"https:\/\/kubernetes.io\/docs\/concepts\/architecture\/#etcd\">etcd<\/a> is a distributed key-value database used as the persistent storage backend for Kubernetes. It stores all cluster information, including configuration data, node information, and resource definitions.<\/p>\n<p>Every Kubernetes object\u2014such as Pods, Deployments, and Services\u2014is recorded in etcd. This makes etcd the single source of truth for the cluster.<\/p>\n<p>If etcd becomes unavailable, workloads that are already running may continue, but the cluster cannot process changes such as creating or updating resources.<\/p>\n<h4>Controller Manager<\/h4>\n<p>The <a href=\"https:\/\/kubernetes.io\/docs\/concepts\/architecture\/#kube-controller-manager\">Controller Manager (kube-controller-manager)<\/a> runs multiple controllers that continuously monitor the cluster state and enforce the desired configuration.<\/p>\n<p>Controllers implement reconciliation loops, meaning they repeatedly compare the actual cluster state with the desired state and take corrective action when differences are detected.<br \/>\nExamples of controllers include:<\/p>\n<ul>\n<li>Node Controller<\/li>\n<li>ReplicaSet Controller<\/li>\n<li>Deployment Controller<\/li>\n<li>Service Controller<\/li>\n<\/ul>\n<p>These components ensure that workloads remain available and consistent with their definitions.<\/p>\n<h4>Scheduler<\/h4>\n<p>The <a href=\"https:\/\/kubernetes.io\/docs\/concepts\/architecture\/#kube-scheduler\">Kubernetes Scheduler (kube-scheduler)<\/a> determines where newly created Pods should run within the cluster. It analyzes resource availability, constraints, and scheduling policies to select the most appropriate node.<\/p>\n<p>When a Pod is created without an assigned node, the scheduler evaluates the cluster and assigns it to a suitable node based on criteria such as:<\/p>\n<ul>\n<li>CPU and memory availability<\/li>\n<li>Node affinity rules<\/li>\n<li>Taints and tolerations<\/li>\n<li>Workload balancing<\/li>\n<\/ul>\n<h3>Worker Node Components<\/h3>\n<p>Worker nodes run application workloads and typically include:<\/p>\n<ul>\n<li>kubelet \u2013 the node agent responsible for communicating with the control plane<\/li>\n<li>container runtime \u2013 such as containerd or Docker<\/li>\n<li>kube-proxy \u2013 handles networking and service routing<\/li>\n<\/ul>\n<p>These components allow nodes to execute Pods and report their status to the control plane.<\/p>\n<h2>Configuring kubectl<\/h2>\n<p><a href=\"https:\/\/kubernetes.io\/docs\/reference\/kubectl\/quick-reference\/\">kubectl<\/a> is the command-line interface used to communicate with a Kubernetes cluster. It interacts with the Kubernetes API server to manage resources and query cluster state.<\/p>\n<p>The configuration for kubectl is typically stored in a file named <code>~\/.kube\/config<\/code>. This file defines:<\/p>\n<ul>\n<li>Cluster endpoints<\/li>\n<li>Authentication credentials<\/li>\n<li>Contexts<\/li>\n<li>Namespaces<\/li>\n<\/ul>\n<p>Administrators can manage these configurations using the kubectl config command. Some common commands are described in the following sections.<\/p>\n<h3>kubectl get<\/h3>\n<p>One of the most common tasks when working with Kubernetes is retrieving information about resources. The kubectl get command lists resources within the cluster.<\/p>\n<p>Example:<\/p>\n<p><code>$ kubectl get pods<\/code><\/p>\n<p><code>$ kubectl get nodes<\/code><\/p>\n<p><code>$ kubectl get services<\/code><\/p>\n<p>These commands provide a concise overview of resources and their status.<\/p>\n<h2>Creating and Managing Resources<\/h2>\n<p>Kubernetes resources can be created and modified using several kubectl commands.<\/p>\n<h3>kubectl create<\/h3>\n<p>Creates a resource directly from the command line or from a manifest file.<\/p>\n<p>Example:<\/p>\n<p><code>$ kubectl create deployment nginx --image=nginx<\/code><\/p>\n<h3>kubectl apply<\/h3>\n<p>Creates or updates resources that are declared in YAML manifest files.<\/p>\n<p>Example:<\/p>\n<p><code>$ kubectl apply -f deployment.yaml<\/code><\/p>\n<p>This method is widely used in DevOps pipelines because it supports declarative infrastructure management.<\/p>\n<h3>kubectl run<\/h3>\n<p>Creates a Pod running a specified container image.<\/p>\n<p>Example:<\/p>\n<p><code>$ kubectl run test-pod --image=busybox<\/code><\/p>\n<h2>Modifying and Scaling Resources<\/h2>\n<p>Several commands allow administrators to modify running resources.<\/p>\n<h3>kubectl scale<\/h3>\n<p>Adjusts the number of replicas in a Deployment or ReplicaSet.<\/p>\n<p>Example:<\/p>\n<p><code>$ kubectl scale deployment nginx --replicas=5<\/code><\/p>\n<h3>kubectl set<\/h3>\n<p>Updates fields such as container images.<\/p>\n<p>Example:<\/p>\n<p>$ kubectl set image deployment\/nginx nginx=nginx:1.25<\/p>\n<h2>Inspecting and Debugging Workloads<\/h2>\n<p>Administrators frequently need to inspect logs and execute commands inside containers.<\/p>\n<h3>kubectl logs<\/h3>\n<p>Displays logs from a container.<\/p>\n<p>Example:<\/p>\n<p><code>$ kubectl logs nginx-pod<\/code><\/p>\n<h3>kubectl exec<\/h3>\n<p>Executes commands inside a running container.<\/p>\n<p>Example:<\/p>\n<p><code>$ kubectl exec -it nginx-pod -- \/bin\/bash<\/code><\/p>\n<p>This is particularly useful for troubleshooting application issues.<\/p>\n<p>For DevOps professionals pursuing the LPI DevOps Tools Engineer certification, understanding these components and mastering kubectl commands are essential. The ability to inspect cluster state, create and modify resources, and troubleshoot running workloads forms the foundation of effective Kubernetes operations in modern cloud-native infrastructures.<\/p>\n<p>A complete lesson covering Kubernetes architecture and usage is available free of charge in the <a href=\"https:\/\/learning.lpi.org\/en\/learning-materials\/701-200\">official learning materials<\/a> provided by the Linux Professional Institute. These materials include detailed explanations of Kubernetes components, command-line interactions with kubectl, and practical examples aligned with the DevOps Tools Engineer certification objectives.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.lpi.org\/blog\/2026\/03\/10\/devops-tools-introduction-08-container-infrastructure\/\">&lt;&lt; Read the previous part of this series<\/a>\u00a0| <a href=\"https:\/\/www.lpi.org\/blog\/2026\/03\/25\/devops-tools-introduction-10-basic-kubernetes-operations\/\">Read the next part of this series &gt;&gt;<\/a><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In previous discussions about DevOps tools, we explored container virtualization and how containers transformed the way applications are packaged and deployed. One of the major advantages of containers is their extremely fast startup time combined with minimal resource overhead compared &#8230; <a href=\"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/\" class=\"button-link\">Leer m\u00e1s<\/a><\/p>\n","protected":false},"author":66,"featured_media":36906,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"country":[],"language":[304],"ppma_author":[540,571],"class_list":["post-36905","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-none","language-english"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>DevOps Tools Introduction #09: Machine Deployment - Linux Professional Institute (LPI)<\/title>\n<meta name=\"description\" content=\"Learn machine deployment with Kubernetes: cluster architecture, control plane components, and essential kubectl commands for DevOps.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"DevOps Tools Introduction #09: Machine Deployment\" \/>\n<meta property=\"og:description\" content=\"Learn machine deployment with Kubernetes: cluster architecture, control plane components, and essential kubectl commands for DevOps.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/\" \/>\n<meta property=\"og:site_name\" content=\"Linux Professional Institute (LPI)\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/LPIConnect\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-17T14:42:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-25T14:58:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/03\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1440\" \/>\n\t<meta property=\"og:image:height\" content=\"994\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Fabian Thorns, Uir\u00e1 Ribeiro\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@lpiconnect\" \/>\n<meta name=\"twitter:site\" content=\"@lpiconnect\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fabian Thorns\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/\"},\"author\":{\"name\":\"Fabian Thorns\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#\\\/schema\\\/person\\\/87a340eca845e18d801667fd11e6937c\"},\"headline\":\"DevOps Tools Introduction #09: Machine Deployment\",\"datePublished\":\"2026-03-17T14:42:03+00:00\",\"dateModified\":\"2026-03-25T14:58:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/\"},\"wordCount\":1057,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg\",\"articleSection\":[\"- None -\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/\",\"url\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/\",\"name\":\"DevOps Tools Introduction #09: Machine Deployment - Linux Professional Institute (LPI)\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg\",\"datePublished\":\"2026-03-17T14:42:03+00:00\",\"dateModified\":\"2026-03-25T14:58:10+00:00\",\"description\":\"Learn machine deployment with Kubernetes: cluster architecture, control plane components, and essential kubectl commands for DevOps.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg\",\"width\":1440,\"height\":994,\"caption\":\"DevOps Tools Introduction #09: Machine Deployment\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/blog\\\/2026\\\/03\\\/17\\\/devops-tools-introduction-09-machine-deployment\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"DevOps Tools Introduction #09: Machine Deployment\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/\",\"name\":\"Linux Professional Institute (LPI)\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#organization\",\"name\":\"Linux Professional Institute (LPI)\",\"url\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/logo.png\",\"contentUrl\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/logo.png\",\"width\":496,\"height\":175,\"caption\":\"Linux Professional Institute (LPI)\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/LPIConnect\",\"https:\\\/\\\/x.com\\\/lpiconnect\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/35136\",\"https:\\\/\\\/www.instagram.com\\\/lpi_org\\\/\",\"https:\\\/\\\/fosstodon.org\\\/@LPI\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/es\\\/#\\\/schema\\\/person\\\/87a340eca845e18d801667fd11e6937c\",\"name\":\"Fabian Thorns\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2026\\\/01\\\/cropped-fabian-thorns-1920px-96x96.jpg583c90110e404d4e42f0be7307753074\",\"url\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2026\\\/01\\\/cropped-fabian-thorns-1920px-96x96.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lpi.org\\\/wp-content\\\/uploads\\\/2026\\\/01\\\/cropped-fabian-thorns-1920px-96x96.jpg\",\"caption\":\"Fabian Thorns\"},\"description\":\"Fabian Thorns is the Director of Product Development at Linux Professional Institute, LPI. He is M.Sc. Business Information Systems, a regular speaker at open source events and the author of numerous articles and books. Fabian has been part of the exam development team since 2010. Connect with him on LinkedIn, XING\u00a0or via email (fthorns\u00a0at\u00a0www.lpi.org).\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"DevOps Tools Introduction #09: Machine Deployment - Linux Professional Institute (LPI)","description":"Learn machine deployment with Kubernetes: cluster architecture, control plane components, and essential kubectl commands for DevOps.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/","og_locale":"es_ES","og_type":"article","og_title":"DevOps Tools Introduction #09: Machine Deployment","og_description":"Learn machine deployment with Kubernetes: cluster architecture, control plane components, and essential kubectl commands for DevOps.","og_url":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/","og_site_name":"Linux Professional Institute (LPI)","article_publisher":"https:\/\/www.facebook.com\/LPIConnect","article_published_time":"2026-03-17T14:42:03+00:00","article_modified_time":"2026-03-25T14:58:10+00:00","og_image":[{"width":1440,"height":994,"url":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/03\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg","type":"image\/jpeg"}],"author":"Fabian Thorns, Uir\u00e1 Ribeiro","twitter_card":"summary_large_image","twitter_creator":"@lpiconnect","twitter_site":"@lpiconnect","twitter_misc":{"Escrito por":"Fabian Thorns","Tiempo de lectura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/#article","isPartOf":{"@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/"},"author":{"name":"Fabian Thorns","@id":"https:\/\/www.lpi.org\/es\/#\/schema\/person\/87a340eca845e18d801667fd11e6937c"},"headline":"DevOps Tools Introduction #09: Machine Deployment","datePublished":"2026-03-17T14:42:03+00:00","dateModified":"2026-03-25T14:58:10+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/"},"wordCount":1057,"commentCount":0,"publisher":{"@id":"https:\/\/www.lpi.org\/es\/#organization"},"image":{"@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/03\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg","articleSection":["- None -"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/","url":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/","name":"DevOps Tools Introduction #09: Machine Deployment - Linux Professional Institute (LPI)","isPartOf":{"@id":"https:\/\/www.lpi.org\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/#primaryimage"},"image":{"@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/03\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg","datePublished":"2026-03-17T14:42:03+00:00","dateModified":"2026-03-25T14:58:10+00:00","description":"Learn machine deployment with Kubernetes: cluster architecture, control plane components, and essential kubectl commands for DevOps.","breadcrumb":{"@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/#primaryimage","url":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/03\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg","contentUrl":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/03\/article-DevOps-Tools-Engineer-v2-Introduction-02-09.jpg","width":1440,"height":994,"caption":"DevOps Tools Introduction #09: Machine Deployment"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lpi.org\/es\/blog\/2026\/03\/17\/devops-tools-introduction-09-machine-deployment\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lpi.org\/es\/"},{"@type":"ListItem","position":2,"name":"DevOps Tools Introduction #09: Machine Deployment"}]},{"@type":"WebSite","@id":"https:\/\/www.lpi.org\/es\/#website","url":"https:\/\/www.lpi.org\/es\/","name":"Linux Professional Institute (LPI)","description":"","publisher":{"@id":"https:\/\/www.lpi.org\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lpi.org\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.lpi.org\/es\/#organization","name":"Linux Professional Institute (LPI)","url":"https:\/\/www.lpi.org\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.lpi.org\/es\/#\/schema\/logo\/image\/","url":"https:\/\/www.lpi.org\/wp-content\/uploads\/2023\/04\/logo.png","contentUrl":"https:\/\/www.lpi.org\/wp-content\/uploads\/2023\/04\/logo.png","width":496,"height":175,"caption":"Linux Professional Institute (LPI)"},"image":{"@id":"https:\/\/www.lpi.org\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/LPIConnect","https:\/\/x.com\/lpiconnect","https:\/\/www.linkedin.com\/company\/35136","https:\/\/www.instagram.com\/lpi_org\/","https:\/\/fosstodon.org\/@LPI"]},{"@type":"Person","@id":"https:\/\/www.lpi.org\/es\/#\/schema\/person\/87a340eca845e18d801667fd11e6937c","name":"Fabian Thorns","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/01\/cropped-fabian-thorns-1920px-96x96.jpg583c90110e404d4e42f0be7307753074","url":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/01\/cropped-fabian-thorns-1920px-96x96.jpg","contentUrl":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/01\/cropped-fabian-thorns-1920px-96x96.jpg","caption":"Fabian Thorns"},"description":"Fabian Thorns is the Director of Product Development at Linux Professional Institute, LPI. He is M.Sc. Business Information Systems, a regular speaker at open source events and the author of numerous articles and books. Fabian has been part of the exam development team since 2010. Connect with him on LinkedIn, XING\u00a0or via email (fthorns\u00a0at\u00a0www.lpi.org)."}]}},"views":441,"authors":[{"term_id":540,"user_id":66,"is_guest":0,"slug":"fthornslpi-org","display_name":"Fabian Thorns","avatar_url":"https:\/\/www.lpi.org\/wp-content\/uploads\/2026\/01\/cropped-fabian-thorns-1920px-96x96.jpg","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""},{"term_id":571,"user_id":109,"is_guest":0,"slug":"uira-ribeiro","display_name":"Uir\u00e1 Ribeiro","avatar_url":"https:\/\/www.lpi.org\/wp-content\/uploads\/2024\/07\/cropped-cropped-uria-ribeiro-220x220-1-96x96.jpg","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/posts\/36905","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/users\/66"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/comments?post=36905"}],"version-history":[{"count":3,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/posts\/36905\/revisions"}],"predecessor-version":[{"id":37062,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/posts\/36905\/revisions\/37062"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/media\/36906"}],"wp:attachment":[{"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/media?parent=36905"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/categories?post=36905"},{"taxonomy":"country","embeddable":true,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/country?post=36905"},{"taxonomy":"language","embeddable":true,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/language?post=36905"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.lpi.org\/es\/wp-json\/wp\/v2\/ppma_author?post=36905"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}