Automatice la implementación de Kubernetes usando ArgoCD

Automatice la implementación de Kubernetes usando ArgoCD

Tenemos un repositorio de GitHub que contiene todos los archivos yaml del clúster de Kubernetes. Cuando queremos actualizar una implementación, simplemente editamos el yaml y lo enviamos a GitHub.

Desafortunadamente, entonces tenemos quekubectl apply -f file.yaml

¿Cómo se podría automatizar la implementación utilizando algo como ArgoCD o quizás otra herramienta de CD?

Esperamos tener un activador de flujo de trabajo que aplique automáticamente los cambios del archivo YAML al clúster una vez enviados a GitHub.

El problema al que nos enfrentamos es que GitHub Repo no es exclusivo de una implementación específica y, como se mencionó anteriormente, contiene todos los archivos YAML de todo el clúster.

Actualmente, creemos que la única opción sería que kubectl aplique todo el repositorio de GitHub, pero ¿esto no tiene sentido si solo ha cambiado un archivo?

Respuesta1

Yo investigaríaFlujo. Puede apuntar a Flux a la raíz de su repositorio (o a un directorio específico) y este se encargará de implementar los manifiestos que haya definido. También detecta cambios, por lo que si envió un cambio a su repositorio, Flux implementará los cambios.

ArgoCD también funcionaría. Pero como mencionó que el repositorio no es exclusivo de una implementación específica y contiene manifiestos para todo el clúster, Flux podría funcionar mejor en este caso.

Lo mejor es probar ambas o cualquier otra herramienta y ver cuál funciona mejor para sus flujos de trabajo.

información relacionada