{"id":4988,"date":"2021-11-23T19:03:18","date_gmt":"2021-11-23T18:03:18","guid":{"rendered":"https:\/\/geko.cloud\/?p=4988"},"modified":"2021-12-07T14:18:10","modified_gmt":"2021-12-07T13:18:10","slug":"primeros-pasos-con-argocd","status":"publish","type":"post","link":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/","title":{"rendered":"Primeros pasos con ArgoCD"},"content":{"rendered":"<h2>Introducci\u00f3n<\/h2>\n<p>En este art\u00edculo hablaremos de una de las herramientas del momento cuando se habla de procesos de integraci\u00f3n y despliegue continuo <a href=\"https:\/\/www.redhat.com\/es\/topics\/devops\/what-is-ci-cd\">CICD<\/a> en Kubernetes, <a href=\"https:\/\/argo-cd.readthedocs.io\">ArgoCD<\/a>. Y es que, en los \u00faltimos meses, son muchas las empresas punteras del sector de internet que han declarado p\u00fablicamente el uso de ArgoCD para desplegar aplicaciones en sus cl\u00fasters. <a href=\"https:\/\/github.com\/argoproj\/argo-cd\/blob\/master\/USERS.md\">Puedes ver una lista aqu\u00ed.<\/a><\/p>\n<p>Para empezar, vamos a repasar para qu\u00e9 sirve y hasta d\u00f3nde llegan las funcionalidades de ArgoCD. Seguidamente, veremos un caso de uso t\u00edpico de despliegue de aplicaciones usando ArgoCD y las ventajas que nos aporta su implementaci\u00f3n. Finalmente, comentaremos las conclusiones que hemos sacado en cuanto a pros y contras, y analizaremos que otras herramientas complementan ArgoCD para optimizar a\u00fan m\u00e1s el proceso de integraci\u00f3n y despliegue continuo de aplicaciones.<\/p>\n<h2>\u00bfQue es ArgoCD?<\/h2>\n<p>ArgoCD es una herramienta que nos permite adoptar metodolog\u00edas <a href=\"https:\/\/www.redhat.com\/es\/topics\/devops\/what-is-gitops\">GitOps<\/a> para el despliegue continuo de aplicaciones en cl\u00fasters de kubernetes.<\/p>\n<p>La principal caracter\u00edstica es que ArgoCD sincroniza el estado de las aplicaciones desplegadas con sus respectivos manifiestos declarados en git. Permitiendo as\u00ed a los desarrolladores realizar cambios en la aplicaci\u00f3n con solo modificar el contenido de git, ya sea con commits a ramas de desarrollo o modificando main.<br \/>\nUna vez modificado el c\u00f3digo en git, ArgoCD detecta, mediante webhook o comprobaci\u00f3n peri\u00f3dica cada 3 minutos, que ha habido cambios en los manifiestos de las aplicaciones. Seguidamente, compara los manifiestos declarados en git con los que hay aplicados en los cl\u00fasters y actualiza estos \u00faltimos hasta sincronizarlos.<\/p>\n<p>Su refinada interfaz de usuario permite visualizar muy bien el contenido, estructura y estado de los cl\u00fasters ademas que deja manipular los recursos.<\/p>\n<p>\u00bfPermite ArgoCD automatizar todo el proceso de CI\/CD de una aplicaci\u00f3n?<\/p>\n<p>No, ArgoCD se encarga de desplegar la aplicaci\u00f3n una vez ya existe el artefacto en un registro de contenedores, como Dockerhub o ECR.\u00a0 Esto implica que previamente el c\u00f3digo de la aplicaci\u00f3n ya ha sido testado y \u00abcontainerizado\u00bb en una imagen. Al final de este art\u00edculo vamos a hablar sobre qu\u00e9 opciones existen actualmente para llevar a cabo esta tarea.<\/p>\n<p>Como ya hemos explicado, ArgoCD sincroniza el estado de las aplicaciones desplegadas con sus respectivos manifiestos declarados en git. Pero no se refiere al repositorio git del c\u00f3digo de la aplicaci\u00f3n en s\u00ed, sino a otro repositorio separado, como indican las buenas pr\u00e1cticas, que contiene el c\u00f3digo de la infraestructura en kubernetes de la aplicaci\u00f3n, que puede ser en forma de <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/#how-it-works\">helm charts, aplicaci\u00f3n kustomize, ksonnet&#8230;\u00a0<\/a><\/p>\n<p>Para explicar mejor los principales beneficios que ofrece ArgoCD veamos un ejemplo de uso.<\/p>\n<h2>Usando ArgoCD<\/h2>\n<p>En este ejemplo vamos a ver c\u00f3mo ArgoCD puede desplegar ya sea aplicaciones desarrolladas por terceros, que tiene su propio helm chart mantenido por otra organizaci\u00f3n, o una propia donde hemos definido el chart nosotros mismos.<\/p>\n<p>Para el ejemplo desplegaremos un stack de monitoring compuesto de Prometheus, Grafana y Thanos mediante sus helm charts.<\/p>\n<p>ArgoCD despliega las aplicaciones mediante un objeto custom llamado <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/operator-manual\/declarative-setup\/#applications\">Application<\/a>. Este objeto tiene como atributos un origen y una destinaci\u00f3n. El origen puede tener varios formatos, como por ejemplo un helm chart de un repositorio de charts, o un repositorio git que contiene helm charts. La destinaci\u00f3n es el cluster al cual ser\u00e1 desplegado el contenido del origen. En la configuraci\u00f3n del application podemos indicar que ArgoCD mantenga autom\u00e1ticamente sincronizado el estado de los objetos de kubernetes desplegados con la configuraci\u00f3n indicada en el origen (charts\/git). Esta opci\u00f3n es muy interesante, ya que nos asegura que ArgoCD va a estar pendiente cada pocos minutos de que todo siga en su sitio, por contra, desplegando las aplicaciones directamente con comandos de helm \u00fanicamente nos aseguramos la sincronizaci\u00f3n en el momento de un despliegue.<\/p>\n<p>Ahora que ya hemos explicado que es el objeto Application, para nuestro monitoring-stack, vamos a crear cuatro. \u00bfPor qu\u00e9 cuatro Applications si solo habr\u00e1 3 servicios en el stack? (Prometheus, Grafana y Thanos)<\/p>\n<p>ArgoCD tambi\u00e9n nos ofrece la posibilidad de generar grupos de aplicaciones que siguen el concepto de <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/operator-manual\/cluster-bootstrapping\/#app-of-apps-pattern\">\u00abapp of apps pattern\u00bb<\/a> . Se trata de una ArgoCD application que despliega otras aplicaciones y as\u00ed recursivamente. En el caso de nuestro monitoring stack, vamos a crear una cuarta aplicaci\u00f3n que va a desplegar las otras 3 restantes, la aplicaci\u00f3n padre la vamos a llamar \u00abmonitoring-stack\u00bb.<\/p>\n<p>Para crear una aplicaci\u00f3n podemos definir un manifiesto ArgoCD Application, como se indica en <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/operator-manual\/declarative-setup\/#applications\">esta p\u00e1gina de la documentaci\u00f3n<\/a>. Tambi\u00e9n podemos mediante <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/getting_started\/#creating-apps-via-cli\">l\u00ednea de comandos.<\/a> Pero ArgoCD tiene una genial UI que permite crear aplicaciones manualmente tambi\u00e9n, <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/getting_started\/#creating-apps-via-ui\">puede ver c\u00f3mo aqu\u00ed.<\/a><\/p>\n<p>La aplicaci\u00f3n \u00abmonitoring-stack\u00bb apuntar\u00e1 su origen a un repositorio git con un Helm chart. Este chart contendr\u00e1 los manifiestos de las otras tres aplicaciones en el directorio \u00abtemplates\u00bb en formato yaml. Estos archivos son definiciones de objetos <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/operator-manual\/declarative-setup\/#applications\">Application<\/a> que apuntan al pertinente Helm chart oficial de cada servicio. Mediante los \u00abvalues files\u00bb, podremos desplegar diferentes versiones en entornos distintos.<\/p>\n<figure id=\"attachment_5055\" aria-describedby=\"caption-attachment-5055\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5055 size-medium\" src=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-13.39.28-300x248.png\" alt=\"\" width=\"300\" height=\"248\" srcset=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-13.39.28-300x248.png 300w, https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-13.39.28.png 350w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><figcaption id=\"caption-attachment-5055\" class=\"wp-caption-text\">Repositorio git que contiene un Helm chart de monitoring-stack. Este consta de 3 aplicaciones definidas en el directorio monitoring-stack\/templates\/<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p>Una vez definidas las templates del chart \u00abmonitoring-stack\u00bb, vamos a crear la ArgoCD Application, y en source vamos a apuntar hacia el repositorio que lo contiene. ArgoCD va a detectar que se trata de un helm chart y podremos indicar el path del values file concreto, por ejemplo \u00abprod-values.yaml\u00bb.<\/p>\n<p>Al finalizar la configuraci\u00f3n manual de la aplicaci\u00f3n, en la interfaz de usuario veremos como se representan todos los objetos generados, organizados de forma jer\u00e1rquica.<\/p>\n<figure id=\"attachment_5057\" aria-describedby=\"caption-attachment-5057\" style=\"width: 742px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5057 size-full\" src=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-12.35.05.png\" alt=\"\" width=\"742\" height=\"343\" srcset=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-12.35.05.png 742w, https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-12.35.05-300x139.png 300w\" sizes=\"(max-width: 742px) 100vw, 742px\" \/><figcaption id=\"caption-attachment-5057\" class=\"wp-caption-text\">La aplicaci\u00f3n monitoring-stack crea las tres aplicaciones definidas en el directorio templates del chart.<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_5065\" aria-describedby=\"caption-attachment-5065\" style=\"width: 800px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5065 size-large\" src=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-14.40.16-1024x476.png\" alt=\"\" width=\"800\" height=\"372\" srcset=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-14.40.16-1024x476.png 1024w, https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-14.40.16-300x139.png 300w, https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-14.40.16-768x357.png 768w, https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-14.40.16-1536x714.png 1536w, https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-14.40.16.png 1585w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-5065\" class=\"wp-caption-text\">La aplicaci\u00f3n grafana ha desplegado el helm chart, mediante la UI podemos ver todos los recursos en funcionamiento. Tambi\u00e9n nos permite interactuar con estos, por ejemplo podemos borrar un pod y ver c\u00f3mo el deployment despliega otro autom\u00e1ticamente.<\/figcaption><\/figure>\n<p>Al estar las aplicaciones sincronizadas con nuestro repositorio, y los charts parametrizados con templates y values. Para desplegar una nueva versi\u00f3n de cualquiera de nuestras aplicaciones solo tendremos que modificar el archivo values mediante commits de git.<br \/>\nArgoCD se encargar\u00e1 de detectar los cambios en el repositorio y aplicarlos en el cl\u00faster de kubernetes mediante un despliegue rolling update.<\/p>\n<figure id=\"attachment_5067\" aria-describedby=\"caption-attachment-5067\" style=\"width: 292px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5067 size-full\" src=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/Screenshot-2021-10-29-at-14.54.37.png\" alt=\"\" width=\"292\" height=\"170\" \/><figcaption id=\"caption-attachment-5067\" class=\"wp-caption-text\">versiones del chart definidas en el archivo prod_values.yaml<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p>Como apunte, usando <a href=\"https:\/\/github.com\/argoproj-labs\/argocd-image-updater\">ArgoCD Image Updater<\/a> nos podemos ahorrar hacer este \u00faltimo paso manualmente, o incluso tener que desarrollar una pipeline compleja para actualizar el fichero values.yaml en git cuando queremos desplegar la nueva imagen.<br \/>\nEsta herramienta consulta peri\u00f3dicamente los \u00faltimos tags en nuestro repositorio de im\u00e1genes buscando nuevos artefactos para desplegar. De esta forma, una vez ha encontrado uno nuevo, se encarga de automatizar el proceso de despliegue editando la configuraci\u00f3n de git con el nombre del nuevo tag.<br \/>\nHace falta mencionar que a\u00fan no hay una versi\u00f3n estable de <a href=\"https:\/\/github.com\/argoproj-labs\/argocd-image-updater\">ArgoCD Image Updater,<\/a> pero se la espera pronto.<\/p>\n<p>En este ejemplo hemos creado una aplicaci\u00f3n que apunta a un repositorio que crea aplicaciones las cuales apuntan a helm charts oficiales, sin embargo este bucle jer\u00e1rquico se puede extender mucho mas, siguiendo el \u00abapp of apps pattern\u00bb.<\/p>\n<p>Otra caracter\u00edstica interesante de ArgoCD es que nos permite desplegar aplicaciones en distintos cl\u00fasters. Hay varias maneras de hacerlo, no obstante la m\u00e1s directa es mediante el recurso <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/user-guide\/application-set\/\">Application Set.<\/a><br \/>\nEn su manifiesto podemos especificar una lista de clusters donde desplegar simult\u00e1neamente con distintos paths del repositorio. Ya que en nuestro repositorio podemos especificar diferentes versiones para cada cl\u00faster.<\/p>\n<p>La relativa facilidad de instalaci\u00f3n que tiene ArgoCD supone otro punto positivo a tener en cuenta, aqu\u00ed puedes consultar <a href=\"https:\/\/argo-cd.readthedocs.io\/en\/stable\/cli_installation\/\">los pasos<\/a>.<\/p>\n<h2>Automatizaci\u00f3n de todo el proceso CICD con Argo<\/h2>\n<p>En el caso de querer ir un paso m\u00e1s all\u00e1 y automatizar todo el proceso de CICD en kubernetes, podemos complementar ArgoCD con el resto de herramientas que presenta el proyecto <a href=\"https:\/\/argoproj.github.io\/\">Argo.<\/a><br \/>\nCombinando Argo Events, Argo Workflows, ArgoCD y Argo Rollouts es posible una mayor automatizaci\u00f3n siguiendo las mejores pr\u00e1cticas en los est\u00e1ndares actuales de integraci\u00f3n continua.<br \/>\nVictor Farcic lo explica de manera muy coherente en este <a href=\"https:\/\/www.youtube.com\/watch?v=XNXJtxkUKeY&amp;t=277s&amp;ab_channel=DevOpsToolkit\">video<\/a>.<\/p>\n<p>Como soluci\u00f3n a la complejidad a\u00f1adida que supone instalar y manejar todas estas herramientas de Argo project, ya han salido al mercado algunas aplicaciones que engloban todo este stack y nos permiten configurar los pipelines para la integraci\u00f3n y despliegue des de una capa de mas alto nivel mas simplificada. A continuaci\u00f3n mencionamos un par de ellas, aun que en este post no vamos a analizar las funcionalidades particulares.<\/p>\n<p><a href=\"https:\/\/devtron.ai\/\">Devtron<\/a> es una herramienta open source que instala por debajo todo este paquete de Argo y otras herramientas y promete permitirnos automatizar todo el proceso CICD por completo des de la interfaz gr\u00e1fica. Devtron simplifica bastante la configuraci\u00f3n, ya que interactuamos con las herramientas internas des de una capa de alto nivel. Aunque despu\u00e9s de probarlo, no creemos que la herramienta tenga la suficiente madurez como para ser implementada en un entorno productivo, de momento.<\/p>\n<p>Similar al approach de Devtron, <a href=\"https:\/\/codefresh.io\/codefresh-argo-platform\/\">Codefresh<\/a> engloba todas las aplicaciones del stack de Argo para automatizar toda la integraci\u00f3n y despliegue. Pero aparte de que la herramienta a\u00fan se encuentra en early-access, una gran diferencia es que el acceso a la herramienta ser\u00e1 en formato SaaS. Como podemos ver en el apartado de <a href=\"https:\/\/codefresh.io\/pricing\/\">pricing<\/a>, la opci\u00f3n de automatizaci\u00f3n completa ser\u00e1 de pago y el precio no se menciona en la web.<\/p>\n<h2>Conclusiones<\/h2>\n<p>ArgoCD es una herramienta muy \u00fatil para automatizar el proceso de deploy mediante buenas pr\u00e1cticas GitOps. Gracias a su implementaci\u00f3n, los developers pueden probar las nuevas versiones de las aplicaciones m\u00e1s r\u00e1pidamente y desplegar en producci\u00f3n de forma segura una vez finalizados las pruebas. Adem\u00e1s, gracias a la funci\u00f3n de auto-sync y su bonita interfaz, ArgoCD nos permite tener controlado en todo momento el estado de las aplicaciones y sus recursos desplegados en Kubernetes. Combinado con las dem\u00e1s herramientas del proyecto Argo podemos automatizar todo el proceso de CICD (y otras muchas utilidades fuera del scope de este post)\u00a0 siguiendo buenas pr\u00e1cticas para los est\u00e1ndares actuales.<\/p>\n<p>Como punto negativo, usar ArgoCD introducir\u00e1 una capa extra de complejidad a nuestra configuraci\u00f3n, ya que dispone de muchas opciones distintas, introduce \u00abcustom objects\u00bb y conceptos a los cuales no estamos familiarizados a\u00fan. Puede ser \u00aboverkill\u00bb si tenemos un cl\u00faster muy peque\u00f1o con solo un pu\u00f1ado de aplicaciones.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introducci\u00f3n En este art\u00edculo hablaremos de una de las herramientas del momento cuando se habla de procesos de integraci\u00f3n y despliegue continuo CICD en Kubernetes, ArgoCD. Y es que, en los \u00faltimos meses, son muchas las empresas punteras del sector de internet que han declarado p\u00fablicamente el uso de ArgoCD para desplegar aplicaciones en sus [&hellip;]<\/p>\n","protected":false},"author":23,"featured_media":6552,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[114,18],"tags":[127],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Primeros pasos con ArgoCD - Geko Cloud<\/title>\n<meta name=\"description\" content=\"Conoce todo el entorno de ArgoCD, desde sus ventajas hasta herramientas complementarias a ArgoCD para automatizar todo el CICD. Lee m\u00e1s en el post.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Primeros pasos con ArgoCD - Geko Cloud\" \/>\n<meta property=\"og:description\" content=\"Conoce todo el entorno de ArgoCD, desde sus ventajas hasta herramientas complementarias a ArgoCD para automatizar todo el CICD. Lee m\u00e1s en el post.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/\" \/>\n<meta property=\"og:site_name\" content=\"Geko Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2021-11-23T18:03:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-12-07T13:18:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1920\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"X\u00e8nia Adan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@geko_cloud\" \/>\n<meta name=\"twitter:site\" content=\"@geko_cloud\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/\"},\"author\":{\"name\":\"X\u00e8nia Adan\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/d0eb78f4c8e7a25a3d34040655f7d9d2\"},\"headline\":\"Primeros pasos con ArgoCD\",\"datePublished\":\"2021-11-23T18:03:18+00:00\",\"dateModified\":\"2021-12-07T13:18:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/\"},\"wordCount\":1827,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/geko.cloud\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg\",\"keywords\":[\"ArgoCD\"],\"articleSection\":[\"Destacado LABS\",\"Labs\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/\",\"url\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/\",\"name\":\"Primeros pasos con ArgoCD - Geko Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/geko.cloud\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg\",\"datePublished\":\"2021-11-23T18:03:18+00:00\",\"dateModified\":\"2021-12-07T13:18:10+00:00\",\"description\":\"Conoce todo el entorno de ArgoCD, desde sus ventajas hasta herramientas complementarias a ArgoCD para automatizar todo el CICD. Lee m\u00e1s en el post.\",\"breadcrumb\":{\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#primaryimage\",\"url\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg\",\"contentUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg\",\"width\":2560,\"height\":1920,\"caption\":\"ArgoCD\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/geko.cloud\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Primeros pasos con ArgoCD\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/geko.cloud\/es\/#website\",\"url\":\"https:\/\/geko.cloud\/es\/\",\"name\":\"Geko Cloud\",\"description\":\"Servicios de consultor\u00eda cloud y devops\",\"publisher\":{\"@id\":\"https:\/\/geko.cloud\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/geko.cloud\/es\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/geko.cloud\/es\/#organization\",\"name\":\"Geko Cloud\",\"url\":\"https:\/\/geko.cloud\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png\",\"contentUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png\",\"width\":1650,\"height\":809,\"caption\":\"Geko Cloud\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/geko_cloud\",\"https:\/\/www.instagram.com\/gekocloud\/\",\"https:\/\/www.linkedin.com\/company\/gekocloud\",\"https:\/\/www.youtube.com\/channel\/UC5EFLCqUM7fEaXSa_0nWowQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/d0eb78f4c8e7a25a3d34040655f7d9d2\",\"name\":\"X\u00e8nia Adan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7ced1192bab3d2c2b036d1551ed4fc4d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7ced1192bab3d2c2b036d1551ed4fc4d?s=96&d=mm&r=g\",\"caption\":\"X\u00e8nia Adan\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Primeros pasos con ArgoCD - Geko Cloud","description":"Conoce todo el entorno de ArgoCD, desde sus ventajas hasta herramientas complementarias a ArgoCD para automatizar todo el CICD. Lee m\u00e1s en el post.","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:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/","og_locale":"es_ES","og_type":"article","og_title":"Primeros pasos con ArgoCD - Geko Cloud","og_description":"Conoce todo el entorno de ArgoCD, desde sus ventajas hasta herramientas complementarias a ArgoCD para automatizar todo el CICD. Lee m\u00e1s en el post.","og_url":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/","og_site_name":"Geko Cloud","article_published_time":"2021-11-23T18:03:18+00:00","article_modified_time":"2021-12-07T13:18:10+00:00","og_image":[{"width":2560,"height":1920,"url":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg","type":"image\/jpeg"}],"author":"X\u00e8nia Adan","twitter_card":"summary_large_image","twitter_image":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg","twitter_creator":"@geko_cloud","twitter_site":"@geko_cloud","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#article","isPartOf":{"@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/"},"author":{"name":"X\u00e8nia Adan","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/d0eb78f4c8e7a25a3d34040655f7d9d2"},"headline":"Primeros pasos con ArgoCD","datePublished":"2021-11-23T18:03:18+00:00","dateModified":"2021-12-07T13:18:10+00:00","mainEntityOfPage":{"@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/"},"wordCount":1827,"commentCount":0,"publisher":{"@id":"https:\/\/geko.cloud\/es\/#organization"},"image":{"@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#primaryimage"},"thumbnailUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg","keywords":["ArgoCD"],"articleSection":["Destacado LABS","Labs"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/","url":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/","name":"Primeros pasos con ArgoCD - Geko Cloud","isPartOf":{"@id":"https:\/\/geko.cloud\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#primaryimage"},"image":{"@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#primaryimage"},"thumbnailUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg","datePublished":"2021-11-23T18:03:18+00:00","dateModified":"2021-12-07T13:18:10+00:00","description":"Conoce todo el entorno de ArgoCD, desde sus ventajas hasta herramientas complementarias a ArgoCD para automatizar todo el CICD. Lee m\u00e1s en el post.","breadcrumb":{"@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#primaryimage","url":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg","contentUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/11\/3d-render-low-poly-plexus-design-network-communications-1-scaled.jpg","width":2560,"height":1920,"caption":"ArgoCD"},{"@type":"BreadcrumbList","@id":"https:\/\/geko.cloud\/es\/primeros-pasos-con-argocd\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/geko.cloud\/es\/"},{"@type":"ListItem","position":2,"name":"Primeros pasos con ArgoCD"}]},{"@type":"WebSite","@id":"https:\/\/geko.cloud\/es\/#website","url":"https:\/\/geko.cloud\/es\/","name":"Geko Cloud","description":"Servicios de consultor\u00eda cloud y devops","publisher":{"@id":"https:\/\/geko.cloud\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/geko.cloud\/es\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/geko.cloud\/es\/#organization","name":"Geko Cloud","url":"https:\/\/geko.cloud\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/","url":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png","contentUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png","width":1650,"height":809,"caption":"Geko Cloud"},"image":{"@id":"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/geko_cloud","https:\/\/www.instagram.com\/gekocloud\/","https:\/\/www.linkedin.com\/company\/gekocloud","https:\/\/www.youtube.com\/channel\/UC5EFLCqUM7fEaXSa_0nWowQ"]},{"@type":"Person","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/d0eb78f4c8e7a25a3d34040655f7d9d2","name":"X\u00e8nia Adan","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/7ced1192bab3d2c2b036d1551ed4fc4d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7ced1192bab3d2c2b036d1551ed4fc4d?s=96&d=mm&r=g","caption":"X\u00e8nia Adan"}}]}},"_links":{"self":[{"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/posts\/4988"}],"collection":[{"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/comments?post=4988"}],"version-history":[{"count":12,"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/posts\/4988\/revisions"}],"predecessor-version":[{"id":7958,"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/posts\/4988\/revisions\/7958"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/media\/6552"}],"wp:attachment":[{"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/media?parent=4988"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/categories?post=4988"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/geko.cloud\/es\/wp-json\/wp\/v2\/tags?post=4988"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}