Aracılığıyla paylaş


Terraform'un Azure Geliştirici CLI'sı için kod aracı olarak altyapı olarak kullanma

Azure Geliştirici CLI 'si (azd), aşağıdakiler dahil olmak üzere birden çok kod olarak altyapı (IaC) sağlayıcısını destekler:

Varsayılan olarak, azd Bicep'i IaC sağlayıcısı olarak kabul eder. Projeniz için en uygun IaC sağlayıcısını belirleme konusunda yardım için Terraform ve Bicep karşılaştırma makalesine bakın.

Dekont

Terraform hala beta aşamasında. Özellik sürümü oluşturma ve sürüm stratejisi sayfasında alfa ve beta özellik desteği hakkında daha fazla bilgi edinin

Önkoşullar

Dekont

azd Terraform, Azure CLI oturum açma bilgilerini kullanmasa da Azure CLI gerektirir. Terraform'un resmi belgelerinden bu gereksinim hakkında daha fazla bilgi edinin.

Terraform'ı IaC sağlayıcısı olarak yapılandırma

  1. azure.yaml Projenizin kökünde bulunan dosyayı açın ve varsayılanı (Bicep) geçersiz kılmak için aşağıdaki satırlara sahip olduğunuzdan emin olun:

    infra:
      provider: terraform
    
  2. Tüm dosyalarınızı infra projenizin .tf kökünde bulunan dizine ekleyin.

  3. azd up'i çalıştırın.

Dekont

Terraform ile IaC Sağlayıcısı olarak şu iki azd şablonuna göz atın: Node.js ve Terraform ile Python ve Terraform.

azd pipeline config Terraform için

Terraform, yönetilen altyapınız ve yapılandırmanız hakkındaki durumu depolar. Bu durum dosyası nedeniyle, GitHub'da dağıtım işlem hattınızı ayarlamak için çalıştırmadan azd pipeline config önce uzak durumu etkinleştirmeniz gerekir.

Varsayılan olarak, azd yerel durum dosyasının kullanıldığını varsayar. Uzak durumu etkinleştirmeden önce çalıştırdıysanız azd up , komutunu çalıştırmanız azd down ve uzak durum dosyasına geçmeniz gerekir.

Yerel ve uzak durum

Terraform, yönettiği kaynakları izlemek için kalıcı durum verilerini kullanır.

Uzak durumu etkinleştirme senaryoları:

  • Durum verilerine paylaşılan erişime izin vermek ve bu altyapı kaynakları koleksiyonu üzerinde birden çok kişinin birlikte çalışmasına izin vermek için
  • Durum dosyasına dahil edilen hassas bilgilerin açığa çıkmasına engel olmak için
  • Durumu yerel olarak depolama nedeniyle yanlışlıkla silme olasılığını azaltmak için

Uzak durumu etkinleştirme

  1. Uzak durum depolama hesabı yapılandırdığınızdan emin olun.

  2. klasörüne adlı provider.conf.jsoninfra yeni bir dosya ekleyin.

    {
        "storage_account_name": "${RS_STORAGE_ACCOUNT}",
        "container_name": "${RS_CONTAINER_NAME}",
        "key": "azd/azdremotetest.tfstate",
        "resource_group_name": "${RS_RESOURCE_GROUP}"
    }
    
  3. Arka ucu uzak olarak ayarlamak için klasörde bulunan infra güncelleştirme provider.tf

    # Configure the Azure Provider
    terraform {
      required_version = ">= 1.1.7, < 2.0.0"
      backend "azurerm" {
      }
    
  4. Dosyaya yapılandırma .env eklemek için komutunu çalıştırınazd env set <key> <value>. Örneğin:

    azd env set RS_STORAGE_ACCOUNT your_storage_account_name
    azd env set RS_CONTAINER_NAME your_terraform_container_name
    azd env set RS_RESOURCE_GROUP your_storage_account_resource_group
    
  5. Bir sonraki azd komutu her zamanki iş akışınıza göre çalıştırın. Uzak durum algılandığında Terraform'ı azd yapılandırılan arka uç yapılandırmasıyla başlatır.

  6. Ortamı ekip arkadaşlarınızla paylaşmak için yerel sistemdeki ortam ayarlarını yenilemek için çalıştıklarından azd env refresh -e <environmentName> emin olun ve dosyaya yapılandırma eklemek için 4. Adımı gerçekleştirin .env .

Ayrıca bkz.

Sonraki adımlar