Quickstart: Crie um anfitrião de serviço Azure Kubernetes no Azure Stack HCI usando PowerShellQuickstart: Set up an Azure Kubernetes Service host on Azure Stack HCI using PowerShell

Aplica-se a: Azure Stack HCIApplies to: Azure Stack HCI

Neste arranque rápido, você aprenderá a configurar um anfitrião de Serviço Azure Kubernetes em Azure Stack HCI usando PowerShell.In this quickstart, you'll learn how to set up an Azure Kubernetes Service host on Azure Stack HCI using PowerShell. Em vez disso, utilize o Windows Admin Center, consulte Configurar com o Windows Admin Center.To instead use Windows Admin Center, see Set up with Windows Admin Center.

Before you beginBefore you begin

Antes de começar, certifique-se de que tem um cluster HCI Azure Stack HCI de 2-4 ou um único nó Azure Stack HCI.Before you begin, make sure you have a 2-4 node Azure Stack HCI cluster or a single node Azure Stack HCI. Recomendamos ter um cluster HCI de 2-4 no nó Azure Stack HCI.We recommend having a 2-4 node Azure Stack HCI cluster. Caso não o faça, siga as instruções na página de registo do HCI Azure Stack.If you don't, follow instructions on the Azure Stack HCI registration page.

Passo 1: Descarregue e instale o módulo AksHci PowerShellStep 1: Download and install the AksHci PowerShell module

Descarregue o serviço AKS-HCI-Public=Preview-Oct-2020 Azure Kubernetes na página de registo HCI da Azure Stack.Download the AKS-HCI-Public=Preview-Oct-2020 from the Azure Kubernetes Service on Azure Stack HCI registration page. O ficheiro zip AksHci.Powershell.zip contém o módulo PowerShell.The zip file AksHci.Powershell.zip contains the PowerShell module.

Se já instalou o Serviço Azure Kubernetes no Azure Stack HCI utilizando o PowerShell ou o Windows Admin Center, execute o seguinte comando antes de prosseguir.If you have previously installed Azure Kubernetes Service on Azure Stack HCI using PowerShell or Windows Admin Center, run the following command before proceeding.

Uninstall-AksHci

Feche todas as janelas powerShell.Close all PowerShell windows. Elimine quaisquer diretórios existentes para AksHci, AksHci.Day2 e MSK8sDownloadAgent localizados no caminho %systemdrive%\program files\windowspowershell\modules .Delete any existing directories for AksHci, AksHci.Day2, and MSK8sDownloadAgent located in the path %systemdrive%\program files\windowspowershell\modules. Uma vez feito isto, pode extrair o conteúdo do novo ficheiro zip.Once this is done, you can extract the contents of the new zip file. Certifique-se de que extrai o ficheiro zip no local correto %systemdrive%\program files\windowspowershell\modules ().Make sure to extract the zip file in the correct location (%systemdrive%\program files\windowspowershell\modules).

Import-Module AksHci

Depois de executar o comando acima, feche todas as janelas PowerShell e reabra uma sessão administrativa para executar os comandos nos passos seguintes.After running the above command, close all PowerShell windows and reopen an administrative session to run the commands in the following steps.

Passo 2: Prepare a sua máquina para implantaçãoStep 2: Prepare your machine(s) for deployment

Verifique todos os nós físicos para ver se todos os requisitos estão satisfeitos para instalar o Serviço Azure Kubernetes no Azure Stack HCI.Run checks on every physical node to see if all the requirements are satisfied to install Azure Kubernetes Service on Azure Stack HCI.

Open PowerShell como administrador e executar o seguinte comando.Open PowerShell as an administrator and run the following command.

Initialize-AksHciNode

Quando os cheques estiverem terminados, verá "Done" exibido em texto verde.When the checks are finished, you'll see "Done" displayed in green text.

Passo 3: Configurar a sua implantaçãoStep 3: Configure your deployment

