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.
Not
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
- Terraform'u yükleme ve yapılandırma
- Azure CLI'yi yükleme ve oturum açma (v 2.38.0+)
- Node.js veya Python Terraform şablonunda dağıtabileceğiniz mimari diyagramını ve Azure kaynaklarını gözden geçirin.
Not
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
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
Tüm dosyalarınızı
infra
projenizin.tf
kökünde bulunan dizine ekleyin.azd up
'i çalıştırın.
Not
Terraform as IaC Provider ile ş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
Uzak durum depolama hesabı yapılandırdığınızdan emin olun.
klasörüne adlı
provider.conf.json
infra
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}" }
Arka ucu uzak olarak ayarlamak için klasörde bulunan
infra
güncelleştirmeprovider.tf
# Configure the Azure Provider terraform { required_version = ">= 1.1.7, < 2.0.0" backend "azurerm" { }
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
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.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.
- Terraform'un Azure CLI bağımlılığı hakkında daha fazla bilgi edinin.
- Uzak durum hakkında daha fazla bilgi için bkz . Terraform durumunu Azure Depolama'da depolama.
- Şablon: Azure'da Node.js API ve MongoDB (Terraform) ile React Web App
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