Terraform AzAPI sağlayıcısına genel bakış
AzAPI sağlayıcısı, Azure ARM REST API'lerinin üzerinde ince bir katmandır. AzAPI sağlayıcısı, herhangi bir API sürümünü kullanarak herhangi bir Azure kaynak türünü yönetmenizi sağlar. Bu sağlayıcı, yeni Azure kaynaklarının ve özelliklerinin (özel önizleme dahil) yönetimini etkinleştirerek AzureRM sağlayıcısını tamamlar.
Kaynaklar
Güncelleştirme gerektirmeden tüm Azure kaynaklarını ve özelliklerini yönetmenize olanak sağlamak için AzAPI sağlayıcısı aşağıdaki genel kaynakları içerir:
Kaynak Adı | Açıklama |
---|---|
azapi_resource | Tüm Azure (denetim düzlemi) kaynaklarını (API) tam CRUD ile tam olarak yönetmek için kullanılır. Örnek Kullanım Örnekleri: Yeni önizleme hizmeti Mevcut hizmete yeni özellik eklendi Mevcut özellik / hizmet şu anda kapsanmayan |
azapi_update_resource | Tam CRUD'a sahip olmayan kaynakları veya kaynakların bölümlerini yönetmek için kullanılır Örnek Kullanım Örnekleri: Mevcut bir hizmette yeni özellikleri güncelleştirme DNS SOA kaydı gibi önceden oluşturulmuş alt kaynağı güncelleştirin. |
Kaynak yapılandırma örnekleri
Aşağıdaki kod parçacığı şu anda AzureRM sağlayıcısında mevcut olmayan bir kaynağı yapılandırıyor:
resource "azapi_resource" "publicip" {
type = "Microsoft.Network/Customipprefixes@2021-03-01"
name = "exfullrange"
parent_id = azurerm_resource_group.example.id
location = "westus2"
body = jsonencode({
properties = {
cidr = "10.0.0.0/24"
signedMessage = "Sample Message for WAN"
}
})
}
Aşağıdaki kod parçacığı, AzureRM'den var olan bir kaynak için önizleme özelliğini yapılandırmaktadır:
resource "azapi_update_resource" "test" {
type = "Microsoft.ContainerRegistry/registries@2020-11-01-preview"
resource_id = azurerm_container_registry.acr.id
body = jsonencode({
properties = {
anonymousPullEnabled = var.bool_anonymous_pull
}
})
}
AzAPI sağlayıcısını kullanarak kimlik doğrulaması
AzAPI sağlayıcısı, AzureRM sağlayıcısıyla aynı kimlik doğrulama yöntemlerini etkinleştirir. Kimlik doğrulama seçenekleri hakkında daha fazla bilgi için bkz . Terraform'un Azure'da kimliğini doğrulama.
AzAPI sağlayıcısını kullanmanın avantajları
AzAPI sağlayıcısı aşağıdaki avantajları sunar:
- Tüm Azure hizmetlerini destekler:
- Özel önizleme hizmetleri ve özellikleri
- Genel önizleme hizmetleri ve özellikleri
- Tüm API sürümleri
- Tam Terraform durum dosyası uygunluğu
- Özellikler ve değerler duruma kaydedilir
- Swagger bağımlılığı yok
- Yaygın ve tutarlı Azure kimlik doğrulaması
AzAPI sağlayıcısının deneyimi ve yaşam döngüsü
Bu bölümde, AzAPI sağlayıcısını kullanmanıza yardımcı olacak bazı araçlar açıklanmaktadır.
VS Code uzantısı ve Dil Sunucusu
AzAPI VS Code uzantısı, aşağıdaki avantajlarla zengin bir yazma deneyimi sağlar:
- Intellisense
- Kod otomatik tamamlama
- İpuçları
- Söz dizimi doğrulama
- Hızlı bilgi
AzAPI2AzureRM geçiş aracı
AzureRM sağlayıcısı, Azure kaynaklarını yönetmek için en tümleşik Terraform deneyimini sağlar. Bu nedenle, AzAPI ve AzureRM sağlayıcılarının önerilen kullanımı aşağıdaki gibidir:
- Hizmet veya özellik önizleme aşamasındayken AzAPI sağlayıcısını kullanın.
- hizmet resmi olarak yayımlandıktan sonra AzureRM sağlayıcısını kullanın.
AzAPI2AzureRM aracı, AzAPI sağlayıcısından AzureRM sağlayıcısına geçişe yardımcı olmak için tasarlanmıştır.
AzAPI2AzureRM, AzAPI kaynaklarını AzureRM kaynaklarına dönüştürme işlemini otomatik hale getiren bir açık kaynak aracıdır.
AzAPI2AzureRM'nin iki modu vardır: planlama ve geçirme:
- Plan, geçirilebilen AzAPI kaynaklarını görüntüler.
- Geçişi, AzAPI kaynaklarını hem HCL dosyalarında hem de durumdaki AzureRM kaynaklarına geçirir.
AzAPI2AzureRM, geçiş sonrasında Terraform yapılandırmanızın ve durumunuzun gerçek durumunuzla uyumlu olmasını sağlar. Hiçbir şeyin değişmediğini görmek için geçişi tamamladıktan sonra çalıştırarak terraform plan
durumun güncelleştirildiğini doğrulayabilirsiniz.
AzAPI sağlayıcısını kullanma
AzAPI sağlayıcısını Terraform yapılandırmanıza ekleyin.
terraform { required_providers { azapi = { source = "Azure/azapi" } } } provider "azapi" { # More information on the authentication methods supported by # the AzureRM Provider can be found here: # https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs # subscription_id = "..." # client_id = "..." # client_secret = "..." # tenant_id = "..." }
Aşağıdaki örnek kodda gösterildiği gibi bir veya daha fazla AzAPI kaynağı bildirin:
resource "azapi_resource" "example" { name = "example" parent_id = data.azurerm_machine_learning_workspace.existing.id type = "Microsoft.MachineLearningServices/workspaces/computes@2021-07-01" location = "eastus" body = jsonencode({ properties = { computeType = "ComputeInstance" disableLocalAuth = true properties = { vmSize = "STANDARD_NC6" } } }) }
Sonraki adımlar
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin