Os contêineres Consul estão sendo criados como contêineres privilegiados, como mudar isso?

Os contêineres Consul estão sendo criados como contêineres privilegiados, como mudar isso?

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 allowPrivilegeEscalationvalor 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.

informação relacionada