Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado.

Esta es documentación inédita para Admission Controller 1.34-dev.

Gestionando SUSE Security Admission Controller con Rancher Fleet

Puedes gestionar los gráficos Helm de SUSE Security Admission Controller, como otros gráficos Helm, con Rancher Fleet. Rancher Fleet utiliza CRDs de Kubernetes para definir un enfoque GitOps para gestionar clústeres de Kubernetes. Esto se hace definiendo Fleet Bundles.

Instalación

Los gráficos de Admission Controller son gráficos estándar, dependen transitivamente unos de otros:

kubewarden-crdskubewarden-controllerkubewarden-defaults

Consulta la documentación de inicio rápido para más información.

Usando Rancher Fleet, puedes codificar las dependencias del gráfico utilizando dependsOn en el archivo fleet.yaml.

Puedes ver errores transitorios hasta que los gráficos estén listos, como:

ErrApplied(1) [Cluster fleet-local/local: dependent bundle(s) are not ready:
[kubewarden-example-helm-kubewarden-controller]]

Estos errores no indican un problema, y una vez que los gráficos hayan finalizado su ampliación, ya no aparecen.

Eliminando

Al eliminar el GitRepo, todos los 3 gráficos de Admission Controller se eliminan a la vez. Esto significa que el gráfico kubewarden-crds se elimina.

Admission Controller utiliza un trabajo de hook de Helm pre-delete en el gráfico kubewarden-controller que elimina el PolicyServer por defecto. Este gancho pre-eliminar es necesario para liberar los webhooks de las políticas antes de eliminar el PolicyServer. Esto es cierto para cualquier Motor de Políticas. Si no, el clúster puede tener webhooks para políticas que ya no existen, por lo que se rechaza todo y se queda en un estado fallido.

Eliminar el GitRepo, y por lo tanto el gráfico kubewarden-crds, al mismo tiempo que el gráfico kubewarden-controller, hace que falle el trabajo del hook pre-delete. Significa que la eliminación está incompleta, dejando 'escombros' en el clúster.

Desinstalar CRDs automáticamente no es normalmente soportado por ninguna herramienta, y Rancher Fleet no es una excepción.

Para realizar una eliminación correcta, asegúrate de primero eliminar el Bundle de kubewarden-defaults del clúster. Haz esto comprometiendo esos cambios en el repositorio que contiene la configuración de Fleet y luego espera hasta que se aplique. Luego elimina kubewarden-controller de la misma manera, y por último, elimina kubewarden-crds.

Otra opción es añadir 2 GitRepos, uno solo para los CRDs, y otro para el resto de los gráficos Admission Controller. Esto te permite eliminar primero los gráficos Admission Controller y los CRDs Admission Controller al final.

Ejemplo

Para un ejemplo de definiciones de Fleet Bundles, consulta github.com/kubewarden/fleet-example.