Utilizar perfis de versão da API com o Go no Azure Stack Hub

Perfis go e de versão

Um perfil é uma combinação de diferentes tipos de recursos com versões diferentes de diferentes serviços. A utilização de um perfil ajuda-o a misturar e a corresponder entre diferentes tipos de recursos. Os perfis podem proporcionar as seguintes vantagens:

  • Estabilidade para a sua aplicação ao bloquear versões de API específicas.
  • Compatibilidade para a sua aplicação com o Azure Stack Hub e datacenters regionais do Azure.

No SDK Go, os perfis estão disponíveis no caminho dos perfis. Os números de versão do perfil são etiquetados no formato AAAA-MM-DD . Por exemplo, a versão 2020-09-01 do perfil da API do Azure Stack Hub destina-se às versões 2102 ou posteriores do Azure Stack Hub. Para importar um determinado serviço de um perfil, importe o módulo correspondente do perfil. Por exemplo, para importar o serviço de Computação do perfil 2020-09-01 , utilize o seguinte código:

import "github.com/Azure/azure-sdk-for-go/profiles/2020-09-01/compute/mgmt/compute"

Instale o Azure SDK para Go

  1. Instale o Git. Veja Introdução - Instalar o Git.
  2. Instale o Go. Os perfis de API do Azure requerem a versão 1.9 ou mais recente do Go. Consulte Linguagem de programação Go.

Perfis

Para utilizar um perfil ou versão do SDK diferente, substitua a data numa instrução de importação, como github.com/Azure/azure-sdk-for-go/profiles/<date>/storage/mgmt/storage. Por exemplo, para a versão de 2008, o perfil é 2019-03-01e a cadeia torna-se github.com/Azure/azure-sdk-for-go/profiles/2019-03-01/storage/mgmt/storage. Tenha em atenção que, por vezes, a equipa do SDK altera o nome dos pacotes, pelo que simplesmente substituir a data de uma cadeia por uma data diferente poderá não funcionar. Veja a tabela seguinte para associar perfis e versões do Azure Stack.

Versão do Azure Stack Perfil
2311 2020_09_01
2301 2020_09_01
2206 2020_09_01
2108 2020-09-01
2102 2020-09-01
2008 2019-03-01

Para obter mais informações sobre o Azure Stack Hub e perfis de API, veja Resumo dos perfis de API.

Veja Perfis do SDK Go.

Subscrição

Se ainda não tiver uma subscrição, crie uma subscrição e guarde o ID da subscrição para ser utilizado mais tarde. Para obter informações sobre como criar uma subscrição, veja este documento.

Service principal (Principal de serviço)

Um principal de serviço e as respetivas informações de ambiente associadas devem ser criadas e guardadas algures. O principal de serviço com owner função é recomendado, mas dependendo do exemplo, uma função contributor pode ser suficiente. Veja o README no repositório de exemplo para obter os valores necessários. Pode ler estes valores em qualquer formato suportado pela linguagem SDK, como a partir de um ficheiro JSON (que os nossos exemplos utilizam). Consoante o exemplo que está a ser executado, nem todos estes valores podem ser utilizados. Veja o repositório de exemplo para obter código de exemplo atualizado ou mais informações.

ID do inquilino

Para localizar o diretório ou ID de inquilino do Azure Stack Hub, siga as instruções neste artigo.

Registar fornecedores de recursos

Registe os fornecedores de recursos necessários ao seguir este documento. Estes fornecedores de recursos serão necessários consoante os exemplos que pretende executar. Por exemplo, se quiser executar um exemplo de VM, é necessário o registo do Microsoft.Compute fornecedor de recursos.

Ponto final do gestor de recursos do Azure Stack

O Azure Resource Manager (ARM) é uma arquitetura de gestão que permite aos administradores implementar, gerir e monitorizar recursos do Azure. O Azure Resource Manager pode processar estas tarefas como um grupo, em vez de individualmente, numa única operação. Pode obter as informações de metadados a partir do ponto final Resource Manager. O ponto final devolve um ficheiro JSON com as informações necessárias para executar o código.

  • O ResourceManagerEndpointUrl no Azure Stack Development Kit (ASDK) é: https://management.local.azurestack.external/.
  • O ResourceManagerEndpointUrl em sistemas integrados é: https://management.region.<fqdn>/, onde <fqdn> é o seu nome de domínio completamente qualificado.
  • Para obter os metadados necessários: <ResourceManagerUrl>/metadata/endpoints?api-version=1.0. Para obter as versões de API disponíveis, veja Especificações da API rest do Azure. Por exemplo, na 2020-09-01 versão do perfil, pode alterar o api-version para 2019-10-01 para o fornecedor microsoft.resourcesde recursos .

JSON de exemplo:

{
   "galleryEndpoint": "https://portal.local.azurestack.external:30015/",
   "graphEndpoint": "https://graph.windows.net/",
   "portal Endpoint": "https://portal.local.azurestack.external/",
   "authentication": 
      {
         "loginEndpoint": "https://login.windows.net/",
         "audiences": ["https://management.yourtenant.onmicrosoft.com/3cc5febd-e4b7-4a85-a2ed-1d730e2f5928"]
      }
}

Amostras

Veja o repositório de exemplo para obter o código de exemplo atualizado até à data. A raiz README.md descreve os requisitos gerais e cada subdiretório contém uma amostra específica com o seu próprio README.md sobre como executar esse exemplo.

Veja aqui o exemplo aplicável à versão 2008 ou perfil 2019-03-01 do Azure Stack e abaixo.

Passos seguintes

Saiba mais sobre os perfis de API: