This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Instale as ferramentas

Configure as ferramentas do Kubernetes no seu computador.

kubectl

A ferramenta de linha de comando do Kubernetes, kubectl, permite que você execute comandos nos clusters Kubernetes. Você pode usar o kubectl para instalar aplicações, inspecionar e gerenciar recursos de cluster e visualizar os logs. Para obter mais informações, incluindo uma lista completa de operações kubectl, consulte a documentação de referência kubectl.

Kubectl é instalável em uma variedade de plataformas tais como Linux, macOS e Windows. Encontre seu sistema operacional preferido abaixo.

kind

O kind permite que você execute o Kubernetes no seu computador local. Esta ferramenta requer que você tenha o Docker instalado e configurado.

A página de Início Rápido mostra o que você precisa fazer para começar a trabalhar com o kind.

Acesse o guia de início rápido do kind

minikube

Assim como o kind, o minikube é uma ferramenta que permite executar o Kubernetes localmente. O minikube executa um cluster Kubernetes local com tudo-em-um ou com vários nós no seu computador pessoal (incluindo PCs Windows, macOS e Linux) para que você possa experimentar o Kubernetes ou para o trabalho de desenvolvimento diário.

Você pode seguir o guia de início oficial se o seu foco é instalar a ferramenta.

Acesse o guia de início

Depois de instalar o minikube, você pode usá-lo para executar uma aplicação exemplo.

kubeadm

Você pode usar a ferramenta kubeadm para criar e gerenciar clusters Kubernetes. Ela executa as ações necessárias para obter um cluster mínimo viável e seguro em funcionamento de maneira amigável ao usuário.

Instalando a ferramenta kubeadm mostra como instalar o kubeadm. Uma vez instalado, você pode usá-lo para criar um cluster.

Acesse o guia instalando a ferramenta kubeadm

1 - Instalar e configurar o kubectl no macOS

Antes de você começar

Você deve usar uma versão do kubectl que esteja próxima da versão do seu cluster. Por exemplo, um cliente v1.32 pode se comunicar com as versões v1.31, v1.32 e v1.33 da camada de gerenciamento. Usar a versão compatível mais recente do kubectl ajuda a evitar problemas inesperados.

Instalando o kubectl no macOS

Existem os seguintes métodos para instalar o kubectl no macOS:

Instalar o kubectl com o curl no macOS

  1. Baixe a última versão:

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl"
       

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl"
       
  2. Valide o binário (opcional).

    Baixe o arquivo de checksum do kubectl:

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl.sha256"
       

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl.sha256"
       

    Valide o binário do kubectl com o arquivo de checksum:

    echo "$(cat kubectl.sha256)  kubectl" | shasum -a 256 --check
    

    Se for válido, a saída será:

    kubectl: OK
    

    Se houver falha na validação, o shasum vai retornar uma saída diferente de zero semelhante a:

    kubectl: FAILED
    shasum: WARNING: 1 computed checksum did NOT match
    
  3. Torne o binário do kubectl executável.

    chmod +x ./kubectl
    
  4. Mova o binário do kubectl para um diretório que esteja no PATH do seu sistema.

    sudo mv ./kubectl /usr/local/bin/kubectl
    sudo chown root: /usr/local/bin/kubectl
    
  5. Teste para validar que a versão instalada está atualizada:

    kubectl version --client
    

    Ou se preferir, use o seguinte comando para uma visão mais detalhada sobre a versão do Kubernetes:

    kubectl version --client --output=yaml
    
  6. Depois de instalar e validar o kubectl, delete o arquivo de checksum:

    rm kubectl.sha256
    

Instalar com Homebrew no macOS

Se você está no macOS e usando o gerenciador de pacote Homebrew, você pode instalar o kubectl usando o Homebrew.

  1. Execute o comando de instalação:

    brew install kubectl
    

    ou

    brew install kubernetes-cli
    
  2. Teste para validar se a versão instalada está atualizada:

    kubectl version --client
    

Instalar com Macports no macOS

Se você está no macOS, usando o gerenciador de pacotes Macports, você pode instalar o kubectl utilizando o Macports.

  1. Execute o comando de instalação:

    sudo port selfupdate
    sudo port install kubectl
    
  2. Teste para validar se a versão instalada está atualizada:

    kubectl version --client
    

Verificar a configuração do kubectl

Para que o kubectl encontre e acesse um cluster Kubernetes, ele precisa de um arquivo kubeconfig, que é criado automaticamente quando você cria um cluster usando kube-up.sh ou instala com sucesso um cluster Minikube. Por padrão, a configuração kubectl está localizada em ~/.kube/config.

Verifique se o kubectl está configurado corretamente obtendo o estado do cluster:

kubectl cluster-info

Se você receber uma URL de resposta, o kubectl está configurado corretamente para acessar seu cluster.

Se você receber uma mensagem semelhante à seguinte, o kubectl não está configurado corretamente ou não consegue se conectar a um cluster Kubernetes.

The connection to the server <server-name:port> was refused - did you specify the right host or port?

Por exemplo, se você pretende executar um cluster Kubernetes no seu laptop (localmente), precisará que uma ferramenta como o Minikube seja instalada primeiro, para em seguida executar novamente os comandos indicados acima.

Se o kubectl cluster-info retornar a URL de resposta, mas você não conseguir acessar seu cluster, para verificar se ele está configurado corretamente, use:

kubectl cluster-info dump

Configurações e plugins opcionais do kubectl

Ative o autocompletar no shell

O kubectl oferece recursos de autocompletar para Bash, Zsh, Fish e PowerShell, o que pode economizar muita digitação.

Abaixo estão os procedimentos para configurar o autocompletar para Bash, Fish e Zsh.

Introdução

O script de autocompletar do kubectl para Bash pode ser gerado com o comando kubectl completion bash. O script permite habilitar o autocompletar do kubectl no seu shell.

No entanto, o script autocompletar depende do bash-completion, o que significa que você precisa instalar este software primeiro.

Atualizando Bash

As instruções abaixo sugerem que você esteja utilizando o Bash 4.1+. Você pode verificar a versão do seu Bash com o comando:

echo $BASH_VERSION

Se a versão do Bash for muito antiga, você pode instalar ou atualizar utilizando o Homebrew:

brew install bash

Recarregue seu shell e verifique se a versão desejada foi instalada e está em uso:

echo $BASH_VERSION $SHELL

O Homebrew normalmente instala os pacotes em /usr/local/bin/bash.

Instalar bash-completar

Você pode testar se o bash-completion v2 está instalado, utilizando type _init_completion. Se não, você pode instalar utilizando o Homebrew:

brew install bash-completion@2

Como indicado na saída deste comando, adicione a seguinte linha em seu arquivo ~/.bash_profile:

brew_etc="$(brew --prefix)/etc" && [[ -r "${brew_etc}/profile.d/bash_completion.sh" ]] && . "${brew_etc}/profile.d/bash_completion.sh"

Recarregue seu shell e verifique que o bash-completion v2 está instalado corretamente utilizando type _init_completion.

Habilitar autocompletar do kubectl

Agora você precisa garantir que o script de autocompletar do kubectl seja carregado em todas as suas sessões de shell. Existem várias maneiras de fazer isso:

  • Carregue o script de autocompletar no seu arquivo ~/.bash_profile:

    echo 'source <(kubectl completion bash)' >>~/.bash_profile
    
  • Adicione o script de autocompletar ao diretório /usr/local/etc/bash_completion.d:

    kubectl completion bash >/usr/local/etc/bash_completion.d/kubectl
    
  • Se você tiver um alias para o kubectl, pode estender o autocompletar do shell para funcionar com esse alias:

    echo 'alias k=kubectl' >>~/.bash_profile
    echo 'complete -o default -F __start_kubectl k' >>~/.bash_profile
    
  • Se você tiver instalado o kubectl com o Homebrew(conforme explicado aqui), então o script de autocompletar do kubectl deverá estar pronto em /usr/local/etc/bash_completion.d/kubectl. Neste caso, você não precisa fazer mais nada.

Em todos os casos, após recarregar seu shell, o autocompletar do kubectl deve estar funcionando.

O script de autocompletar do kubectl para Fish pode ser gerado com o comando kubectl completion fish. O script permite habilitar o autocompletar do kubectl no seu shell.

Para fazer isso em todas as suas sessões do shell, adicione a seguinte linha ao seu arquivo ~/.config/fish/config.fish:

kubectl completion fish | source

Depois de recarregar seu shell, o autocompletar do kubectl deve estar funcionando.