Defina as definições de configuração para o anfitrião do Serviço Azure Kubernetes.Set the configuration settings for the Azure Kubernetes Service host. Para um cluster HCI de 2-4 no nó Azure Stack HCI, deve especificar MultiNode nos -deploymentType wssdImageDir parâmetros e cloudConfigLocation parâmetros.For a 2-4 node Azure Stack HCI cluster, you must specify MultiNode in the -deploymentType, the wssdImageDir and cloudConfigLocation parameters. Para um cluster HCI de 1 nó Azure Stack HCI, todos os parâmetros são opcionais e definidos para os seus valores padrão.For a 1 node Azure Stack HCI cluster, all parameters are optional and set to their default values. No entanto, para um melhor desempenho, recomendamos a utilização de um cluster HCI de 2-4 no nó Azure Stack.However, for optimal performance, we recommend using a 2-4 node Azure Stack HCI cluster deployment.

Configure a sua implantação com o seguinte comando.Configure your deployment with the following command.

Set-AksHciConfig [-deploymentType {SingleNode, MultiNode}]
                 [-wssdImageDir]
                 [-cloudConfigLocation]
                 [-nodeConfigLocation]
                 [-vnetName]
                 [-controlPlaneVmSize]
                 [-loadBalancerVmSize]
                 [-sshPublicKey]
                 [-vipPoolStartIp]
                 [-vipPoolEndIp]
                 [-macPoolStart]
                 [-macPoolEnd]
                 [-vlanID]
                 [-cloudServiceCidr]
                 [-wssdDir]
                 [-akshciVersion]
                 [-vnetType]
                 [-nodeAgentPort]
                 [-nodeAgentAuthorizerPort]
                 [-clusterRoleName]
                 [-skipHostLimitChecks]
                 [-insecure]
                 [-skipUpdates]
                 [-forceDnsReplication]

Parâmetros opcionaisOptional parameters

-deploymentType

O tipo de implantação.The deployment type. Valores aceites: SingleNode, MultiNode.Accepted values: SingleNode, MultiNode. Predefinições para SingleNode.Defaults to SingleNode.

-wssdImageDir

O caminho para o diretório onde o Serviço Azure Kubernetes no Azure Stack HCI irá armazenar as suas imagens VHD.The path to the directory where Azure Kubernetes Service on Azure Stack HCI will store its VHD images. Predefinições %systemdrive%\wssdimagestore para implementações de nó único.Defaults to %systemdrive%\wssdimagestore for single node deployments. Para as colocações de vários nós, este parâmetro deve ser especificado.For multi-node deployments, this parameter must be specified. O caminho deve apontar para um caminho de armazenamento compartilhado, como  C:\ClusterStorage\Volume2\ImageStore   ou uma partilha SMB, tais como  \\FileShare\ImageStore .The path must point to a shared storage path such as C:\ClusterStorage\Volume2\ImageStore or an SMB share such as \\FileShare\ImageStore.

-cloudConfigLocation

O local onde o agente de nuvem irá armazenar a sua configuração.The location where the cloud agent will store its configuration. Predefinições %systemdrive%\wssdimagestore para implementações de nó único.Defaults to %systemdrive%\wssdimagestore for single node deployments. A localização pode ser a mesma que o caminho de  -wssdImageDir cima.The location can be the same as the path of -wssdImageDir above.Para as colocações de vários nós, este parâmetro deve ser especificado. For *multi-node deployments, this parameter must be specified*.

-nodeConfigLocation

O local onde os agentes de nó armazenam a sua configuração.The location where the node agents will store their configuration. Este deve ser um caminho local.This must be a local path.

-vnetName

O nome do interruptor virtual para ligar as máquinas virtuais a.The name of the virtual switch to connect the virtual machines to. Predefinições para o nome "Externo".Defaults to “External” name. O interruptor será criado se não existir.The switch will be created if it does not exist.

-controlPlaneVmSize

O tamanho do VM para criar para o plano de controlo.The size of the VM to create for the control plane. Para obter uma lista de tamanhos VM disponíveis, corra Get-AksHciVmSize .To get a list of available VM sizes, run Get-AksHciVmSize.

-loadBalancerVmSize

O tamanho do VM para criar para os VM do balanceador de carga.The size of the VM to create for the Load Balancer VMs. Para obter uma lista de tamanhos VM disponíveis, corra Get-AksHciVmSize .To get a list of available VM sizes, run Get-AksHciVmSize.

-sshPublicKey

Caminho para um ficheiro de chave pública SSH.Path to an SSH public key file. Utilizando esta chave pública, poderá iniciar sessão em qualquer um dos VMs criados pelo Serviço Azure Kubernetes na implementação do HCI Azure Stack.Using this public key, you will be able to log in to any of the VMs created by the Azure Kubernetes Service on Azure Stack HCI deployment. Se não for fornecida nenhuma chave, procuraremos uma  %systemdrive%\Users\<username>\.ssh\id_rsa.pub abaixo.If no key is provided, we will look for one under %systemdrive%\Users\<username>\.ssh\id_rsa.pub. Se o ficheiro não existir, será gerado e utilizado um par de chaves SSH na localização acima.If file does not exist, an SSH key pair in the above location will be generated and used.

-vipPoolStartIp

Ao utilizar piscinas VIP para a sua implantação, este parâmetro especifica o início da rede da piscina.When using VIP pools for your deployment, this parameter specifies the network start of the pool. A predefinição é nenhum.Default is none.

-vipPoolEndIp

Ao utilizar piscinas VIP para a sua implantação, este parâmetro especifica a extremidade da rede da piscina.When using VIP pools for your deployment, this parameter specifies the network end of the pool. A predefinição é nenhum.Default is none.

-macPoolStart

Isto é usado para especificar o início do endereço MAC da piscina MAC que deseja utilizar para o VM anfitrião do Serviço Azure Kubernetes.This is used to specify the start of the MAC address of the MAC pool that you wish to use for the Azure Kubernetes Service host VM. A sintaxe para o endereço MAC requer que a parte menos significativa do primeiro byte deve ser sempre 0, e o primeiro byte deve ser sempre um número par (ou seja, 00, 02, 04, 06...). Um endereço MAC típico pode parecer: 02:1E:2B:78:00:00.The syntax for the MAC address requires that the least significant bit of the first byte should always be 0, and the first byte should always be an even number (i.e. 00, 02, 04, 06...). A typical MAC address can look like: 02:1E:2B:78:00:00. A predefinição é nenhum.Default is none.

-macPoolEnd

Isto é usado para especificar o fim do endereço MAC da piscina MAC que deseja utilizar para o VM anfitrião do Serviço Azure Kubernetes.This is used to specify the end of the MAC address of the MAC pool that you wish to use for the Azure Kubernetes Service host VM. A sintaxe para o endereço MAC requer que a parte menos significativa do primeiro byte deve ser sempre 0, e o primeiro byte deve ser sempre um número par (ou seja, 00, 02, 04, 06...). O primeiro byte do endereço passado como -macPoolEnd deve ser o mesmo que o primeiro byte do endereço passado como -macPoolStart .The syntax for the MAC address requires that the least significant bit of the first byte should always be 0, and the first byte should always be an even number (i.e. 00, 02, 04, 06...). The first byte of the address passed as the -macPoolEnd should be the same as the first byte of the address passed as the -macPoolStart. A predefinição é nenhum.Default is none.

-vlandID

Isto pode ser usado para especificar um ID VLAN de rede.This can be used to specify a network VLAN ID. O anfitrião do serviço Azure Kubernetes e os adaptadores de rede de cluster Kubernetes serão marcados com o ID VLAN fornecido.Azure Kubernetes Service host and Kubernetes cluster VM network adapters will be tagged with the provided VLAN ID. A predefinição é nenhum.Default is none.

cloudServiceCidr

Isto pode ser usado para fornecer um prefixo IP/rede estático para ser atribuído ao serviço MOC CloudAgent.This can be used to provide a static IP/network prefix to be assigned to the MOC CloudAgent service. Este valor deve ser fornecido utilizando o formato CIDR.This value should be provided using the CIDR format. (Exemplo: 192.168.1.2/16).(Example: 192.168.1.2/16). A predefinição é nenhum.Default is none.

-wssdDir

Este é um diretório de trabalho para o módulo a utilizar para armazenar pequenos ficheiros.This is a working directory for the module to use for storing small files. Os predefinidos para e não devem ser alterados para a %PROGRAMFILES%\AksHci   maioria das implementações.Defaults to %PROGRAMFILES%\AksHci and should not be changed for most deployments.

-akshciVersion

A versão do Serviço Azure Kubernetes no Azure Stack HCI que pretende implementar.The version of Azure Kubernetes Service on Azure Stack HCI that you want to deploy. O padrão é a versão mais recente.The default is the latest version.

-vnetType

O tipo de interruptor virtual para ligar ou criar.The type of virtual switch to connect to or create. Isto é padrão para o tipo de interruptor "Externo".This defaults to “External” switch type.

-nodeAgentPort

O número da porta TCP/IP que os agentes devem ouvir.The TCP/IP port number that nodeagents should listen on. Incumprimentos para 45000.Defaults to 45000.

-nodeAgentAuthorizerPort

O número da porta TCP/IP que os agentes devem utilizar para a sua porta de autorização.The TCP/IP port number that nodeagents should use for their authorization port. Incumprimentos para 45001.Defaults to 45001.

-clusterRoleName

Isto especifica o nome a utilizar ao criar um cloudagent como um serviço genérico dentro do cluster.This specifies the name to use when creating cloudagent as a generic service within the cluster. Isto é um defeito para um nome único com um prefixo de ca- e um sufixo guia (por exemplo: "ca-9e6eb299-bc0b-4f00-9fd7-942843820c26")This defaults to a unique name with a prefix of ca- and a guid suffix (for example: “ca-9e6eb299-bc0b-4f00-9fd7-942843820c26”)

-skipHostLimitChecks

Solicita ao script que ignore quaisquer verificações que faça para confirmar que o espaço de memória e disco está disponível antes de permitir que a implementação prossiga.Requests the script to skip any checks it does to confirm memory and disk space is available before allowing the deployment to proceed.

-insecure

Implementa o Serviço Azure Kubernetes em componentes HCI Azure Stack, tais como cloudagent e nodeagent(s) em modo inseguro (sem ligações seguras TLS).Deploys Azure Kubernetes Service on Azure Stack HCI components such as cloudagent and nodeagent(s) in insecure mode (no TLS secured connections).Não é aconselhável utilizar o modo de insegurança em ambientes de produção.  It is not recommended to use insecure mode in production environments.

-skipUpdates

Utilize esta bandeira se pretender ignorar quaisquer atualizações disponíveis.Use this flag if you want to skip any updates available.

-forceDnsReplication

A replicação do DNS pode demorar até uma hora em alguns sistemas.DNS replication can take up to an hour on some systems. Isto fará com que a implantação seja lenta.This will cause the deployment to be slow. Se chegares a este assunto, verás que o Install-AksHci vai ficar preso num ciclo.If you hit this issue, you'll see that the Install-AksHci will be stuck in a loop. Para ultrapassar esta questão, tente usar esta bandeira.To get past this issue, try to use this flag. A -forceDnsReplication bandeira não é uma solução garantida.The -forceDnsReplication flag is not a guaranteed fix. Se a lógica por trás da bandeira falhar, o erro será escondido, e o comando continuará como se a bandeira não tivesse sido fornecida.If the logic behind the flag fails, the error will be hidden, and the command will carry on as if the flag was not provided.

Repor o serviço Azure Kubernetes na configuração Azure Stack HCIReset the Azure Kubernetes Service on Azure Stack HCI configuration

Para redefinir o Serviço Azure Kubernetes na configuração HCI da Stack Azure, executar o seguinte comando.To reset the Azure Kubernetes Service on Azure Stack HCI configuration, run the following command. Executar este comando por si só irá redefinir a configuração para valores predefinidos.Running this command on its own will reset the configuration to default values.

Set-AksHciConfig

Passo 4: Iniciar uma nova implantaçãoStep 4: Start a new deployment

