Compartilhar via


Configurar o acesso ao kubectl

Este guia de instruções explica como obter os arquivos kubeconfig obrigatórios conforme necessário para outros procedimentos. O arquivo somente leitura é suficiente para exibir a configuração de cluster. O arquivo de namespace principal é necessário para operações como modificar o local ou a autenticação do Microsoft Entra ou para reunir a captura de pacotes.

Acesso somente leitura

Para executar comandos kubectl somente leitura como para descrever pods e exibir logs, você pode baixar um arquivo kubeconfig da IU local do ASE. Em Dispositivo, selecione Baixar configuração.

Dica

Para acessar a interface do usuário local, consulte Tutorial: Conectar-se ao Azure Stack Edge Pro com GPU.

Captura de tela do painel do Kubernetes mostrando o link para baixar a configuração.

O arquivo baixado é chamado config.json. Esse arquivo tem permissão para descrever pods e exibir logs, mas não para acessar pods com o kubectl exec.

Acesso ao namespace principal

A implantação do Azure Private 5G Core usa o namespace principal. Para operações como modificar a autenticação local ou do Microsoft Entra ou reunir a captura de pacotes, você precisa de um arquivo kubeconfig com acesso completo ao namespace principal. Para baixar esse arquivo, configure uma sessão do minishell e execute os comandos necessários, conforme indicado nesta seção.

Você só precisa executar esse procedimento uma vez. Se você já fez esse procedimento antes de poder usar o arquivo kubeconfig salvo anteriormente.

Inserir uma sessão do minishell

Você precisa executar comandos do minishell no Azure Stack Edge durante este procedimento. Você deve usar um computador Windows que esteja em uma rede com acesso à porta de gerenciamento do ASE. Você deve ser capaz de exibir a IU local do ASE para verificar se tem acesso.

Habilitar o WinRM em seu computador

O processo a seguir usa o PowerShell e precisa que o WinRM seja habilitado em seu computador. Execute o seguinte comando de uma janela do PowerShell no modo Administrador:

winrm quickconfig

O WinRM pode já estar habilitado em seu computador, pois você só precisa fazer isso uma vez. Verifique se as conexões de rede estão definidas como Privadas ou de Domínio (não Públicas) e aceite as alterações.

Dica

O WinRM abra seu computador para conexões remotas, o que é necessário para o restante do procedimento. Se você não quiser permitir conexões remotas, execute Stop-Service WinRM -PassThru e, em seguida, Set-Service WinRM -StartupType Disabled -PassThru de uma janela do PowerShell no modo Administrador depois de concluir o restante do procedimento para obter o acesso ao namespace principal.

Iniciar a sessão do minishell

  1. Em uma janela do PowerShell no modo Administrador, insira o endereço IP de gerenciamento do ASE (incluindo aspas, por exemplo, "10.10.5.90"):

    $ip = "<ASE_IP_address>"
    
    $sessopt = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck
    
    $minishellSession = New-PSSession -ComputerName $ip -ConfigurationName "Minishell" -Credential ~\EdgeUser -UseSSL -SessionOption $sessopt
    
  2. Quando solicitado, insira sua senha do Azure Stack Edge. Ignore a mensagem a seguir:

    WARNING: The Windows PowerShell interface of your device is intended to
    be used only for the initial network configuration. Please
    engage Microsoft Support if you need to access this interface
    to troubleshoot any potential issues you may be experiencing.
    Changes made through this interface without involving Microsoft
    Support could result in an unsupported configuration.
    

Agora você tem uma sessão do minishell configurada e pronta para obter o arquivo kubeconfig na próxima etapa.

Dica

Se houver uma alteração de rede, a sessão poderá ser interrompida. Execute Get-PSSession para exibir o estado da sessão. Se ela ainda estiver conectada, você ainda poderá executar comandos do minishell. Se ela for interrompida ou desconectada, execute Remove-PSSession para remover a sessão localmente e inicie uma nova sessão.

Configurar o acesso ao kubectl

  • Se esta for a primeira vez que você está executando este procedimento, será necessário executar as etapas a seguir. Essas etapas criam o namespace, baixam o arquivo kubeconfig e o usam para permitir acesso ao namespace.

    Invoke-Command -Session $minishellSession -ScriptBlock {New-HcsKubernetesNamespace -Namespace "core"}
    Invoke-Command -Session $minishellSession -ScriptBlock {New-HcsKubernetesUser -UserName "core"} | Out-File -FilePath .\kubeconfig-core.yaml
    Invoke-Command -Session $minishellSession -ScriptBlock {Grant-HcsKubernetesNamespaceAccess -Namespace "core" -UserName "core"}
    

    Se você vir um erro como The Kubernetes namespace 'core' already exists, isso significa que você já executou essas etapas antes. Nesse caso, pule diretamente para o próximo marcador para recuperar o arquivo gerado anteriormente.

  • Se você já executou esse procedimento antes, poderá recuperar o arquivo kubeconfig gerado anteriormente executando:

    Invoke-Command -Session $miniShellSession -ScriptBlock { Get-HcsKubernetesUserConfig -UserName "core" }
    

Para obter mais informações, consulte Configurar o acesso ao cluster por meio do RBAC do Kubernetes.

Próximas etapas

  • Salve o arquivo kubeconfig para que ele esteja disponível para uso se você precisar dele no futuro.
  • Se você precisar do arquivo kubeconfig como parte da conclusão de um procedimento diferente (como configurar a autenticação do Microsoft Entra), retorne a esse procedimento e continue.