O script de autocompletar do kubectl para Zsh pode ser gerado com o comando kubectl completion zsh. Este script habilita o autocompletar do kubectl no seu shell.

Para fazer isso em todas as suas sessões de shell, adicione a seguinte linha no arquivo ~/.zshrc:

source <(kubectl completion zsh)

Se você tiver um alias para kubectl, o autocompletar funcionará automaticamente com ele.

Depois de recarregar seu shell, o autocompletar do kubectl deve estar funcionando.

Se você ver um erro similar a 2: command not found: compdef, adicione o seguinte bloco ao início do seu arquivo ~/.zshrc:

autoload -Uz compinit
compinit

Instalar kubectl convert plugin

Um plugin para a ferramenta Kubernetes de linha de comando kubectl, que permite converter manifestos entre diferentes versões da API. Isso pode ser particularmente útil para migrar manifestos para uma versão não obsoleta com a versão mais recente da API Kubernetes. Para mais informações, visite Migrar para APIs não obsoletas

  1. Faça download da versão mais recente com o comando:

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl-convert"
       

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl-convert"
       
  2. Valide o binário (opcional).

    Faça download do arquivo checksum de verificação do kubectl-convert:

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl-convert.sha256"
       

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl-convert.sha256"
       

    Valide o binário kubectl-convert com o arquivo de verificação:

    echo "$(cat kubectl-convert.sha256)  kubectl-convert" | shasum -a 256 --check
    

    Se for válido, a saída será:

    kubectl-convert: OK
    

    Se a verificação falhar, o sha256 exibirá o status diferente de zero e a saída será semelhante a:

    kubectl-convert: FAILED
    shasum: WARNING: 1 computed checksum did NOT match
    
  3. Torne o binário do kubectl-convert um executável.

    chmod +x ./kubectl-convert
    
  4. Mova o binário do kubectl-convert para o PATH do sistema.

    sudo mv ./kubectl-convert /usr/local/bin/kubectl-convert
    sudo chown root: /usr/local/bin/kubectl-convert
    
  5. Verifique se o plugin foi instalado com sucesso.

    kubectl convert --help
    

    Se você não encontrar nenhum erro, isso quer dizer que o plugin foi instalado com sucesso.

  6. Após instalar o plugin, limpe os arquivos de instalação:

    rm kubectl-convert kubectl-convert.sha256
    

Desinstalar o kubectl no macOS

Dependendo da forma que você instalou o kubectl, use um dos métodos abaixo.

Desinstalar o kubectl usando a linha de comando

  1. Localize o binário do kubectl no seu sistema:

    which kubectl
    
  2. Remova o binário kubectl:

    sudo rm <path>
    

    Substitua <path> com o PATH do binário kubectl conforme os passos anteriores. Por exemplo, sudo rm /usr/local/bin/kubectl.

Desinstalar o kubectl usando o homebrew

Se você instalou o kubectl utilizando Homebrew, execute o comando a seguir:

brew remove kubectl

Próximos passos

2 - Instale e configure o kubectl no Linux

Antes de você começar

Você deve usar uma versão do kubectl que esteja próxima da versão do seu cluster. Por exemplo, um cliente v1.32 pode se comunicar com as versões v1.31, v1.32 e v1.33 da camada de gerenciamento. Usar a versão compatível mais recente do kubectl ajuda a evitar problemas inesperados.

Instale o kubectl no Linux

Existem os seguintes métodos para instalar o kubectl no Linux:

Instale o binário kubectl no Linux usando o curl

  1. Faça download da versão mais recente com o comando:

    
        curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
    	

    
    	curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl"
    	
  2. Valide o binário (opcional)

    Faça download do arquivo checksum de verificação do kubectl:

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"
       

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl.sha256"
       

    Valide o binário kubectl em relação ao arquivo de verificação:

    echo "$(cat kubectl.sha256)  kubectl" | sha256sum --check
    

    Se válido, a saída será:

    kubectl: OK
    

    Se a verificação falhar, o sha256 exibirá o status diferente de zero e a saída será semelhante a:

    kubectl: FAILED
    sha256sum: WARNING: 1 computed checksum did NOT match
    
  3. Instale o kubectl

    sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
    
  4. Teste para garantir que a versão que você instalou esteja atualizada:

    kubectl version --client
    

    Ou use isso para visualizar mais detalhes da versão:

    kubectl version --client --output=yaml    
    

