Com o complemento de política do Azure habilitado (de acordo com a política da organização), não podemos criar contêineres privilegiados nos aks, Azure Kubernetes.
Nosso aplicativo está definido para o contexto de segurança conforme abaixo.
securityContext:
allowPrivilegeEscalation: false
runAsNonRoot: true
runAsUser: 999
Assim, nosso aplicativo pode criar sem acesso privilegiado. Mas, quando vinculados ao cônsul (por meio de anotações), os contêineres init do cônsul não conseguem ser criados.
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
Responder1
Da forma como funciona a política do Azure para Kubernetes, você precisa declarar explicitamente para cada contêiner o allowPrivilegeEscalation
valor definido como falso. Não basta que o container não exija isso, isso deve estar definido no manifesto.
Portanto, você precisa alterar a implantação do console para garantir que isso esteja sendo definido nos pods secundários. Não estou muito familiarizado com o Consul, mas se ele estiver sendo implantado com Helm, dê uma olhada nas opções no arquivo de valores para ver se você pode definir isso.