Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2024-11-28 GMT+08:00

Acesso de um contêiner

Cenário

Se você encontrar problemas inesperados ao usar um contêiner, poderá efetuar logon no contêiner para depurá-lo.

Fazer logon em um contêiner usando o CloudShell

  • O CloudShell é implementado com base no VPC Endpoint (VPCEP). Para usar o kubectl para acessar um cluster, configure o grupo de segurança (Cluster name-cce-control-Random number) no nó mestre do cluster para permitir o acesso à porta 5443. Por padrão, a porta 5443 permite acesso de todos os blocos CIDR. Se você tiver grupos de segurança reforçados e nenhum cluster não puder ser acessado no CloudShell, verifique se a porta 5443 permite acesso de 198.19.0.0/16.
  • Atualmente, você pode usar CloudShell para fazer logon em contêineres apenas nas regiões CN North-Beijing1, CN North-Beijing4, CN East-Shanghai1, CN East-Shanghai2, CN South-Guangzhou e CN North-Ulanqab1.

Você pode encontrar a entrada de acesso na lista de pods de carga de trabalho, conforme mostrado na figura a seguir.

Figura 1 Acessar um contêiner

Depois de clicar em Remote Login, a seguinte caixa de diálogo é exibida. Selecione o contêiner que deseja acessar e o comando e clique em OK.

O CloudShell é iniciado, o kubectl é inicializado e o comando kubectl exec é executado automaticamente.

Aguarde de 5 a 10 segundos até que o comando kubectl exec seja executado automaticamente.

Fazer logon em um contêiner usando o kubectl

  1. Use o kubectl para se conectar ao cluster. Para mais detalhes, consulte Conexão a um cluster usando o kubectl.
  2. Execute o seguinte comando para exibir o pod criado:

    kubectl get pod
    A saída de exemplo é a seguinte:
    NAME                               READY   STATUS    RESTARTS       AGE
    nginx-59d89cb66f-mhljr             1/1     Running   0              11m

  3. Consulte o nome do contêiner no pod.

    kubectl get po nginx-59d89cb66f-mhljr -o jsonpath='{range .spec.containers[*]}{.name}{end}{"\n"}'
    A saída de exemplo é a seguinte:
    container-1

  4. Execute o seguinte comando para efetuar logon no contêiner container-1 no pod nginx-59d89cb66f-mhljr:

    kubectl exec -it nginx-59d89cb66f-mhljr -c container-1 -- /bin/sh

  5. Para sair do contêiner, execute o comando exit.