Instale usando o gerenciador de pacotes nativo

  1. Atualize o índice do apt e instale os pacotes necessários para utilizar o repositório apt do Kubernetes:

    sudo apt-get update
    # apt-transport-https pode ser um pacote simbólico; se for o caso, você pode ignorá-lo
    sudo apt-get install -y apt-transport-https ca-certificates curl gnupg
    
  2. Faça download da chave de assinatura pública para os repositórios de pacote do Kubernetes. A mesma chave de assinatura é usada para todos os repositórios, então você pode desconsiderar a versão na URL:

    # Se a pasta `/etc/apt/keyrings` não existir, ela deve ser criada antes do comando curl, leia a nota abaixo.
    # sudo mkdir -p -m 755 /etc/apt/keyrings
    curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.32/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
    sudo chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg # permitir que programas APT sem acesso privilegiado leiam este keyring
    
  1. Adicione o repositório apt do Kubernetes. Se você quiser usar uma versão do Kubernetes diferente de v1.32, substitua v1.32 com a versão menor desejada no comando a seguir:

    # Isto substitui qualquer configuração existente na pasta /etc/apt/sources.list.d/kubernetes.list
    echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.32/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list
    sudo chmod 644 /etc/apt/sources.list.d/kubernetes.list # ajuda ferramentas tais como command-not-found a funcionar corretamente
    
  1. Atualize o índice do apt com o novo repositório e instale o kubectl:

    sudo apt-get update
    sudo apt-get install -y kubectl
    

  1. Adicione o repositório yum do Kubernetes. Se você quiser usar uma versão do Kubernetes diferente de v1.32, substitua v1.32 pela versão menor desejada no comando a seguir.

    # Isto substitui qualquer configuração existente na pasta /etc/yum.repos.d/kubernetes.repo
    cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/
    enabled=1
    gpgcheck=1
    gpgkey=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/repodata/repomd.xml.key
    EOF
    
  1. Instale o kubectl usando yum:

    sudo yum install -y kubectl
    

  1. Adicione o repositório zypper do Kubernetes. Se você quiser instalar uma versão diferente de v1.32, substitua v1.32 pela versão menor desejada no comando a seguir.

    # Isto substitui qualquer configuração existente no arquivo /etc/zypp/repos.d/kubernetes.repo
    cat <<EOF | sudo tee /etc/zypp/repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/
    enabled=1
    gpgcheck=1
    gpgkey=https://pkgs.k8s.io/core:/stable:/v1.32/rpm/repodata/repomd.xml.key
    EOF
    
  1. Atualize o zypper e confirme a adição do novo repositório:

    sudo zypper update
    

    Quando esta mensagem aparecer, pressione 't' ou 'a':

    New repository or package signing key received:
    
    Repository:       Kubernetes
    Key Fingerprint:  1111 2222 3333 4444 5555 6666 7777 8888 9999 AAAA
    Key Name:         isv:kubernetes OBS Project <isv:kubernetes@build.opensuse.org>
    Key Algorithm:    RSA 2048
    Key Created:      Thu 25 Aug 2022 01:21:11 PM -03
    Key Expires:      Sat 02 Nov 2024 01:21:11 PM -03 (expires in 85 days)
    Rpm Name:         gpg-pubkey-9a296436-6307a177
    
    Note: Signing data enables the recipient to verify that no modifications occurred after the data
    were signed. Accepting data with no, wrong or unknown signature can lead to a corrupted system
    and in extreme cases even to a system compromise.
    
    Note: A GPG pubkey is clearly identified by its fingerprint. Do not rely on the key's name. If
    you are not sure whether the presented key is authentic, ask the repository provider or check
    their web site. Many providers maintain a web page showing the fingerprints of the GPG keys they
    are using.
    
    Do you want to reject the key, trust temporarily, or trust always? [r/t/a/?] (r): a
    
  2. Instale o kubectl usando zypper:

    sudo zypper install -y kubectl
    

Instale usando outro gerenciador de pacotes

Se você estiver no Ubuntu ou em outra distribuição Linux que suporte o gerenciador de pacotes snap, o kubectl está disponível como um aplicativo snap.

snap install kubectl --classic
kubectl version --client

Se você estiver no Linux e usando o gerenciador de pacotes Homebrew, o kubectl está disponível para instalação.

