Integración de GitOps
La integración de DataPower® GitOps ayuda a automatizar la gestión de la configuración mediante el control de versiones. Esta integración da soporte a prácticas y experiencias de creación de GitOps estándar del sector.
En DataPower Gateway, el desarrollo de servicios y la gestión de la configuración son operaciones manuales. Un administrador o desarrollador debe iniciar sesión en una interfaz para crear objetos o cambiar objetos existentes. Antes de la integración de GitOps , DataPower no proporcionaba herramientas para automatizar la gestión de la configuración en varios sistemas utilizando el control de versiones. Con la integración de GitOps , puede llenar la configuración de DataPower desde un sistema de control de versiones como Git y desplegar de forma declarativa la configuración de DataPower y los archivos en varios sistemas.
GitOps convierte la configuración persistente en un dominio a JSON y opera en el documento utilizando transformaciones y consultas JSONata. DataPower ejecuta todas las operaciones y plantillas de Git con los mandatos globales gitops-read, gitops-remove-template, gitops-writey gitops-write-template .
- No puede utilizar GitOps en el dominio
default. - No puede utilizar GitOps para añadir, configurar o actualizar material criptográfico como, por ejemplo, claves y certificados. Continúe utilizando las prestaciones de DataPower existentes. Nunca almacene material criptográfico en el control de versiones Git .
- No puede utilizar Git
rebase,mergeu operación similar que pueda dar lugar a la necesidad de resolución de conflictos. - Si una operación de lectura o grabación sobrescribe o entra en conflicto con cambios en el destino, la operación falla.
Repositorio Git
/datapower
├── domain1
│ ├── config
│ └── local
├── domain2
│ ├── config
│ └── local
└── templates
El directorio datapower debe existir en la raíz del repositorio Git . En el directorio datapower , es posible que el directorio templates exista y contenga configuraciones de plantilla. Cualquier otro directorio se trata como un dominio DataPower .
Sistema de archivos DataPower
temporary:///
gitops/
config/
in/ # On gitops-read, location to put configuration. Watched by configuration sequence.
out/ # On gitops-write, location to put templated configuration to be committed to Git.
staging/ # Location to put the source from Git to resolve any templated fields.
templates/
in/ # Location to put templates from Git. Watched by configuration sequence.
out/ # On gitops-write-template, location to put templates to be committed to Git.
Lectura de GitOps (gitops-read)
La acción de lectura GitOps extrae la nueva configuración de Git basándose en el objeto GitOps configurado. La configuración del dominio de origen en JSON y las plantillas configuradas se extraen del repositorio Git con el identificador de confirmación en el objeto GitOps . El identificador puede ser una rama, un hash de confirmación o una etiqueta. A continuación, se resuelven los valores de plantilla del JSON de entrada. La configuración ejecutable se coloca en la ubicación que una secuencia de configuración rastrea para que se confirme y persista en la configuración de dominio.
GitOps eliminar plantilla (gitops-remove-template)
La acción de plantilla remota GitOps crea una confirmación para eliminar una sola plantilla y la envía al repositorio Git . Cuando se elimina, la plantilla ya no se puede configurar como una plantilla remota por ningún otro dominio de DataPower . Las confirmaciones creadas por DataPower utilizan el usuario Git y el correo electrónico en el objeto GitOps .
Para escribir una plantilla en el repositorio Git , utilice la plantilla de escritura GitOps (gitops-write-template).
Este objeto de acción sólo está disponible cuando GitOps está configurado en modalidad de lectura/escritura.
Escritura de GitOps (gitops-write)
La acción de escritura GitOps toma la configuración persistente del dominio, la plantilla con las políticas de plantilla en la instancia de GitOps y escribe en el repositorio Git . Las operaciones de confirmación creadas por DataPower utilizan el usuario Git y el correo electrónico en el objeto GitOps .
Esta acción sólo está disponible cuando GitOps está configurado en modalidad de lectura/escritura.
Plantilla de escritura de GitOps (gitops-write-template)
La acción de plantilla de escritura GitOps crea una confirmación para escribir una sola plantilla y la envía al repositorio Git . Cuando se escribe, la plantilla se puede configurar como una plantilla remota por cualquier otro dominio de DataPower . De forma similar a gitops-write, las confirmaciones creadas por DataPower utilizan el usuario Git y el correo electrónico en el objeto GitOps .
Para eliminar una plantilla del repositorio Git , utilice GitOps para eliminar la plantilla (gitops-remove-template).
Este objeto de acción sólo está disponible cuando GitOps está configurado en modalidad de lectura/escritura.