Por que o comando oc debug falha com um container is unable to start error?
Ao executar o comando oc debug em um cluster privado, você verá uma mensagem de erro semelhante ao exemplo a seguir.
oc debug node/<node-name>
Starting pod/1024104-debug ...
To use host binaries, run `chroot /host`
warning: Container container-00 is unable to start due to an error: Back-off pulling image "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:7dd7a3a1be7009629c709e6c88a1551d471aba9bf3deb873bc5f4d814675edfe"
O comando oc debug inicia um pod de depuração no nó que você especificar. O pod de depuração usa uma imagem de contêiner público a partir do registro de contêiner quay.io. Em clusters privados sem acesso à internet pública,
seu cluster não consegue extrair a imagem do contêiner de depuração a partir do registro público.
Para resolver este problema, extraia uma imagem de ocp-release a partir do quay.io e envie-a por push para seu registro de imagens privado. Depois, quando você executar o comando oc debug, especifique a imagem
de contêiner privado que deseja usar.
-
Obtenha uma imagem de quay.io que corresponda à versão e à arquitetura de seu cluster. Por exemplo, se você tem um cluster
4.7.19, extraia a imagemquay.io/openshift-release-dev/ocp-release:4.7.19-x86_64. Observe que é preciso ter uma conta Red Hat e permissões para extrair imagens.docker pull quay.io/openshift-release-dev/ocp-release:4.7.19-x86_64 -
Identifique e extraia a imagem para o registro de seu contêiner privado.
-
Tente novamente o comando
oc debugcom a opção--image=icr.io.oc debug node/<node-name> --image=icr.io/<namespace>/<image>:<tag>