brew install kubectl
kubectl version --client

Verifique a configuração kubectl

Para que o kubectl encontre e acesse um cluster Kubernetes, ele precisa de um arquivo kubeconfig, que é criado automaticamente quando você cria um cluster usando kube-up.sh ou instala com sucesso um cluster Minikube. Por padrão, a configuração kubectl está localizada em ~/.kube/config.

Verifique se o kubectl está configurado corretamente obtendo o estado do cluster:

kubectl cluster-info

Se você receber uma URL de resposta, o kubectl está configurado corretamente para acessar seu cluster.

Se você receber uma mensagem semelhante à seguinte, o kubectl não está configurado corretamente ou não consegue se conectar a um cluster Kubernetes.

The connection to the server <server-name:port> was refused - did you specify the right host or port?

Por exemplo, se você pretende executar um cluster Kubernetes no seu laptop (localmente), precisará que uma ferramenta como o Minikube seja instalada primeiro, para em seguida executar novamente os comandos indicados acima.

Se o kubectl cluster-info retornar a URL de resposta, mas você não conseguir acessar seu cluster, para verificar se ele está configurado corretamente, use:

kubectl cluster-info dump

Configurações e plugins opcionais do kubectl

Ative o autocompletar no shell

O kubectl oferece recursos de autocompletar para Bash, Zsh, Fish e PowerShell, o que pode economizar muita digitação.

Abaixo estão os procedimentos para configurar o autocompletar para Bash, Fish e Zsh.

Introdução

O script de autocompletar do kubectl para Bash pode ser gerado com o comando kubectl completion bash. O script permite habilitar o autocompletar do kubectl no seu shell.

No entanto, o script autocompletar depende do bash-completion, o que significa que você precisa instalar este software primeiro (executando type _init_completion você pode testar se tem o bash-completion instalado).

Instale bash-completion

O bash-completion é fornecido por muitos gerenciadores de pacotes (veja aqui). Você pode instalar com apt-get install bash-completion ou yum install bash-completion, etc.

Os comandos acima criam /usr/share/bash-completion/bash_completion, que é o script principal de bash-completion. Dependendo do seu gerenciador de pacotes, você tem que adicionar manualmente ao seu arquivo ~/.bashrc.

Para descobrir, recarregue seu shell e execute type _init_completion. Se o comando for bem-sucedido, já está definido, caso contrário, adicione o seguinte ao seu arquivo ~/.bashrc:

source /usr/share/bash-completion/bash_completion

Recarregue o seu shell e verifique se o bash-completion está instalado corretamente digitando type _init_completion.

Ative o autocompletar do kubectl

Bash

Agora você precisa garantir que o autocompletar do kubectl esteja ativo em todas as suas sessões shell. Existem duas maneiras pelas quais você pode fazer isso:


echo 'source <(kubectl completion bash)' >>~/.bashrc


kubectl completion bash | sudo tee /etc/bash_completion.d/kubectl > /dev/null
sudo chmod a+r /etc/bash_completion.d/kubectl

Se você tiver um alias para kubectl, você pode estender o autocompletar do shell para trabalhar com esse alias:

echo 'alias k=kubectl' >>~/.bashrc
echo 'complete -o default -F __start_kubectl k' >>~/.bashrc

Todas as abordagens são equivalentes. Depois de recarregar seu shell, o autocompletar do kubectl deve estar funcionando. Para ativar o autocompletar do bash na sessão atual do shell, execute exec bash:

exec bash

O script de autocompletar do kubectl para Fish pode ser gerado com o comando kubectl completion fish. O script permite habilitar o autocompletar do kubectl no seu shell.

Para fazer isso em todas as suas sessões do shell, adicione a seguinte linha ao seu arquivo ~/.config/fish/config.fish:

kubectl completion fish | source

Depois de recarregar seu shell, o autocompletar do kubectl deve estar funcionando.

O script de autocompletar do kubectl para Zsh pode ser gerado com o comando kubectl completion zsh. Este script habilita o autocompletar do kubectl no seu shell.

Para fazer isso em todas as suas sessões de shell, adicione a seguinte linha no arquivo ~/.zshrc:

source <(kubectl completion zsh)

Se você tiver um alias para kubectl, o autocompletar funcionará automaticamente com ele.

Depois de recarregar seu shell, o autocompletar do kubectl deve estar funcionando.

