Gerir o Armazenamento nas nuvens independentes do Azure utilizando o PowerShell

A maioria das pessoas usa a Nuvem Pública Azure para a sua implantação global do Azure. Há também algumas implementações independentes do Microsoft Azure por razões de soberania e assim por diante. Estas implementações independentes são referidas como "ambientes". A lista a seguir detalha as nuvens independentes atualmente disponíveis.

Nota

Para interagir com o Azure, recomenda-se o módulo Azure Az PowerShell. Consulte a instalação Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Usando uma nuvem independente

Para utilizar o Azure Storage numa das nuvens independentes, liga-se a essa nuvem em vez do Público Azure. Para usar uma das nuvens independentes em vez de Azure Public:

  • Especifica o ambiente a que se deve ligar.
  • Você determina e usa as regiões disponíveis.
  • Utilize o sufixo de ponta final correto, que é diferente do Público Azure.

Os exemplos requerem Azure PowerShell módulo Az versão 0.7 ou posterior. Numa janela PowerShell, corra Get-Module -ListAvailable Az para encontrar a versão. Se nada estiver listado ou precisar de atualizar, consulte o módulo de instalação Azure PowerShell.

Iniciar sessão no Azure

Executar o cmdlet Get-AzEnvironment para ver os ambientes Azure disponíveis:

Get-AzEnvironment

Faça o sômis na sua conta que tenha acesso à nuvem à qual pretende ligar e definir o ambiente. Este exemplo mostra como se assina numa conta que utiliza a Cloud Azure Government.

Connect-AzAccount –Environment AzureUSGovernment

Para aceder à Nuvem Chinesa, use o ambiente AzureChinaCloud. Para aceder à Nuvem Alemã, utilize o AzureGermanCloud.

Neste ponto, se precisar da lista de locais para criar uma conta de armazenamento ou outro recurso, pode consultar as localizações disponíveis para a nuvem selecionada usando o Get-AzLocation.

Get-AzLocation | select Location, DisplayName

A tabela seguinte mostra os locais devolvidos para a nuvem alemã.

Localização Nome a Apresentar
germanycentral Alemanha Central
germanynortheast Nordeste da Alemanha

Sufixo de ponto final

O sufixo final para cada um destes ambientes é diferente do ponto final do Azure Public. Por exemplo, o sufixo blob endpoint para O Público azul é blob.core.windows.net. Para a Nuvem do Governo, o sufixo do ponto final blob é blob.core.usgovcloudapi.net.

Obtenha o ponto final usando Get-AzEnvironment

Recupere o sufixo do ponto final utilizando o Get-AzEnvironment. O ponto final é a propriedade StorageEndpointSuffix do ambiente.

Os seguintes fragmentos de código mostram como recuperar o sufixo do ponto final. Todos estes comandos devolvem algo como "core.cloudapp.net" ou "core.cloudapi.de", etc. Aped o sufixo ao serviço de armazenamento para aceder a esse serviço. Por exemplo, "queue.core.cloudapi.de" acederá ao serviço de fila na Cloud Alemã.

Este código corta todos os ambientes e o sufixo do ponto final para cada um.

Get-AzEnvironment | select Name, StorageEndpointSuffix 

Este comando retorna os seguintes resultados.

Name StorageEndpointS sufixo
AzureChinaCloud core.chinacloudapi.cn
AzureCloud core.windows.net
AzureGermanCloud core.cloudapi.de
AzureUSGovernment core.usgovcloudapi.net

Para recuperar todas as propriedades para o ambiente especificado, ligue para o Get-AzEnvironment e especifique o nome da nuvem. Este código corta-código devolve uma lista de propriedades; procure por StorageEndpointS sufixo na lista. O exemplo a seguir é para a Nuvem Alemã.

Get-AzEnvironment -Name AzureGermanCloud

Os resultados são semelhantes aos seguintes valores:

Nome da Propriedade Valor
Nome AzureGermanCloud
EnableAdfsAuthentication False
ActiveDirectoryServiceEndpointResourcei http://management.core.cloudapi.de/
GaleriaURL https://gallery.cloudapi.de/
GestãoPortalUrl https://portal.microsoftazure.de/
ServiceManagementUrl https://manage.core.cloudapi.de/
PublicarSettingsFileUrl https://manage.microsoftazure.de/publishsettings/index
ResourceManagerUrl http://management.microsoftazure.de/
SqlDatabaseDnsS sulés .database.cloudapi.de
StorageEndpointS sufixo core.cloudapi.de
... ...

Para recuperar apenas a propriedade de sufixo de ponto final de armazenamento, recupere a nuvem específica e peça apenas essa propriedade.

$environment = Get-AzEnvironment -Name AzureGermanCloud
Write-Host "Storage EndPoint Suffix = " $environment.StorageEndpointSuffix

Este comando devolve as seguintes informações:

Storage Endpoint Suffix = core.cloudapi.de

Obtenha o ponto final de uma conta de armazenamento

Também pode examinar as propriedades de uma conta de armazenamento para recuperar os pontos finais:

# Get a reference to the storage account.
$resourceGroup = "myexistingresourcegroup"
$storageAccountName = "myexistingstorageaccount"
$storageAccount = Get-AzStorageAccount `
  -ResourceGroupName $resourceGroup `
  -Name $storageAccountName 
  # Output the endpoints.
Write-Host "blob endpoint = " $storageAccount.PrimaryEndPoints.Blob 
Write-Host "file endpoint = " $storageAccount.PrimaryEndPoints.File
Write-Host "queue endpoint = " $storageAccount.PrimaryEndPoints.Queue
Write-Host "table endpoint = " $storageAccount.PrimaryEndPoints.Table

Para uma conta de armazenamento na Nuvem do Governo, este comando devolve a seguinte saída:

blob endpoint = http://myexistingstorageaccount.blob.core.usgovcloudapi.net/
file endpoint = http://myexistingstorageaccount.file.core.usgovcloudapi.net/
queue endpoint = http://myexistingstorageaccount.queue.core.usgovcloudapi.net/
table endpoint = http://myexistingstorageaccount.table.core.usgovcloudapi.net/

Depois de definir o ambiente

Agora pode utilizar o PowerShell para gerir as suas contas de armazenamento e aceder a blob, fila, ficheiro e dados de tabela. Para mais informações, consulte Az.Storage.

Limpar os recursos

Se criou um novo grupo de recursos e uma conta de armazenamento para este exercício, pode remover ambos os ativos eliminando o grupo de recursos. Eliminar o grupo de recursos elimina todos os recursos incluídos no grupo.

Remove-AzResourceGroup -Name $resourceGroup

Passos seguintes