Con el complemento de política de Azure habilitado (según la política de la organización), no podemos crear contenedores privilegiados en AKS, Azure Kubernetes.
Nuestra aplicación está configurada en el contexto de seguridad como se muestra a continuación.
securityContext:
allowPrivilegeEscalation: false
runAsNonRoot: true
runAsUser: 999
Entonces nuestra aplicación puede crear sin acceso privilegiado. Pero, cuando se vincula con el cónsul (a través de anotaciones), los contenedores de inicio del cónsul no se crean.
Warning FailedCreate 6s (x15 over 90s) replicaset-controller Error creating: admission webhook "validation.gatekeeper.sh" denied the request: [azurepolicy-psp-container-no-privilege-esc-30132221bc21e5b724da] Privilege escalation container is not allowed: envoy-sidecar
[azurepolicy-psp-container-no-privilege-esc-30132221bc21e5b724da] Privilege escalation container is not allowed: consul-sidecar
[azurepolicy-psp-container-no-privilege-esc-30132221bc21e5b724da] Privilege escalation container is not allowed: consul-connect-inject-init
Respuesta1
De la forma en que funciona la política de Azure para Kubernetes, es necesario declarar explícitamente para cada contenedor el allowPrivilegeEscalation
valor establecido en falso. No basta con que el contenedor no lo requiera, esto debe estar establecido en el manifiesto.
Por lo tanto, debe modificar la implementación de su consola para asegurarse de que esté configurada en los módulos laterales. No estoy muy familiarizado con Consul, pero si se está implementando con Helm, eche un vistazo a las opciones en el archivo de valores para ver si puede configurar esto.