Se você ver um erro similar a 2: command not found: compdef, adicione o seguinte bloco ao início do seu arquivo ~/.zshrc:

autoload -Uz compinit
compinit

Instale o plugin kubectl convert

Um plugin para a ferramenta Kubernetes de linha de comando kubectl, que permite converter manifestos entre diferentes versões da API. Isso pode ser particularmente útil para migrar manifestos para uma versão não obsoleta com a versão mais recente da API Kubernetes. Para mais informações, visite Migrar para APIs não obsoletas

  1. Faça download da versão mais recente com o comando:

    
    	curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl-convert"
        

    
    	curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl-convert"
    	
  2. Valide o binário (opcional)

    Faça download do arquivo checksum de verificação do kubectl-convert:

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl-convert.sha256"
       

    
       curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl-convert.sha256"
       

    Valide o binário kubectl-convert com o arquivo de verificação:

    echo "$(cat kubectl-convert.sha256) kubectl-convert" | sha256sum --check
    

    Se válido, a saída será:

    kubectl-convert: OK
    

    Se a verificação falhar, o sha256 exibirá o status diferente de zero e a saída será semelhante a:

    kubectl-convert: FAILED
    sha256sum: WARNING: 1 computed checksum did NOT match
    
  3. Instale o kubectl-convert

    sudo install -o root -g root -m 0755 kubectl-convert /usr/local/bin/kubectl-convert
    
  4. Verifique se o plugin foi instalado com sucesso

    kubectl convert --help
    

    Se não for exibido um erro, isso significa que o plugin foi instalado com sucesso.

  5. Depois de instalar o plugin, remova os arquivos de instalação:

    rm kubectl-convert kubectl-convert.sha256
    

Próximos passos

3 - Instale e configure o kubectl no Windows

Antes de você começar

Você deve usar uma versão do kubectl que esteja próxima da versão do seu cluster. Por exemplo, um cliente v1.32 pode se comunicar com as versões v1.31, v1.32 e v1.33 da camada de gerenciamento. Usar a versão compatível mais recente do kubectl ajuda a evitar problemas inesperados.

Instale o kubectl no Windows

Existem os seguintes métodos para instalar o kubectl no Windows:

Instale o binário kubectl no Windows (via download direto ou curl)

  1. Você tem duas opções para instalar o kubectl em seu dispositivo Windows

    • Download direto:

      Baixe a última versão do patch 1.32 diretamente para sua arquitetura específica visitando a pagina de lançamentos do Kubernetes. Certifique-se de selecionar o binário correto para a sua arquitetura. (e.g., amd64, arm64, etc.).

    • Usando curl:

      Se você tiver o curl instalado, use este comando:

      curl.exe -LO "https://dl.k8s.io/release/v1.32.0/bin/windows/amd64/kubectl.exe"
      
  2. Validar o binário (opcional)

    Baixe o arquivo de checksum do kubectl:

    curl.exe -LO "https://dl.k8s.io/v1.32.0/bin/windows/amd64/kubectl.exe.sha256"
    

    Valide o binário do kubectl com o arquivo de checksum:

    • Usando o Prompt de Comando para comparar manualmente a saída do CertUtil ao arquivo de checksum baixado:

      CertUtil -hashfile kubectl.exe SHA256
      type kubectl.exe.sha256
      
    • Usando PowerShell para automatizar a verificação com o operador -eq para obter um resultado True ou False:

       $(Get-FileHash -Algorithm SHA256 .\kubectl.exe).Hash -eq $(Get-Content .\kubectl.exe.sha256)
      
  3. Adicione (no início ou no final) o diretório do binário kubectl na variável de ambiente PATH.

  4. Teste para garantir que a versão do kubectl seja a mesma que foi baixada:

    kubectl version --client
    

    Ou use este comando para uma visão detalhada da versão:

    kubectl version --client --output=yaml
    

Instalar no Windows usando Chocolatey, Scoop, ou winget

  1. Para instalar o kubectl no Windows, você pode usar o gerenciador de pacotes Chocolatey, o instalador de linha de comando Scoop ou o gerenciador de pacotes winget.

    choco install kubernetes-cli
    

    scoop install kubectl
    

    winget install -e --id Kubernetes.kubectl
    
  2. Teste para garantir que a versão que você instalou está atualizada:

    kubectl version --client
    
  3. Navegue até seu diretório pessoal:

    # Se você estiver usando o cmd.exe, execute: cd %USERPROFILE%
    cd ~
    
  4. Crie o diretório .kube:

    mkdir .kube
    
  5. Navegue para o diretório .kube que você acabou de criar:

    cd .kube
    
  6. Configure o kubectl para usar um cluster Kubernetes remoto:

    New-Item config -type file
    

