Usar o PowerShell para gerenciar assinaturas, planos e ofertas no Azure Stack Hub
Você pode usar o PowerShell para configurar e entregar serviços usando ofertas, planos e assinaturas. Para obter instruções sobre como configurar o PowerShell no Azure Stack Hub, confira Instalar o módulo Az do PowerShell para o Azure Stack Hub. Para obter informações sobre como se conectar ao Azure Stack Hub usando o PowerShell, confira Conectar-se ao Azure Stack Hub com o PowerShell.
Antes de começar, verifique se o módulo do PowerShell do Azure Stack Hub está carregado. Em um console do PowerShell, digite Import-Module AzureStack
.
Criar um plano
As cotas são necessárias ao criar um plano. Você pode usar cotas existentes ou criar novas cotas. Por exemplo, para criar uma cota de armazenamento, computação e rede, você pode usar os cmdlets New-AzsStorageQuota, New-AzsComputeQuota e New-AzsNetworkQuota :
$serviceQuotas = @()
$serviceQuotas += (New-AzsStorageQuota -Name "Example storage quota with defaults").Id
$serviceQuotas += (New-AzsComputeQuota -Name "Example compute quota with defaults").Id
$serviceQuotas += (New-AzsNetworkQuota -Name "Example network quota with defaults").Id
Para criar ou atualizar um plano de base ou complemento, use New-AzsPlan.
$testPlan = New-AzsPlan -Name "testplan" -ResourceGroupName "testrg" -QuotaIds $serviceQuotas -Description "Test plan"
Criar uma oferta
Para criar uma oferta, use New-AzsOffer.
New-AzsOffer -Name "testoffer" -ResourceGroupName "testrg" -BasePlanIds @($testPlan.Id)
Depois que tiver uma oferta, você poderá adicionar planos a ela. Use Add-AzsPlanToOffer. O parâmetro -PlanLinkType distingue o tipo de plano.
Add-AzsPlanToOffer -PlanName "addonplan" -PlanLinkType Addon -OfferName "testoffer" -ResourceGroupName "testrg" -MaxAcquisitionCount 18
Se você quiser alterar o estado de uma oferta, use o cmdlet Set-AzsOffer .
$offer = Get-AzsAdminManagedOffer -Name "testoffer" -ResourceGroupName "testrg"
$offer.state = "Public"
$offer | Set-AzsOffer -Confirm:$false
Criar assinatura para uma oferta
Depois que você criar uma oferta de serviços, os usuários precisarão de uma assinatura da oferta antes de poder usá-la. Há duas maneiras pelas quais os usuários podem assinar uma oferta:
- Como operador de nuvem, você pode criar uma assinatura para um usuário. As assinaturas que você cria podem ser para ofertas públicas e privadas.
- Como usuário, você pode assinar uma oferta pública.
Para criar uma assinatura para um usuário como um operador de nuvem, use New-AzsUserSubscription.
New-AzsUserSubscription -Owner "user@contoso.com" -DisplayName "User subscription" -OfferId "/subscriptions/<Subscription ID>/resourceGroups/testrg/providers/Microsoft.Subscriptions.Admin/offers/testoffer"
Para assinar uma oferta pública como usuário, use New-AzsSubscription.
New-AzsSubscription requer conexão com o ambiente do Azure Resource Manager do usuário. Use as etapas em Conectar-se ao Azure Stack Hub com o PowerShell, mas use o usuário Azure Resource Manager ponto de extremidade. Por exemplo, Add-AzEnvironment -Name "AzureStackUser" -ArmEndpoint "https://management.local.azurestack.external"
.
$testOffer = Get-AzsOffer | Where-Object Name -eq "testoffer"
New-AzsSubscription -OfferId $testOffer.Id -DisplayName "My subscription"
Excluir cotas, planos, ofertas e assinaturas
Há cmdlets complementares do PowerShell para excluir cotas, planos, ofertas e assinaturas do Azure Stack Hub. Veja a seguir exemplos de cada um deles.
Use Remove-AzsUserSubscription para remover uma assinatura de uma oferta.
Remove-AzsUserSubscription -TargetSubscriptionId "c90173b1-de7a-4b1d-8600-b8325ca1eab1e"
Para remover um plano de uma oferta, use Remove-AzsPlanFromOffer.
Remove-AzsPlanFromOffer -PlanName "addonplan" -PlanLinkType Addon -OfferName "testoffer" -ResourceGroupName "testrg"
Remove-AzsPlanFromOffer -PlanName "testplan" -PlanLinkType Base -OfferName "testoffer" -ResourceGroupName "testrg"
Use Remove-AzsPlan para remover um plano.
Remove-AzsPlan -Name "testplan" -ResourceGroupName "testrg"
Use Remove-AzsOffer para remover uma oferta.
Remove-AzsOffer -Name "testoffer" -ResourceGroupName "testrg"
Para remover cotas, use Remove-AzsStorageQuota, Remove-AzsComputeQuota, Remove-AzsNetworkQuota .
Remove-AzsStorageQuota -Name "Example storage quota with defaults"
Remove-AzsComputeQuota -Name "Example compute quota with defaults"
Remove-AzsNetworkQuota -Name "Example network quota with defaults"