Gerenciar e implantar recursos no Azure Stack Hub com a CLI do AzureManage and deploy resources to Azure Stack Hub with Azure CLI

Aplica-se a: sistemas integrados de Hub de Azure StackApplies to: Azure Stack Hub integrated systems

Siga as etapas neste artigo para configurar a CLI (interface de Command-Line do Azure) para gerenciar Azure Stack recursos de Hub das plataformas Linux, Mac e Windows Client.Follow the steps in this article to set up the Azure Command-Line Interface (CLI) to manage Azure Stack Hub resources from Linux, Mac, and Windows client platforms.

Preparar para CLI do AzurePrepare for Azure CLI

O ponto de extremidade de aliases da máquina virtual fornece um alias, como "UbuntuLTS" ou "Win2012Datacenter".The virtual machine aliases endpoint provides an alias, like "UbuntuLTS" or "Win2012Datacenter." Esse alias faz referência a um editor de imagem, oferta, SKU e versão como um único parâmetro ao implantar VMs.This alias references an image publisher, offer, SKU, and version as a single parameter when deploying VMs.

A seção a seguir descreve como configurar o ponto de extremidade de aliases de máquina virtual.The following section describes how to set up the virtual machine aliases endpoint.

Configurar o ponto de extremidade de aliases da máquina virtualSet up the virtual machine aliases endpoint

Você pode configurar um ponto de extremidade publicamente acessível que hospeda um arquivo de alias de VM.You can set up a publicly accessible endpoint that hosts a VM alias file. O arquivo de alias da VM é um arquivo JSON que fornece um nome comum para uma imagem.The VM alias file is a JSON file that provides a common name for an image. Você usa o nome ao implantar uma VM como um parâmetro CLI do Azure.You use the name when you deploy a VM as an Azure CLI parameter.

  1. Se você publicar uma imagem personalizada, anote as informações de Publicador, oferta, SKU e versão que você especificou durante a publicação.If you publish a custom image, make note of the publisher, offer, SKU, and version information that you specified during publishing. Se for uma imagem do Marketplace, você poderá exibir as informações usando o Get-AzureVMImage cmdlet.If it's an image from the Marketplace, you can view the information by using the Get-AzureVMImage cmdlet.

  2. Baixe o arquivo de exemplo do github.Download the sample file from GitHub.

  3. Crie uma conta de armazenamento no Hub Azure Stack.Create a storage account in Azure Stack Hub. Quando terminar, crie um contêiner de BLOB.When that's done, create a blob container. Defina a política de acesso como "pública".Set the access policy to "public."

  4. Carregue o arquivo JSON no novo contêiner.Upload the JSON file to the new container. Quando isso for feito, você poderá exibir a URL do blob.When that's done, you can view the URL of the blob. Selecione o nome do blob e selecione a URL nas propriedades do blob.Select the blob name and then selecting the URL from the blob properties.

Instalar ou atualizar a CLIInstall or upgrade CLI

Entre em sua estação de trabalho de desenvolvimento e instale a CLI.Sign in to your development workstation and install CLI. Azure Stack Hub requer a versão 2,0 ou posterior do CLI do Azure.Azure Stack Hub requires version 2.0 or later of Azure CLI. A versão mais recente dos perfis de API requer uma versão atual da CLI.The latest version of the API Profiles requires a current version of the CLI. Instale a CLI usando as etapas descritas no artigo instalar o CLI do Azure .You install the CLI by using the steps described in the Install the Azure CLI article.

Para verificar se a instalação foi bem-sucedida, abra uma janela de terminal ou de prompt de comando e execute o seguinte comando:To verify whether the installation was successful, open a terminal or command prompt window and run the following command:

az --version

Você deve ver a versão do CLI do Azure e outras bibliotecas dependentes que estão instaladas no seu computador.You should see the version of Azure CLI and other dependent libraries that are installed on your computer.

CLI do Azure no local do Python do Hub Azure Stack

Windows/Linux (Azure AD)Windows/Linux (Azure AD)

Esta seção o orientará na configuração da CLI se você estiver usando o Azure AD como seu serviço de gerenciamento de identidade e estiver usando a CLI em um computador Windows/Linux.This section walks you through setting up CLI if you're using Azure AD as your identity management service, and are using CLI on a Windows/Linux machine.

