{"id":38648,"date":"2019-10-31T22:25:04","date_gmt":"2019-10-31T19:25:04","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kratkoe-vvedenie-v-kustomize\/"},"modified":"2019-10-31T22:25:04","modified_gmt":"2019-10-31T19:25:04","slug":"kratkoe-vvedenie-v-kustomize","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize","title":{"rendered":"Introducci\u00f3n breve a Kustomize","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i><b>Nota de traducci\u00f3n.<\/b>: El art\u00edculo fue escrito por Scott Lowe, un ingeniero con amplia experiencia en TI, autor\/coautor de siete libros impresos (principalmente sobre VMware vSphere). Actualmente trabaja en su filial de VMware, Heptio (absorbida en 2016), especializ\u00e1ndose en computaci\u00f3n en la nube y Kubernetes. El texto sirve como una introducci\u00f3n concisa y f\u00e1cil de entender sobre la gesti\u00f3n de configuraciones para Kubernetes mediante la tecnolog\u00eda <noindex><a rel=\"nofollow\" href=\"https:\/\/kustomize.io\/\">Kustomize<\/a><\/noindex>, que recientemente se incorpor\u00f3 a K8s.<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Introducci\u00f3n breve a Kustomize\" src=\"\/wp-content\/uploads\/2019\/10\/099d2281c06d7a294532a816bb6aab21.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKustomize es una herramienta que permite a los usuarios \"personalizar archivos YAML simples y libres de plantillas para diferentes prop\u00f3sitos, dejando el YAML original intacto y utilizable\" (esta descripci\u00f3n se toma directamente del <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes-sigs\/kustomize\">repositorio kustomize en GitHub<\/a><\/noindex>). Kustomize se puede ejecutar directamente o, a partir de Kubernetes 1.14, utilizar <code>kubectl -k<\/code> para acceder a sus funciones (aunque, a partir de Kubernetes 1.15, el binario separado es m\u00e1s reciente que las capacidades integradas en kubectl). <i>(<b>Nota de traducci\u00f3n.<\/b>: Con el reciente lanzamiento de <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/467477\/\">Kubernetes 1.16<\/a><\/noindex> kustomize <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/enhancements\/issues\/1177\">es compatible<\/a><\/noindex> , tambi\u00e9n en la herramienta kubeadm.)<\/i> En esta publicaci\u00f3n, quiero familiarizar a los lectores con los conceptos b\u00e1sicos de kustomize.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>En su forma m\u00e1s sencilla o aplicaci\u00f3n, kustomize es simplemente un conjunto de recursos (archivos YAML que definen objetos de Kubernetes: Deployments, Services, etc.) m\u00e1s una lista de instrucciones sobre los cambios que se deben realizar en estos recursos. Al igual que make utiliza un conjunto de instrucciones que se encuentran en el <code>Makefile<\/code>, y Docker construye un contenedor basado en las instrucciones de <code>Dockerfile<\/code>, kustomize utiliza <code>kustomization.yaml<\/code> para almacenar los mandatos sobre qu\u00e9 cambios desea hacer el usuario en el conjunto de recursos.<\/p>\n<p>Aqu\u00ed hay un ejemplo de archivo <code>kustomization.yaml<\/code>:<\/p>\n<pre><code class=\"plaintext\">resources:\n- deployment.yaml\n- service.yaml\nnamePrefix: dev-\nnamespace: development\ncommonLabels:\n  environment: development<\/code><\/pre>\n<p>\nNo intentar\u00e9 hablar de todos los posibles campos en el archivo <code>kustomization.yaml<\/code> (esto est\u00e1 bastante bien documentado <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes-sigs\/kustomize\/blob\/master\/docs\/fields.md\">aqu\u00ed<\/a><\/noindex>), pero proporcionar\u00e9 una breve explicaci\u00f3n de un ejemplo espec\u00edfico:<\/p>\n<ul>\n<li> Campo <code>resources<\/code> indica qu\u00e9 (qu\u00e9 recursos) cambiar\u00e1 kustomize. En este caso, estar\u00e1 buscando recursos en los archivos <code>deployment.yaml<\/code> y <code>service.yaml<\/code> en su directorio (si es necesario, se pueden especificar rutas completas o relativas).<\/li>\n<li> Campo <code>namePrefix<\/code> indica a kustomize que a\u00f1ada un prefijo espec\u00edfico (en este caso \u2014 <code>dev-<\/code>) al atributo <code>name<\/code> de todos los recursos definidos en el campo <code>resources<\/code>. Por lo tanto, si hay un Deployment en el <code>name<\/code> con el valor <code>nginx-deployment<\/code>, kustomize lo convertir\u00e1 en <code>dev-nginx-deployment<\/code>.<\/li>\n<li> Campo <code>namespace<\/code> indica a kustomize que a\u00f1ada un espacio de nombres especificado a todos los recursos. En este caso, el Deployment y el Service estar\u00e1n en el espacio de nombres <code>desarrollo<\/code>.<\/li>\n<li> Finalmente, el campo <code>commonLabels<\/code> contiene un conjunto de etiquetas que se a\u00f1adir\u00e1n a todos los recursos. En nuestro ejemplo, kustomize asignar\u00e1 a los recursos una etiqueta con el nombre <code>entorno<\/code> y el valor <code>desarrollo<\/code>.<\/li>\n<\/ul>\n<p>\nSi el usuario ejecuta <code>kustomize build .<\/code> en el directorio con el archivo <code>kustomization.yaml<\/code> y los recursos necesarios (es decir, los archivos <code>deployment.yaml<\/code> y <code>service.yaml<\/code>), recibir\u00e1 como salida el texto con las modificaciones especificadas en <code>kustomization.yaml<\/code>.<\/p>\n<p><img decoding=\"async\" alt=\"Introducci\u00f3n breve a Kustomize\" src=\"\/wp-content\/uploads\/2019\/10\/f15c7ccb5f200c7e9b5a25142c364cb8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i><b>Nota de traducci\u00f3n.<\/b>: Ilustraci\u00f3n de la documentaci\u00f3n del proyecto sobre el uso \"sencillo\" de kustomize<\/i><\/p>\n<p>La salida se puede redirigir si es necesario para registrar los cambios:<\/p>\n<pre><code class=\"bash\">kustomize build . &gt; custom-config.yaml<\/code><\/pre>\n<p>\nLa salida es determinista (con los mismos datos de entrada se obtienen los mismos resultados de salida), por lo que no es necesario guardar el resultado en un archivo. En su lugar, se puede pasar directamente a otro comando:<\/p>\n<pre><code class=\"bash\">kustomize build . | kubectl apply -f -<\/code><\/pre>\n<p>\nEl acceso a las funciones de kustomize tambi\u00e9n se puede obtener a trav\u00e9s de <code>kubectl -k<\/code> (a partir de la versi\u00f3n 1.14 de Kubernetes). Sin embargo, tenga en cuenta que el paquete separado de kustomize se actualiza m\u00e1s r\u00e1pido que el integrado en kubectl (al menos, esa es la situaci\u00f3n con la versi\u00f3n 1.15 de Kubernetes).<\/p>\n<p>Los lectores pueden preguntar: \"\u00bfPor qu\u00e9 complicarse tanto si se pueden editar los archivos directamente?\". Excelente pregunta. En nuestro ejemplo, de hecho <i>en<\/i> es posible modificar los archivos <code>deployment.yaml<\/code> y <code>service.yaml<\/code> directamente, pero \u00bfqu\u00e9 pasa si son un fork de alg\u00fan proyecto? Cambiar los archivos directamente dificulta (si es que no hace imposible) el rebase del fork cuando se realizan cambios en el origen. Usar kustomize permite centralizar estos cambios en un archivo <code>kustomization.yaml<\/code>, dejando los archivos originales intactos y as\u00ed facilitando, si es necesario, el rebase de los archivos de origen.<\/p>\n<p>Las ventajas de kustomize se hacen evidentes en casos de uso m\u00e1s complejos. En el ejemplo anterior, <code>kustomization.yaml<\/code> y los recursos est\u00e1n en el mismo directorio. Sin embargo, kustomize admite escenarios en los que hay una configuraci\u00f3n base y m\u00faltiples variantes de esta, tambi\u00e9n conocidas como <i>Adem\u00e1s:<\/i>. Por ejemplo, el usuario podr\u00eda querer tomar el Deployment y Service para nginx que utilic\u00e9 como ejemplo y crear versiones (o variantes) de desarrollo, staging y producci\u00f3n de esos archivos. Para ello, necesitar\u00e1 las superposiciones mencionadas anteriormente y, por supuesto, los propios recursos base.<\/p>\n<p>Para ilustrar la idea de overlays y recursos base <i>(recursos base)<\/i>, supongamos que los directorios tienen la siguiente estructura:<\/p>\n<pre><code class=\"plaintext\">- base\n  - deployment.yaml\n  - service.yaml\n  - kustomization.yaml\n- overlays\n  - dev\n    - kustomization.yaml\n  - staging\n    - kustomization.yaml\n  - prod\n    - kustomization.yaml<\/code><\/pre>\n<p>\nEn el archivo <code>base\/kustomization.yaml<\/code> los usuarios utilizan el campo <code>resources<\/code> simplemente declaran los recursos que debe incluir kustomize.<\/p>\n<p>En cada uno de los archivos <code>overlays\/{dev,staging,prod}\/kustomization.yaml<\/code> los usuarios hacen referencia a la configuraci\u00f3n base en el campo <code>resources<\/code>, y luego especifican los cambios concretos para <i>ese entorno<\/i>. Por ejemplo, el archivo <code>overlays\/dev\/kustomization.yaml<\/code> puede lucir como el ejemplo proporcionado anteriormente:<\/p>\n<pre><code class=\"plaintext\">resources:\n- ..\/.. \/base\nnamePrefix: dev-\nnamespace: development\ncommonLabels:\n  environment: development<\/code><\/pre>\n<p>\nMientras que el archivo <code>overlays\/prod\/kustomization.yaml<\/code> puede ser completamente diferente:<\/p>\n<pre><code class=\"plaintext\">resources:\n- ..\/.. \/base\nnamePrefix: prod-\nnamespace: production\ncommonLabels:\n  environment: production\n  sre-team: blue<\/code><\/pre>\n<p>\nCuando el usuario ejecute <code>kustomize build .<\/code> en el directorio <code>overlays\/dev<\/code>, kustomize generar\u00e1 una versi\u00f3n de desarrollo. Si se ejecuta <code>kustomize build .<\/code> en el directorio <code>overlays\/prod<\/code> , obtendremos una versi\u00f3n de producci\u00f3n. Y todo esto, sin realizar cambios en los archivos originales <i>(base)<\/i> , y todo esto \u2014 de manera declarativa y determinista. Se puede hacer commit de la configuraci\u00f3n base y de los directorios de overlays directamente en el sistema de control de versiones, sabiendo que con estos archivos se puede reproducir la configuraci\u00f3n deseada en cualquier momento.<\/p>\n<p><img decoding=\"async\" alt=\"Introducci\u00f3n breve a Kustomize\" src=\"\/wp-content\/uploads\/2019\/10\/959af6422f6ae4c1b8d755e9c5728d38.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i><b>Nota de traducci\u00f3n.<\/b>: Ilustraci\u00f3n de la documentaci\u00f3n del proyecto sobre el uso de overlays en kustomize<\/i><\/p>\n<p>Kustomize puede <i>mucho<\/i> hacer m\u00e1s de lo que se ha mencionado en este art\u00edculo. Sin embargo, espero que sirva como una buena introducci\u00f3n.<\/p>\n<h2>Recursos adicionales<\/h2>\n<p>\nHay muchos buenos art\u00edculos y publicaciones sobre kustomize. Aqu\u00ed hay algunos que consider\u00e9 especialmente \u00fatiles:<\/p>\n<ul>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/levelup.gitconnected.com\/kubernetes-change-base-yaml-config-for-different-environments-prod-test-6224bfb6cdd6\">Cambiar la configuraci\u00f3n YAML base para diferentes entornos prod\/test usando Kustomize<\/a><\/noindex>;<\/li>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.stack-labs.com\/code\/kustomize-101\/\">Kustomize: la forma correcta de hacer plantillas en Kubernetes<\/a><\/noindex>;<\/li>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/manage-kubernetes-objects\/kustomization\/\">Gesti\u00f3n declarativa de objetos de Kubernetes utilizando Kustomize<\/a><\/noindex>;<\/li>\n<li> <noindex><a rel=\"nofollow\" href=\"https:\/\/testingclouds.wordpress.com\/2018\/07\/20\/844\/\">Personalizando gr\u00e1ficos de Helm upstream con Kustomize<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\n<i><b>Nota de traducci\u00f3n.<\/b>: Tambi\u00e9n se puede recomendar un bloque de enlaces, publicado como <noindex><a rel=\"nofollow\" href=\"https:\/\/kustomize.io\/#resources\">Recursos<\/a><\/noindex> en el sitio de la herramienta, seguido de una colecci\u00f3n de videos con las \u00faltimas presentaciones sobre kustomize.<\/i><\/p>\n<p>Si tienes preguntas o sugerencias para mejorar este material, siempre estoy abierto a comentarios. Puedes contactarme a trav\u00e9s de <noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/scott_lowe\">Twitter<\/a><\/noindex> o en <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.slack.com\/\">el canal de Slack de Kubernetes<\/a><\/noindex>. \u00a1Disfruta modificando tus manifiestos con kustomize!<\/p>\n<h2>P.D. del traductor<\/h2>\n<p>\nTambi\u00e9n puedes leer en nuestro blog:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/462707\/\">Herramientas para desarrolladores de aplicaciones que se ejecutan en Kubernetes<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/445196\/\">Kubernetes 1.13: revisi\u00f3n de las principales novedades<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/468259\/\">Las cinco principales conclusiones del Helm Summit 2019 en \u00c1msterdam<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/420437\/\">Introducci\u00f3n pr\u00e1ctica al gestor de paquetes para Kubernetes \u2014 Helm<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/469179\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0421\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u043b Scott Lowe \u2014 \u0438\u043d\u0436\u0435\u043d\u0435\u0440 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u0430\u0436\u0435\u043c \u0432 \u0418\u0422, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c\/\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u043c\u0438 \u043f\u0435\u0447\u0430\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 (\u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e VMware vSphere). \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0435\u0451 \u0434\u043e\u0447\u0435\u0440\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 VMware \u2014 Heptio (\u043f\u043e\u0433\u043b\u043e\u0449\u0435\u043d\u0430 \u0432 2016 \u0433\u043e\u0434\u0443), \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044f\u0441\u044c \u043d\u0430 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u0445 \u0438 Kubernetes. \u0421\u0430\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442 \u0441\u043b\u0443\u0436\u0438\u0442 \u0451\u043c\u043a\u0438\u043c \u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u043c \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u043c\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28991,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-38648","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0421\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u043b Scott Lowe \u2014 \u0438\u043d\u0436\u0435\u043d\u0435\u0440 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u0430\u0436\u0435\u043c \u0432 \u0418\u0422, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c\/\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u043c\u0438 \u043f\u0435\u0447\u0430\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 (\u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e VMware vSphere).\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0440\u0430\u0442\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 Kustomize | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0421\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u043b Scott Lowe \u2014 \u0438\u043d\u0436\u0435\u043d\u0435\u0440 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u0430\u0436\u0435\u043c \u0432 \u0418\u0422, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c\/\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u043c\u0438 \u043f\u0435\u0447\u0430\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 (\u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e VMware vSphere).\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:25:04+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:25:04+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Breve introducci\u00f3n a Kustomize | ProHoster","description":"Nota del traductor: Este art\u00edculo fue escrito por Scott Lowe, un ingeniero con mucha experiencia en TI, autor\/coautor de siete libros impresos (principalmente sobre VMware vSphere).","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0440\u0430\u0442\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 Kustomize | ProHoster","og:description":"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0421\u0442\u0430\u0442\u044c\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u043b Scott Lowe \u2014 \u0438\u043d\u0436\u0435\u043d\u0435\u0440 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u0430\u0436\u0435\u043c \u0432 \u0418\u0422, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0439\u0441\u044f \u0430\u0432\u0442\u043e\u0440\u043e\u043c\/\u0441\u043e\u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u043c\u0438 \u043f\u0435\u0447\u0430\u0442\u043d\u044b\u0445 \u043a\u043d\u0438\u0433 (\u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e VMware vSphere).","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/kratkoe-vvedenie-v-kustomize","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:25:04+00:00","article:modified_time":"2019-10-31T19:25:04+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38648","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 22:54:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:05:23","updated":"2026-01-23 22:54:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/38648","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=38648"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/38648\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/28991"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=38648"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=38648"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=38648"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}