Поделиться через


Использование PowerShell для управления подписками, планами и предложениями в Azure Stack Hub

PowerShell можно использовать для настройки и доставки служб с помощью предложений, планов и подписок. Инструкции по настройке с помощью PowerShell в Azure Stack Hub см. в статье Установка модуля PowerShell Az для Azure Stack Hub. Сведения о подключении к Azure Stack Hub с помощью PowerShell см. в статье Connect to Azure Stack Hub с помощью PowerShell.

Перед началом работы убедитесь, что модуль PowerShell Azure Stack Hub загружается. В консоли PowerShell введите Import-Module AzureStack.

Создание плана

Квоты требуются при создании плана. Можно использовать существующие квоты или создать новые квоты. Например, чтобы создать квоты для хранилища, вычислений и сети, можно использовать командлеты New-AzsStorageQuota, New-AzsComputeQuotaи 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

Чтобы создать или обновить базовый или дополнительный план, используйте New-AzsPlan.

$testPlan = New-AzsPlan -Name "testplan" -ResourceGroupName "testrg" -QuotaIds $serviceQuotas -Description "Test plan"

Создание предложения

Чтобы создать предложение, используйте New-AzsOffer.

New-AzsOffer -Name "testoffer" -ResourceGroupName "testrg" -BasePlanIds @($testPlan.Id)

После получения предложения вы можете добавить планы в предложение. Используйте Add-AzsPlanToOffer. Параметр -PlanLinkType отличает тип плана.

Add-AzsPlanToOffer -PlanName "addonplan" -PlanLinkType Addon -OfferName "testoffer" -ResourceGroupName "testrg" -MaxAcquisitionCount 18

Если вы хотите изменить состояние предложения, используйте командлет Set-AzsOffer.

$offer = Get-AzsAdminManagedOffer -Name "testoffer" -ResourceGroupName "testrg"
$offer.state = "Public"
$offer | Set-AzsOffer -Confirm:$false

Создание подписки на предложение

После создания предложения пользователям потребуется подписка на это предложение, прежде чем они смогут его использовать. Существует два способа, которым пользователи могут подписаться на предложение:

  • Как оператор облака можно создать подписку для пользователя. Создаваемые подписки можно использовать как для общедоступных, так и для частных предложений.
  • Как пользователь, вы можете подписаться на общедоступное предложение.

Чтобы создать подписку для пользователя в качестве оператора облака, используйте New-AzsUserSubscription.

New-AzsUserSubscription -Owner "user@contoso.com" -DisplayName "User subscription" -OfferId "/subscriptions/<Subscription ID>/resourceGroups/testrg/providers/Microsoft.Subscriptions.Admin/offers/testoffer"

Чтобы подписаться на общедоступное предложение в качестве пользователя, используйте New-AzsSubscription. New-AzsSubscription требует подключения к пользовательской среде Azure Resource Manager. Выполните действия, описанные в разделе Подключение к Azure Stack Hub с помощью PowerShell, но используйте конечную точку Azure Resource Manager. Например, 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"

Удаление квот, планов, предложений и подписок

Существуют командлеты PowerShell для удаления квот Azure Stack Hub, планов, предложений и подписок. Ниже показаны примеры для каждого из них.

Используйте Remove-AzsUserSubscription для удаления подписки из предложения.

Remove-AzsUserSubscription -TargetSubscriptionId "c90173b1-de7a-4b1d-8600-b8325ca1eab1e"

Чтобы удалить план из предложения, используйте Remove-AzsPlanFromOffer.

Remove-AzsPlanFromOffer -PlanName "addonplan" -PlanLinkType Addon -OfferName "testoffer" -ResourceGroupName "testrg"
Remove-AzsPlanFromOffer -PlanName "testplan" -PlanLinkType Base -OfferName "testoffer" -ResourceGroupName "testrg"

Чтобы удалить план, воспользуйтесь командой Remove-AzsPlan.

Remove-AzsPlan -Name "testplan" -ResourceGroupName "testrg"

Для удаления предложения используйте команду Remove-AzsOffer.

Remove-AzsOffer -Name "testoffer" -ResourceGroupName "testrg"

Чтобы удалить квоты, используйте 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"

Дальнейшие действия