Conectar-se ao Hub de Azure StackConnect to Azure Stack Hub

  1. Registre seu ambiente de Hub de Azure Stack executando o az cloud register comando.Register your Azure Stack Hub environment by running the az cloud register command.

  2. Registre seu ambiente.Register your environment. Use os seguintes parâmetros ao executar az cloud register :Use the following parameters when running az cloud register:

    ValorValue ExemploExample DescriçãoDescription
    Nome do ambienteEnvironment name AzureStackUserAzureStackUser Use AzureStackUser para o ambiente do usuário.Use AzureStackUser for the user environment. Se você for o operador, especifique AzureStackAdmin .If you're operator, specify AzureStackAdmin.
    Ponto de extremidade do Resource ManagerResource Manager endpoint https://management.local.azurestack.external O ResourceManagerUrl em sistemas integrados é: https://management.<region>.<fqdn>/ se você tiver uma dúvida sobre o ponto de extremidade do sistema integrado, entre em contato com seu operador de nuvem.The ResourceManagerUrl in integrated systems is: https://management.<region>.<fqdn>/ If you have a question about the integrated system endpoint, contact your cloud operator.
    Ponto de extremidade de armazenamentoStorage endpoint local. azurestack. externallocal.azurestack.external Para um sistema integrado, use um ponto de extremidade para seu sistema.For an integrated system, use an endpoint for your system.
    Sufixo de keyvaultKeyvault suffix . Vault. local. azurestack. external.vault.local.azurestack.external Para um sistema integrado, use um ponto de extremidade para seu sistema.For an integrated system, use an endpoint for your system.
    Ponto de extremidade do documento do alias de imagem da VM-VM image alias doc endpoint- https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json URI do documento, que contém aliases de imagem de VM.URI of the document, which contains VM image aliases. Para obter mais informações, consulte Configurar o ponto de extremidade de aliases de VM.For more info, see Set up the VM aliases endpoint.
    az cloud register -n <environmentname> --endpoint-resource-manager "https://management.local.azurestack.external" --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>
    
  3. Defina o ambiente ativo usando os comandos a seguir.Set the active environment by using the following commands.

    az cloud set -n <environmentname>
    
  4. Atualize sua configuração de ambiente para usar o perfil de versão de API de Azure Stack Hub específico.Update your environment configuration to use the Azure Stack Hub specific API version profile. Para atualizar a configuração, execute o seguinte comando:To update the configuration, run the following command:

    az cloud update --profile 2019-03-01-hybrid
    
  5. Entre em seu ambiente de Hub de Azure Stack usando o az login comando.Sign in to your Azure Stack Hub environment by using the az login command. Entre no ambiente de Hub de Azure Stack como um usuário ou como uma entidade de serviço.Sign in to the Azure Stack Hub environment either as a user or as a service principal.

    • Entrar como um usuário :Sign in as a user :

      Especifique o nome de usuário e a senha diretamente no comando az login ou autentique-se usando um navegador.You can either specify the username and password directly within the az login command, or authenticate by using a browser. Você deve fazer o último se sua conta tiver a autenticação multifator habilitada:You must do the latter if your account has multi-factor authentication enabled:

      az login -u <Active directory global administrator or user account. For example: username@<aadtenant>.onmicrosoft.com> --tenant <Azure Active Directory Tenant name. For example: myazurestack.onmicrosoft.com>
      

      Observação

      Se sua conta de usuário tiver a autenticação multifator habilitada, use o az login comando sem fornecer o -u parâmetro.If your user account has multi-factor authentication enabled, use the az login command without providing the -u parameter. A execução desse comando fornece uma URL e um código que você deve usar para autenticar.Running this command gives you a URL and a code that you must use to authenticate.

    • Entrar como uma entidade de serviço :Sign in as a service principal :

      Antes de entrar, crie uma entidade de serviço por meio do portal do Azure ou da CLI e atribua a ela uma função.Before you sign in, create a service principal through the Azure portal or CLI and assign it a role. Agora, entre usando o seguinte comando:Now, sign in by using the following command:

      az login --tenant <Azure Active Directory Tenant name. For example: myazurestack.onmicrosoft.com> --service-principal -u <Application Id of the Service Principal> -p <Key generated for the Service Principal>
      