Depois de configurar a sua implantação, tem de começar a implantação.After you've configured your deployment, you must start deployment. Isto instalará o Serviço Azure Kubernetes em agentes/serviços HCI Azure Stack e no anfitrião do Serviço Azure Kubernetes.This will install the Azure Kubernetes Service on Azure Stack HCI agents/services and the Azure Kubernetes Service host.

Para iniciar a implantação, executar o seguinte comando.To begin deployment, run the following command.

Install-AksHci

Verifique o seu anfitrião de serviço Azure Kubernetes implantadoVerify your deployed Azure Kubernetes Service host

Para garantir que o seu anfitrião do Serviço Azure Kubernetes foi implantado, executar o seguinte comando.To ensure that your Azure Kubernetes Service host was deployed, run the following command. Também poderá obter clusters Kubernetes usando o mesmo comando depois de os implantar.You will also be able to get Kubernetes clusters using the same command after deploying them.

Get-AksHciCluster

Passo 5: Aceda aos seus clusters usando kubectlStep 5: Access your clusters using kubectl

Para aceder ao seu anfitrião do Serviço Azure Kubernetes ou ao cluster Kubernetes utilizando kubectl, executar o seguinte comando.To access your Azure Kubernetes Service host or Kubernetes cluster using kubectl, run the following command. Isto utilizará o ficheiro kubeconfig do cluster especificado como o ficheiro kubeconfig padrão para kubectl.This will use the specified cluster's kubeconfig file as the default kubeconfig file for kubectl.

Get-AksHciCredential -clusterName
                     [-outputLocation]

Parâmetros ObrigatóriosRequired Parameters

clusterName

O nome do aglomerado.The name of the cluster.

Parâmetros OpcionaisOptional Parameters

outputLocation

A localização era que querias que o kubeconfig fosse descarregado.The location were you want the kubeconfig downloaded. A predefinição é %USERPROFILE%\.kube.Default is %USERPROFILE%\.kube.

Obter registosGet logs

Para obter registos de todas as suas cápsulas, executar o seguinte comando.To get logs from your all your pods, run the following command. Este comando criará uma pasta com fecho de saída chamada akshcilogs no caminho C:\wssd\akshcilogs .This command will create an output zipped folder called akshcilogs in the path C:\wssd\akshcilogs.

Get-AksHciLogs

Reinstalar o Serviço Azure Kubernetes no Azure Stack HCIReinstall Azure Kubernetes Service on Azure Stack HCI

Reinstalar o Serviço Azure Kubernetes no Azure Stack HCI removerá todos os seus clusters Kubernetes, caso existam, e o anfitrião do Serviço Azure Kubernetes.Reinstalling Azure Kubernetes Service on Azure Stack HCI will remove all of your Kubernetes clusters if any, and the Azure Kubernetes Service host. Também desinstalará o Serviço Azure Kubernetes em agentes HCI Azure Stack e serviços dos nós.It will also uninstall the Azure Kubernetes Service on Azure Stack HCI agents and services from the nodes. Em seguida, irá voltar através dos passos originais do processo de instalação até que o hospedeiro seja recriado.It will then go back through the original install process steps until the host is recreated. O Serviço Azure Kubernetes na configuração HCI da Stack Azure que configuraste através Set-AksHciConfig e as imagens VHDX descarregadas são preservadas.The Azure Kubernetes Service on Azure Stack HCI configuration that you configured via Set-AksHciConfig and the downloaded VHDX images are preserved.

Para reinstalar o Serviço Azure Kubernetes no Azure Stack HCI, executar o seguinte comando.To reinstall Azure Kubernetes Service on Azure Stack HCI, run the following command.

Restart-AksHci

Remover serviço Azure Kubernetes em Azure Stack HCIRemove Azure Kubernetes Service on Azure Stack HCI

Para remover o Serviço Azure Kubernetes no Azure Stack HCI, executar o seguinte comando.To remove Azure Kubernetes Service on Azure Stack HCI, run the following command.

Uninstall-AksHci

Passos seguintesNext steps