Azure'da kaynakları doğrulama

Tamamlandı

Yanlış üretim kaynak grubundaki tüm geliştirme kaynaklarını değerlendirmişsiniz. Sorunsuz bir şekilde taşınabileceklerini düşünüyorsunuz ama önce test etmek istiyorsunuz.

Bu ünitede bir taşımanın başarılı olacağını doğrulamayı öğreneceksiniz. Ayrıca, taşımalarınızı test etmek ve doğrulamak için Azure REST API validate move işlemini kullanmayı da öğrenirsiniz.

Taşıma işleminizi test etmek için hazırlanma

Bir kaynağı taşımadan önce Azure REST API'den validate move işlemini çağırarak başarılı olup olmayacağını test edebilirsiniz. Bu test özellikle Kaynakları Azure PowerShell veya Azure CLI kullanarak taşımaya çalışıyorsanız kullanışlıdır. Taşımaları minimum insan etkileşimiyle betik olarak kullanmak için bu araçları kullanabilirsiniz. Test amaçlı taşıma işlemleri kaynaklarınızı etkilemez. İşlem yalnızca sağladığınız seçeneklere göre taşıma işleminizin başarılı olup olmayacağını test eder.

Kaynakları Azure portalından taşımaya çalışıyorsanız taşıma işlemi öncesinde doğrulama gerçekleştirmenize gerek yoktur. Azure portalı, kaynak taşıma işleminden önce otomatik doğrulama gerçekleştirir.

REST API, HTTP isteği göndererek çağırabileceğiniz bir programlama arabirimidir. Programcılar REST API'lerini genellikle mobil uygulamalarda olduğu gibi istemcilerden gönderilen özel kodla çağırır. validate move işlemi gibi belirli bir Azure REST yöntemini çağırmak için Azure CLI'yi kullanabilirsiniz:

az rest --method post --uri <enter the correct REST operation URI here>

Çağrılacak doğru REST URI'sini formüle etmek ve diğer gerekli ayrıntıları sağlamak için aşağıdaki bilgileri elde etmeniz gerekir:

  • Azure abonelik kimliğiniz.
  • Kaynaklarınızın bulunduğu kaynak grubunun adı.
  • Özgün kaynak grubunuzdaki kaynakların her birinin kaynak kimliği.
  • Kaynaklarınızı taşımak istediğiniz hedef kaynak grubunun kaynak kimliği.
  • Hesabınızın erişim belirteci.

Azure CLI'yi kullanarak bir Azure REST API işlemi çağırdığınızda abonelik kimliği veya erişim belirteci sağlamanıza gerek yoktur. CLI bu değerleri otomatik olarak ekler.

Taşıma işleminin geçerliliğini test etme

Bu adımda REST API kullanarak taşıma işlemi doğrulama sürecine genel hatlarıyla değineceğiz.

Aşağıdaki ayrıntıları içeren bir POST isteği gönderebilirsiniz:

POST https://management.azure.com/subscriptions/<your-subscription-id>/resourceGroups/<your-source-group>/validateMoveResources?api-version=2019-05-10
Authorization: Bearer <your-access-token>
Content-type: application/json

POST isteğinizin gövdesinde şu bilgilerin yer alması gerekir:

{
 "resources": ["<your-resource-id-1>", "<your-resource-id-2>", "<your-resource-id-3>"],
 "targetResourceGroup": "/subscriptions/<your-subscription-id>/resourceGroups/<your-target-group>"
}

Azure CLI'yi kullanarak bu POST isteğini doğru istek gövdesiyle birlikte göndermek için şu komutu çalıştırın:

az rest --method post \
   --uri https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/<your-source-group>/validateMoveResources?api-version=2019-05-10 \
   --body "{\"resources\": [\"<your-resource-id-1>\", \"<your-resource-id-2>\", \"<your-resource-id-3>\"], \"targetResourceGroup\": \"/subscriptions/<your-subscription-id>/resourceGroups/<your-target-group>\"}" \
   --verbose

İsteğin kabul edilmesi durumunda API 202 durum kodunu döndürür:

Response Code: 202
cache-control: no-cache
pragma: no-cache
expires: -1
location: https://management.azure.com/subscriptions/<your-subscription-id>/operationresults/<your-operation-id>?api-version=2018-02-01
retry-after: 15

Bu aşamada yanıt, API'nin isteğinizi kabul ettiğini ancak taşıma işleminin başarılı olup olmayacağını doğrulamadığını gösterir. Bu yanıt size bir korum URL’si verir. Taşımanızı test etmek için bu konum URL'sini kullanın. Doğrulamanızı test etmeye çalışmadan önce istek doğrulamadaki değerde gösterilen retry-after süre miktarını bekleyin. Bu örnekte değer 15 saniyedir.

Belirtilen süreyi bekledikten sonra konum URL'sine bir GET isteği gönderin:

GET <location-url>
Authorization: Bearer <your-access-token>

Azure CLI'yi kullanarak bu GET isteğini göndermek için şu komutu çalıştırın:

az rest --method get --uri <location-url>

Taşıma işleminiz başarılı olarak doğrulanırsa 204 durum kodu alırsınız. Aksi takdirde, taşıma işleminin başarılı olmadığını belirten aşağıdaki hata iletisini alırsınız:

{"error":{"code":"ResourceMoveProviderValidationFailed","message":"<message>"...}}

Bilgilerinizi kontrol edin

1.

Aşağıdaki durumlardan hangisinde doğrulama testi otomatik olarak gerçekleştirilir?

2.

Aşağıdaki durumlardan hangisinde taşıma doğrulama işlemini gerçekleştirebilmek için bir erişim belirteci edinmeniz gerekir?