Usar perfis de versão da API com o Go no Azure Stack Hub
Go e perfis de versão
Um perfil é uma combinação de diferentes tipos de recursos com versões diferentes de serviços diferentes. O uso de um perfil ajuda você a misturar e combinar entre diferentes tipos de recursos. Os perfis podem fornecer os seguintes benefícios:
- Estabilidade para seu aplicativo bloqueando versões de API específicas.
- Compatibilidade para seu aplicativo com o Azure Stack Hub e datacenters regionais do Azure.
No SDK do Go, os perfis estão disponíveis no caminho dos perfis. Os números de versão do perfil são rotulados no formato YYYY-MM-DD . Por exemplo, o perfil de API do Azure Stack Hub versão 2020-09-01 é para as versões 2102 ou posteriores do Azure Stack Hub. Para importar um determinado serviço de um perfil, importe seu módulo correspondente do perfil. Por exemplo, para importar o serviço de computação do perfil 2020-09-01 , use o seguinte código:
import "github.com/Azure/azure-sdk-for-go/profiles/2020-09-01/compute/mgmt/compute"
Instale o SDK do Azure para linguagem Go
- Instale o Git. Consulte Introdução – Instalando o Git.
- Instale o Go. Os perfis de API do Azure exigem o Go versão 1.9 ou mais recente. Consulte a linguagem de programação Go.
Perfis
Para usar outro perfil ou versão do SDK, substitua a data em uma 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-01
, e a cadeia de caracteres se torna github.com/Azure/azure-sdk-for-go/profiles/2019-03-01/storage/mgmt/storage
. Observe que, às vezes, a equipe do SDK altera o nome dos pacotes, portanto, simplesmente substituir a data de uma cadeia de caracteres por uma data diferente pode não funcionar. Consulte a tabela a seguir para associação de perfis e versões do Azure Stack.
Versão do Azure Stack | Perfil |
---|---|
2108 | 2020-09-01 |
2102 | 2020-09-01 |
2008 | 01/03/2019 |
Para obter mais informações sobre os perfis de API e do Azure Stack Hub, consulte o Resumo dos perfis de API.
Consulte perfis do SDK do Go.
Subscription
Se você ainda não tiver uma assinatura, crie uma assinatura e salve a ID da assinatura a ser usada posteriormente. Para obter informações sobre como criar uma assinatura, consulte este documento.
Entidade de serviço
Uma entidade de serviço e suas informações de ambiente associadas devem ser criadas e salvas em algum lugar. A entidade de serviço com owner
função é recomendada, mas dependendo do exemplo, uma contributor
função pode ser suficiente. Consulte o README no repositório de exemplo para os valores necessários. Você pode ler esses valores em qualquer formato compatível com a linguagem SDK, como em um arquivo JSON (que nossos exemplos usam). Dependendo do exemplo que está sendo executado, nem todos esses valores podem ser usados. Consulte o repositório de exemplo para obter um código de exemplo atualizado ou informações adicionais.
ID do locatário
Para localizar a ID do diretório ou locatário do Azure Stack Hub, siga as instruções neste artigo.
Registrar provedores de recursos
Registre os provedores de recursos necessários seguindo este documento. Esses provedores de recursos serão necessários dependendo dos exemplos que você deseja executar. Por exemplo, se você quiser executar um exemplo de VM, o registro do Microsoft.Compute
provedor de recursos será necessário.
Ponto de extremidade do gerenciador de recursos do Azure Stack
O ARM (Azure Resource Manager) é uma estrutura de gerenciamento que permite que os administradores implantem, gerenciem e monitorem recursos do Azure. O Azure Resource Manager pode lidar com essas tarefas como um grupo, em vez de individualmente, em uma única operação. Você pode obter as informações de metadados do ponto de extremidade do Resource Manager. O ponto de extremidade retorna um arquivo JSON com as informações necessárias para executar seu código.
- O ResourceManagerEndpointUrl no ASDK (Azure Stack Development Kit) é:
https://management.local.azurestack.external/
. - O ResourceManagerEndpointUrl em sistemas integrados é:
https://management.region.<fqdn>/
, onde<fqdn>
está seu nome de domínio totalmente qualificado. - Para recuperar os metadados necessários:
<ResourceManagerUrl>/metadata/endpoints?api-version=1.0
. Para versões de API disponíveis, consulte as especificações da API rest do Azure. Por exemplo, na2020-09-01
versão de perfil, você pode alterar oapi-version
para2019-10-01
provedor de recursosmicrosoft.resources
.
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"]
}
}
Exemplos
Consulte o repositório de exemplo para obter o código de exemplo atualizado. A raiz README.md
descreve os requisitos gerais e cada subdiretório contém um exemplo específico próprio README.md
sobre como executar esse exemplo.
Veja aqui o exemplo aplicável para a versão 2008
ou perfil 2019-03-01
do Azure Stack e abaixo.
Próximas etapas
Saiba mais sobre perfis de API: