Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure REST API'sini kullanarak Azure DevTest Labs'i kullanmaya başlayın. Azure DevTest Labs, Azure sanal makineleri (VM' ler) ve ağlar gibi bir grup kaynağı kapsar. Bu altyapı, sınırları ve kotaları belirterek bu kaynakları daha iyi yönetmenizi sağlar. Azure REST API, Azure platformunda barındırılan hizmetler üzerindeki işlemleri yönetmenize olanak tanır.
Önkoşullar
Aktif bir aboneliğe sahip bir Azure hesabı. Ücretsiz bir hesap oluşturun.
PowerShell Az Modülü yüklü. En son sürüme sahip olduğunuzdan emin olun. Gerekirse komutunu çalıştırın
Update-Module -Name Az.
İstek gövdesini hazırla
REST çağrısı tarafından kullanılacak istek gövdesini hazırlayın.
Aşağıdaki JSON söz dizimini kopyalayıp adlı body.jsonbir dosyaya yapıştırın. Dosyayı yerel makinenize veya bir Azure depolama hesabına kaydedin.
{
"properties": {
"labStorageType": "Standard"
},
"location": "westus2",
"tags": {
"Env": "alpha"
}
}
Azure aboneliğinizde oturum açın
Değişkenler için uygun bir değer sağlayın ve ardından betiği çalıştırın.
$subscription = "subscriptionID" $resourceGroup = "resourceGroupName" $labName = "labName" $file = "path\body.json"İş istasyonunuzda PowerShell Connect-AzAccount cmdlet'iyle Azure aboneliğinizde oturum açın ve ekrandaki yönergeleri izleyin.
# Sign in to your Azure subscription $sub = Get-AzSubscription -ErrorAction SilentlyContinue if(-not($sub)) { Connect-AzAccount } # If you have multiple subscriptions, set the one to use # Set-AzContext -SubscriptionId $subscription
Gönderim için istek gövdesi oluşturma
PUT isteğinin söz dizimi şöyledir:
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}?api-version=2018-09-15.
İstek değerini bir parametreye geçirmek için aşağıdaki PowerShell betiklerini yürütün. İstek gövdesinin içeriği de bir parametreye geçirilir.
# build URI
$URI = "https://management.azure.com/subscriptions/$subscription/resourceGroups/$resourceGroup/providers/Microsoft.DevTestLab/labs/$labName`?api-version=2018-09-15"
# build body
$body = Get-Content $file
Kimlik doğrulama belirteci edinin
Kimlik doğrulama belirtecini almak için aşağıdaki komutları kullanın:
$azContext = Get-AzContext
$azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile
$profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile)
$token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId)
$authHeader = @{
'Content-Type'='application/json'
'Authorization'='Bearer ' + $token.AccessToken
}
REST API'yi çağırma
REST API'yi çağırmak ve yanıtı gözden geçirmek için aşağıdaki komutları kullanın.
# Invoke the REST API
$response = Invoke-RestMethod -Uri $URI -Method PUT -Headers $authHeader -Body $body
# Review output
$response | ConvertTo-Json
Yanıt aşağıdaki metne benzer görünmelidir:
{
"properties": {
"labStorageType": "Standard",
"mandatoryArtifactsResourceIdsLinux": [
],
"mandatoryArtifactsResourceIdsWindows": [
],
"createdDate": "2021-10-27T20:22:49.7495913+00:00",
"premiumDataDisks": "Disabled",
"environmentPermission": "Reader",
"announcement": {
"title": "",
"markdown": "",
"enabled": "Disabled",
"expired": false
},
"support": {
"enabled": "Disabled",
"markdown": ""
},
"provisioningState": "Creating",
"uniqueIdentifier": "uniqueID"
},
"id": "/subscriptions/ContosoID/resourcegroups/groupcontoso/providers/microsoft.devtestlab/labs/myotherlab",
"name": "myOtherLab",
"type": "Microsoft.DevTestLab/labs",
"location": "westus2",
"tags": {
"Env": "alpha"
}
}
Kaynakları temizle
Bu laboratuvarı kullanmaya devam etmeyecekseniz aşağıdaki adımları izleyerek silin:
Değişkenler için uygun bir değer sağlayın ve ardından betiği çalıştırın.
$subscription = "subscriptionID" $resourceGroup = "resourceGroupName" $labName = "labName"Belirtilen laboratuvarı Azure DevTest Labs'ten kaldırmak için aşağıdaki betiği çalıştırın.
# build URI $URI = "https://management.azure.com/subscriptions/$subscription/resourceGroups/$resourceGroup/providers/Microsoft.DevTestLab/labs/$labName`?api-version=2018-09-15" # obtain access token $azContext = Get-AzContext $azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile $profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile) $token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId) $authHeader = @{ 'Content-Type'='application/json' 'Authorization'='Bearer ' + $token.AccessToken } # Invoke the REST API Invoke-RestMethod -Uri $URI -Method DELETE -Headers $authHeader
Sonraki Adımlar
Bu hızlı başlangıçta Azure REST API'sini kullanarak bir laboratuvar oluşturdunuz. Laboratuvara nasıl erişeceğinizi öğrenmek için sonraki öğreticiye geçin: