Gestión de configuraciones de GitOps
Crea una configuración para implementar aplicaciones desde tu repositorio GitHub o GitLab en tus clústeres.
Satellite Config vuelve a aplicar la configuración actual cada 5 minutos, independientemente de si se ha realizado correctamente o no. Si se realiza alguna actualización en la configuración del clúster, por ejemplo, mediante kubectl edit,
Satellite, Config actualizará la configuración para que coincida con lo definido en el repositorio GitHub o GitLab.
Creación de configuraciones de Satellite
Con Satellite Config, puede crear una configuración para especificar qué recursos de Kubernetes desea desplegar en un grupo de clústeres de Red Hat OpenShift on IBM Cloud que se ejecutan en la ubicación de Satellite o en IBM Cloud.
Antes de empezar
- Asegúrese de que tiene los permisos necesarios y que la configuración de Satellite puede acceder a los clústeres. Puede obtener información adicional consultando Comprobación de los permisos de usuario.
- Revise los conceptos clave para Satellite Config.
- Si desea utilizar un repositorio privado, debe crear un secreto en el clúster de destino que contiene una señal de acceso personal con al menos acceso de lectura al repositorio privado.
Creación de una clave secreta para utilizar un repositorio privado
Para conectarte a repositorios privados, debes crear un token de acceso personal de Git y aplicarlo a tus clústeres.
-
Cree una señal de Github o Gitlab.
- Para Github, cree una señal de acceso personal. Cuando cree la señal,
otorgue el ámbito
repopara que pueda leer de los repositorios privados. También puede crear un usuario de máquina y enlazar la señal de acceso personal con el usuario de máquina. - Para Gitlab, cree una señal personal o cree una señal de despliegue.
- Para Github, cree una señal de acceso personal. Cuando cree la señal,
otorgue el ámbito
-
Codifica el token en base64.
printf "TOKEN_FROM_GITHUB_OR_GITLAB" | base64 -
Para cada clúster que desee utilizar, inicie sesión en el clúster y cree un secreto denominado
razee-giten el espacio de nombresrazeedeployaplicando el siguiente archivo YAML:apiVersion: v1 data: token: [BASE64_ENCODED_TOKEN_FROM_GITHUB_OR_GITLAB] kind: Secret metadata: name: razee-git namespace: razeedeploy type: OpaqueSolo puedes tener un secreto entre los repositorios GitHub y GitLab.
Creación de configuraciones de Satellite desde la consola
Para desplegar una app de ejemplo, consulte Despliegue de recursos de Kubernetes en clústeres con Satellite Config.
Para crear la configuración personalizada, utilice la interfaz de usuario de Satellite y siga estos pasos.
-
Inicie sesión en la IU de configuración deSatellite con sus credenciales de IBM Cloud.
-
Pulse Crear configuración.
-
En la página Examinar plantillas, seleccione la plantilla GitOps.
-
En la página Configuración, especifique el nombre de configuración y el proveedor.
Campo Descripción Nombre de la configuración Introduce el nombre de la configuración de « Satellite ». Proveedor Selecciona el proveedor remoto para las configuraciones de « Satellite », que almacena las definiciones de los recursos de « Kubernetes » que se van a implementar en tus clústeres. Las opciones son GitHubyGitLab.
- En la página «Suscripción», especifica tu repositorio URL, la visibilidad del repositorio, Git los detalles de la referencia, la ruta a tu archivo o directorio y el grupo de clústeres en el que deseas realizar la implementación.
Campo Descripción Repositorio URL Introduce el repositorio remoto que se va a utilizar para esta suscripción a Satellite. Visibilidad del repositorio Seleccione si este repositorio es público o privado. Tipo de referencia de « Git » Selecciona el tipo de referencia de « Git » que se va a utilizar para esta suscripción a « Satellite ». Los valores válidos son Branch,Tag,CommityRelease.Nombre de la rama/etiqueta/comit/versión Introduce la referencia Git que se va a utilizar para esta suscripción Satellite. Ruta Introduce la ruta a los archivos del repositorio remoto que se utilizarán para esta suscripción a Satellite. Nombre de la suscripción Introduce un nombre para tu suscripción a « Satellite ». El nombre de branch/tag/commit/release se rellena automáticamente como nombre de suscripción de forma predeterminada. Grupo de clústeres Introduce el nombre del grupo de clústeres en el que deseas implementar tus recursos de Kubernetes.
- En la página Resumen, confirme que la información visualizada es correcta y, a continuación, pulse Completar.
Creación de configuraciones de Satellite desde la CLI
Utiliza el complemento de la interfaz de línea de comandos (CLI) para comandos de Satellite con el fin de crear una configuración.
Para crear la configuración:
-
Configure los clústeres para utilizarlos con la configuración de Satellite. Esta configuración incluye la creación de un grupo de clústeres y la concesión de acceso a la configuración de Satellite a tus clústeres.
-
Crea una configuración de « Satellite ».
ibmcloud sat config create --name CONFIG_NAME [--provider <provider>] [-q]Descripción de los componentes de este mandato Componente Descripción --name <config_name>Especifique el nombre de la configuración de Satellite. --provider <provider>Especifique el proveedor remoto para las configuraciones de Satellite, que almacena las definiciones de los recursos de Kubernetes que se van a desplegar en los clústeres. Los valores válidos son githubygitlab.-qNo mostrar el mensaje del día ni los recordatorios de actualización. Salida de ejemplo
Creating configuration... OK Configuration <config_name> was successfully created with ID 116fffde-0835-467c-8987-67dd42e4e393. -
Cree una Suscripción para el grupo de clústeres en la configuración de Satellite.
ibmcloud sat subscription create --name <subscription_name> --group <cluster_group_name> --config <config_name_or_ID> --repository <repository_value> --gitref-type <type_value> --gitref <gitref_value> --path <path_value> [-q]Descripción de los componentes de este mandato Componente Descripción --name <subscription_name>Especifique un nombre para la suscripción de Satellite. --group <cluster_group_name>Especifique el nombre del grupo de clústeres en el que desea desplegar los recursos de Kubernetes. --config <config_name_or_ID>Especifique el nombre o el ID de la configuración de Satellite que ha creado anteriormente. --repository <repository_value>Especifique el repositorio remoto que se utilizará para esta suscripción de Satellite. --gitref-type <type_value>Especifique el tipo de referencia Git que se utilizará para esta suscripción de Satellite. Los valores válidos son branch,commit,tagyrelease.--gitref <gitref_value>Especifique la referencia Git que se utilizará para esta suscripción de Satellite. --path <path_value>Especifique la vía de acceso a los archivos en el repositorio remoto para utilizar para esta suscripción de Satellite. -qNo mostrar el mensaje del día ni los recordatorios de actualización. Salida de ejemplo
Creating subscription... OK Subscription <subscription_name> was successfully created with ID f6114bd5-f71e-4335-b034-ca45fa3cab81. -
Siga el paso 5 del tema sobre Creación de configuraciones de Satellite desde la consola para revisar el estado de despliegue de los recursos de Kubernetes.
Actualización de la configuración de Satellite
Para actualizar la configuración, puede realizar actualizaciones en el nivel de suscripción. Las acciones que debe realizar dependen del tipo de actualizaciones que desee realizar.
- Para desplegar una nueva versión de la aplicación en el mismo grupo de clústeres, actualice los archivos en el repositorio GitHub o GitLab definido en la configuración y confirme los cambios.
- Para cambiar las propiedades del repositorio de origen, puede editar la suscripción y actualizar los campos con nuevos detalles.
- Para asociar varios repositorios con la misma configuración, añadir un nuevo repositorio de origen o añadir nuevos detalles de referencia Git para el mismo repositorio de origen, puede crear nuevas suscripciones. Haga clic en Crear suscripción y complete los datos de su nueva suscripción. Si desea crear una nueva suscripción que solo tenga algunos detalles modificados, puede utilizar la opción Duplicar para rellenar automáticamente todos los campos con propiedades de la suscripción existente y modificar los campos que desea cambiar.
- Para suprimir una suscripción, utilice la opción Eliminar.
Actualizar tu suscripción desde la consola
Utiliza la consola « Satellite » para actualizar tu configuración.
-
Inicie sesión en la IU de configuración deSatellite con sus credenciales de IBM Cloud.
-
Selecciona la configuración que deseas actualizar.
-
Pulse el menú de desbordamiento en la línea de la suscripción que desea actualizar y seleccione Editar.
-
En la página Editar suscripción, realice los cambios y pulse Guardar.
Actualización de Satellite Config con la CLI
Utiliza el complemento de la línea de comandos para comandos de Satellite con el fin de actualizar tu configuración. Si desea actualizar la configuración para utilizar un archivo nuevo, puede actualizar la suscripción para que apunte al archivo nuevo.
-
Actualice la Suscripción para que el grupo de clústeres utilice la nueva configuración de Satellite en el repositorio remoto. Sólo necesita especificar los parámetros que desea cambiar.
ibmcloud sat subscription update --subscription <subscription_name> [--name <new_subscription_name>] [--group <cluster_group_name>] [--repository <repository_value>] [--gitref-type <type_value>] [--gitref <gitref_value>] [--path <path_value>] [-f] [-q]Descripción de los componentes de este mandato Componente Descripción --subscription <subscription_value>Introduce el nombre o el ID de la suscripción que deseas actualizar. --name <new_subscription_name>Introduce el nuevo nombre de la suscripción. --group <cluster_group_name>Especifique el nombre del grupo de clústeres en el que desea desplegar los recursos de Kubernetes. --repository <repository_value>Especifique el repositorio remoto que se utilizará para esta suscripción de Satellite. --gitref-type <type_value>Especifique el tipo de referencia Git que se utilizará para esta suscripción de Satellite. Los valores válidos son branch,commit,tagyrelease.--gitref <gitref_value>Especifique la referencia Git que se utilizará para esta suscripción de Satellite. --path <path_value>Especifique la vía de acceso a los archivos en el repositorio remoto para utilizar para esta suscripción de Satellite. -fForzar que el mandato se ejecute sin solicitudes de usuario. -qNo mostrar el mensaje del día ni los recordatorios de actualización. Salida de ejemplo
Are you sure you want to update the subscription <subscription_name>? [y/N]y OK Subscription f6114bd5-f71e-4335-b034-ca45fa3cab81 was successfully updated. -
Siga el paso 5 del tema sobre Creación de configuraciones de Satellite desde la consola para revisar el estado de despliegue de los recursos de Kubernetes.