Testar a conectividadeTest the connectivity

Com tudo configurado, use a CLI para criar recursos dentro de Azure Stack Hub.With everything set up, use CLI to create resources within Azure Stack Hub. Por exemplo, você pode criar um grupo de recursos para um aplicativo e adicionar uma VM.For example, you can create a resource group for an app and add a VM. Use o comando a seguir para criar um grupo de recursos chamado "MyResource Group":Use the following command to create a resource group named "MyResourceGroup":

az group create -n MyResourceGroup -l local

Se o grupo de recursos for criado com êxito, o comando anterior produzirá as seguintes propriedades do recurso recém-criado:If the resource group is created successfully, the previous command outputs the following properties of the newly created resource:

Saída de criação do grupo de recursos

Windows/Linux (AD FS)Windows/Linux (AD FS)

Esta seção explica como configurar a CLI se você estiver usando o AD FS (Active Directory Federated Services) como seu serviço de gerenciamento de identidade e estiver usando a CLI em um computador Windows/Linux.This section walks you through setting up CLI if you're using Active Directory Federated Services (AD FS) as your identity management service, and are using CLI on a Windows/Linux machine.

Conectar-se ao Hub de Azure StackConnect to Azure Stack Hub

  1. Registre seu ambiente de Hub de Azure Stack executando o az cloud register comando.Register your Azure Stack Hub environment by running the az cloud register command.

  2. Registre seu ambiente.Register your environment. Use os seguintes parâmetros ao executar az cloud register :Use the following parameters when running az cloud register:

    ValorValue ExemploExample DescriçãoDescription
    Nome do ambienteEnvironment name AzureStackUserAzureStackUser Use AzureStackUser para o ambiente do usuário.Use AzureStackUser for the user environment. Se você for o operador, especifique AzureStackAdmin .If you're operator, specify AzureStackAdmin.
    Ponto de extremidade do Resource ManagerResource Manager endpoint https://management.local.azurestack.external O ResourceManagerUrl em sistemas integrados é: https://management.<region>.<fqdn>/ se você tiver uma dúvida sobre o ponto de extremidade do sistema integrado, entre em contato com seu operador de nuvem.The ResourceManagerUrl in integrated systems is: https://management.<region>.<fqdn>/ If you have a question about the integrated system endpoint, contact your cloud operator.
    Ponto de extremidade de armazenamentoStorage endpoint local. azurestack. externallocal.azurestack.external Para um sistema integrado, use um ponto de extremidade para seu sistema.For an integrated system, use an endpoint for your system.
    Sufixo de keyvaultKeyvault suffix . Vault. local. azurestack. external.vault.local.azurestack.external Para um sistema integrado, use um ponto de extremidade para seu sistema.For an integrated system, use an endpoint for your system.
    Ponto de extremidade do documento do alias de imagem da VM-VM image alias doc endpoint- https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json URI do documento, que contém aliases de imagem de VM.URI of the document, which contains VM image aliases. Para obter mais informações, consulte Configurar o ponto de extremidade de aliases de VM.For more info, see Set up the VM aliases endpoint.
    az cloud register -n <environmentname> --endpoint-resource-manager "https://management.local.azurestack.external" --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>
    
  3. Defina o ambiente ativo usando os comandos a seguir.Set the active environment by using the following commands.

    az cloud set -n <environmentname>
    
  4. Atualize sua configuração de ambiente para usar o perfil de versão de API de Azure Stack Hub específico.Update your environment configuration to use the Azure Stack Hub specific API version profile. Para atualizar a configuração, execute o seguinte comando:To update the configuration, run the following command:

    az cloud update --profile 2019-03-01-hybrid
    
  5. Entre em seu ambiente de Hub de Azure Stack usando o az login comando.Sign in to your Azure Stack Hub environment by using the az login command. Você pode entrar no ambiente de Hub de Azure Stack como um usuário ou como uma entidade de serviço.You can sign in to the Azure Stack Hub environment either as a user or as a service principal.

    • Entrar como um usuário :Sign in as a user :

      Especifique o nome de usuário e a senha diretamente no comando az login ou autentique-se usando um navegador.You can either specify the username and password directly within the az login command, or authenticate by using a browser. Você deve fazer o último se sua conta tiver a autenticação multifator habilitada:You must do the latter if your account has multi-factor authentication enabled:

      az cloud register  -n <environmentname>   --endpoint-resource-manager "https://management.local.azurestack.external"  --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>   --profile "2019-03-01-hybrid"
      

      Observação

      Se sua conta de usuário tiver a autenticação multifator habilitada, use o az login comando sem fornecer o -u parâmetro.If your user account has multi-factor authentication enabled, use the az login command without providing the -u parameter. A execução desse comando fornece uma URL e um código que você deve usar para autenticar.Running this command gives you a URL and a code that you must use to authenticate.

    • Entrar como uma entidade de serviço :Sign in as a service principal :

      Prepare o arquivo. pem a ser usado para o logon da entidade de serviço.Prepare the .pem file to be used for service principal login.

      No computador cliente em que a entidade de segurança foi criada, exporte o certificado da entidade de serviço como um pfx com a chave privada localizada em cert:\CurrentUser\My .On the client machine where the principal was created, export the service principal certificate as a pfx with the private key located at cert:\CurrentUser\My. O nome do certificado tem o mesmo nome que o principal.The cert name has the same name as the principal.

      Converta o PFX em PEM (use o utilitário OpenSSL).Convert the pfx to pem (use the OpenSSL utility).

      Entre na CLI:Sign in to the CLI:

      az login --service-principal \
      -u <Client ID from the Service Principal details> \
      -p <Certificate's fully qualified name, such as, C:\certs\spn.pem>
      --tenant <Tenant ID> \
      --debug 
      