Verificar a configuração do kubectl

Para que o kubectl encontre e acesse um cluster Kubernetes, ele precisa de um arquivo kubeconfig, que é criado automaticamente quando você cria um cluster usando kube-up.sh ou instala com sucesso um cluster Minikube. Por padrão, a configuração kubectl está localizada em ~/.kube/config.

Verifique se o kubectl está configurado corretamente obtendo o estado do cluster:

kubectl cluster-info

Se você receber uma URL de resposta, o kubectl está configurado corretamente para acessar seu cluster.

Se você receber uma mensagem semelhante à seguinte, o kubectl não está configurado corretamente ou não consegue se conectar a um cluster Kubernetes.

The connection to the server <server-name:port> was refused - did you specify the right host or port?

Por exemplo, se você pretende executar um cluster Kubernetes no seu laptop (localmente), precisará que uma ferramenta como o Minikube seja instalada primeiro, para em seguida executar novamente os comandos indicados acima.

Se o kubectl cluster-info retornar a URL de resposta, mas você não conseguir acessar seu cluster, para verificar se ele está configurado corretamente, use:

kubectl cluster-info dump

Configurações e plugins opcionais do kubectl

Ativar autocompletar no shell

O kubectl oferece suporte ao autocompletar para Bash, Zsh, Fish e PowerShell, o que pode economizar tempo de digitação.

Abaixo estão os procedimentos para configurar o autocompletar no PowerShell.

O script de autocompletar do kubectl para PowerShell, pode ser gerado com o comando kubectl completion powershell.

Para fazer isso em todas as suas sessões de shell, adicione a seguinte linha ao seu arquivo $PROFILE:

kubectl completion powershell | Out-String | Invoke-Expression

Este comando irá regenerar o script de autocompletar toda vez que o PowerShell for iniciado. Você também pode adicionar o script gerado diretamente ao seu arquivo $PROFILE.

Para adicionar o script gerado ao seu arquivo $PROFILE, execute a seguinte linha no prompt do PowerShell:

kubectl completion powershell >> $PROFILE

Após recarregar seu shell, o autocompletar do kubectl deve estar funcionando.

Instalar o plugin kubectl convert

Um plugin para a ferramenta Kubernetes de linha de comando kubectl, que permite converter manifestos entre diferentes versões da API. Isso pode ser particularmente útil para migrar manifestos para uma versão não obsoleta com a versão mais recente da API Kubernetes. Para mais informações, visite Migrar para APIs não obsoletas

  1. Baixe a última versão com este comando:

    curl.exe -LO "https://dl.k8s.io/release/v1.32.0/bin/windows/amd64/kubectl-convert.exe"
    
  2. Validar o binário (opcional).

    Baixe o arquivo de checksum do kubectl-convert:

    curl.exe -LO "https://dl.k8s.io/v1.32.0/bin/windows/amd64/kubectl-convert.exe.sha256"
    

    Valide o binário do kubectl-convert com o arquivo de checksum:

    • Usando o Prompt de Comando para comparar manualmente a saída do CertUtil ao arquivo de checksum baixado:

      CertUtil -hashfile kubectl-convert.exe SHA256
      type kubectl-convert.exe.sha256
      
    • Usando PowerShell para automatizar a verificação com o operador -eq para obter um resultado True ou False:

      $($(CertUtil -hashfile .\kubectl-convert.exe SHA256)[1] -replace " ", "") -eq $(type .\kubectl-convert.exe.sha256)
      
  3. Adicione (no início ou no final) o diretório do binário kubectl-convert na variável de ambiente PATH.

  4. Verifique se o plugin foi instalado com sucesso.

    kubectl convert --help
    

    Se você não ver um erro, isso significa que o plugin foi instalado com sucesso.

  5. Após instalar o plugin, limpe os arquivos de instalação:

    del kubectl-convert.exe
    del kubectl-convert.exe.sha256
    

Próximos passos