Testar a conectividadeTest the connectivity

Com tudo configurado, use a CLI para criar recursos dentro de Azure Stack Hub.With everything set up, use CLI to create resources within Azure Stack Hub. Por exemplo, você pode criar um grupo de recursos para um aplicativo e adicionar uma VM.For example, you can create a resource group for an app and add a VM. Use o comando a seguir para criar um grupo de recursos chamado "MyResource Group":Use the following command to create a resource group named "MyResourceGroup":

az group create -n MyResourceGroup -l local

Se o grupo de recursos for criado com êxito, o comando anterior produzirá as seguintes propriedades do recurso recém-criado:If the resource group is created successfully, the previous command outputs the following properties of the newly created resource:

Saída de criação do grupo de recursos

Problemas conhecidosKnown issues

Há problemas conhecidos ao usar a CLI no Hub Azure Stack:There are known issues when using CLI in Azure Stack Hub:

  • O modo interativo da CLI.The CLI interactive mode. Por exemplo, o az interactive comando ainda não tem suporte no Hub Azure Stack.For example, the az interactive command, isn't yet supported in Azure Stack Hub.
  • Para obter a lista de imagens de VM disponíveis no Hub Azure Stack, use o az vm image list --all comando em vez do az vm image list comando.To get the list of VM images available in Azure Stack Hub, use the az vm image list --all command instead of the az vm image list command. A especificação da --all opção garante que a resposta retorne apenas as imagens que estão disponíveis em seu ambiente de Hub de Azure Stack.Specifying the --all option ensures that the response returns only the images that are available in your Azure Stack Hub environment.
  • Os aliases de imagem de VM que estão disponíveis no Azure podem não ser aplicáveis ao Hub Azure Stack.VM image aliases that are available in Azure may not be applicable to Azure Stack Hub. Ao usar imagens de VM, você deve usar o parâmetro URN inteiro (Canonical: UbuntuServer: 14.04.3-LTS: 1.0.0) em vez do alias da imagem.When using VM images, you must use the entire URN parameter (Canonical:UbuntuServer:14.04.3-LTS:1.0.0) instead of the image alias. Este URN deve corresponder às especificações de imagem derivadas do az vm images list comando.This URN must match the image specifications as derived from the az vm images list command.

Próximas etapasNext steps