Bicep nedir?

Bicep, Azure kaynaklarını dağıtmak için bildirim temelli söz dizimi kullanan etki alanına özgü bir dildir (DSL). Bir Bicep dosyasında, Azure'a dağıtmak istediğiniz altyapıyı tanımlarsınız ve ardından bu dosyayı geliştirme yaşam döngüsü boyunca kullanarak altyapınızı tekrar tekrar dağıtırsınız. Kaynaklarınız tutarlı bir şekilde dağıtılır.

Bicep kısa söz dizimi, güvenilir tür güvenliği ve kod yeniden kullanımı desteği sağlar. Bicep, Azure'daki kod olarak altyapı çözümleriniz için birinci sınıf bir yazma deneyimi sunar.

Bicep'in avantajları

Bicep aşağıdaki avantajları sağlar:

  • Tüm kaynak türleri ve API sürümleri için destek: Bicep, Azure hizmetleri için tüm önizleme ve GA sürümlerini hemen destekler. Kaynak sağlayıcısı yeni kaynak türlerini ve API sürümlerini kullanıma sunar sunmaz bunları Bicep dosyanızda kullanabilirsiniz. Yeni hizmetleri kullanmadan önce araçların güncelleştirilmesini beklemeniz gerekmez.

  • Basit söz dizimi: Eşdeğer JSON şablonuyla karşılaştırıldığında, Bicep dosyaları daha kısadır ve daha kolay okunur. Bicep, programlama dilleri hakkında daha önce bilgi sahibi olmayı gerektirmez. Bicep söz dizimi bildirim temellidir ve hangi kaynakları ve kaynak özelliklerini dağıtmak istediğinizi belirtir.

    Aşağıdaki örneklerde Bicep dosyası ile eşdeğer JSON şablonu arasındaki fark gösterilmektedir. Her iki örnek de bir depolama hesabı dağıtır.

    param location string = resourceGroup().location
    param storageAccountName string = 'toylaunch${uniqueString(resourceGroup().id)}'
    
    resource storageAccount 'Microsoft.Storage/storageAccounts@2021-06-01' = {
      name: storageAccountName
      location: location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
      properties: {
        accessTier: 'Hot'
      }
    }
    

  • Yazma deneyimi: Bicep dosyalarınızı oluşturmak için VS Code için Bicep Uzantısı'nı kullandığınızda birinci sınıf bir yazma deneyimi elde edersiniz. Düzenleyici zengin tür güvenliği, intellisense ve söz dizimi doğrulaması sağlar.

    Bicep dosya yazma örneği

    Visual Studio için Bicep uzantısıyla Visual Studio'da Bicep dosyaları da oluşturabilirsiniz.

  • Tekrarlanabilir sonuçlar: Altyapınızı geliştirme yaşam döngüsü boyunca tekrar tekrar dağıtın ve kaynaklarınızın tutarlı bir şekilde dağıtıldığından güvenin. Bicep dosyaları bir kez etkili olduğundan, aynı dosyayı birçok kez dağıtabilir ve aynı kaynak türlerini aynı durumda alabilirsiniz. Güncelleştirmeleri temsil eden çok sayıda ayrı dosya geliştirmek yerine istenen durumu temsil eden bir dosya geliştirebilirsiniz.

  • Düzenleme: Sıralama işlemlerinin karmaşıklıkları konusunda endişelenmeniz gerekmez. Resource Manager, birbirine bağımlı kaynakların dağıtımını düzenler, böylece doğru sırada oluşturulurlar. Mümkün olduğunda Resource Manager, dağıtımlarınızın seri dağıtımlardan daha hızlı bitmesi için kaynakları paralel olarak dağıtır. Dosyayı birden çok kesinlik temelli komut yerine tek bir komutla dağıtırsınız.

    Bicep dağıtım karşılaştırması

  • Modülerlik: Modülleri kullanarak Bicep kodunuzu yönetilebilir parçalara ayırabilirsiniz. Modül, bir dizi ilgili kaynağı dağıtır. Modüller kodu yeniden kullanmanıza ve geliştirmeyi basitleştirmenize olanak tanır. Bu kaynakları dağıtmanız gerektiğinde modülü bir Bicep dosyasına ekleyin.

  • Azure hizmetleriyle tümleştirme: Bicep, Azure İlkesi, şablon özellikleri ve Şemalar gibi Azure hizmetleriyle tümleşiktir.

  • Değişiklikleri önizleme: Bicep dosyasını dağıtmadan önce değişikliklerin önizlemesini almak için durum işlemini kullanabilirsiniz. What-if ile, hangi kaynakların oluşturulacağını, güncelleştirileceğini veya silineceğini ve değiştirilecek tüm kaynak özelliklerini görürsünüz. Durum işlemi ortamınızın geçerli durumunu denetler ve durumu yönetme gereksinimini ortadan kaldırır.

  • Yönetecek durum veya durum dosyası yok: Tüm durum Azure'da depolanır. Kullanıcılar işbirliği yapabilir ve güncelleştirmelerinin beklendiği gibi işlendiğini görebilir.

  • Ücretsiz ve açık kaynak: Bicep tamamen ücretsizdir. Premium özellikler için ödeme yapmak zorunda değilsiniz. Microsoft desteği tarafından da desteklenir.

Başlarken

Bicep ile başlamak için:

  1. Araçları yükleyin. Bkz. Bicep geliştirme ve dağıtım ortamlarını ayarlama. Alternatif olarak, önceden yapılandırılmış bir yazma ortamı almak için VS Code Devcontainer/Codespaces depoyu da kullanabilirsiniz.
  2. Bicep içinhızlı başlangıcı ve Learn modüllerini tamamlayın.

Mevcut ARM şablonunu Bicep'e derlemek için bkz. ARM şablonu JSON'yi Bicep'e derleme. Bicep Oyun Alanı'nı kullanarak Bicep'i ve eşdeğer JSON'ı yan yana görüntüleyebilirsiniz.

Bicep dosyanızda bulunan kaynaklar hakkında bilgi edinmek için bkz. Bicep kaynak başvurusu

Bicep örnekleri Bicep GitHub deposunda bulunabilir

Dil hakkında

Bicep, uygulama yazmak için genel bir programlama dili olarak tasarlanmamıştır. Bicep dosyası, kaynak oluşturmak için bir dizi programlama komutu yazmadan Azure kaynaklarını ve kaynak özelliklerini bildirir.

Bicep çalışmasının durumunu izlemek için bkz. Bicep proje deposu.

Bicep hakkında bilgi edinmek için aşağıdaki videoya bakın.

Azure Resource Manager şablonlarınızı (ARM şablonları) geliştirmek için JSON yerine Bicep'i kullanabilirsiniz. ARM şablonu oluşturmak için JSON söz dizimi ayrıntılı olabilir ve karmaşık ifadeler gerektirebilir. Bicep söz dizimi bu karmaşıklığı azaltır ve geliştirme deneyimini geliştirir. Bicep, ARM şablonu JSON üzerinde saydam bir soyutlamadır ve JSON şablonu özelliklerinden hiçbirini kaybetmez. Dağıtım sırasında Bicep CLI bir Bicep dosyasını ARM şablonu JSON'a dönüştürür.

ARM şablonunda geçerli olan kaynak türleri, API sürümleri ve özellikler Bicep dosyasında geçerlidir.

Bicep, eşdeğer JSON ile karşılaştırıldığında daha kolay ve daha kısa bir söz dizimi sunar. Köşeli ayraçlı ifadeler [...]kullanmazsınız. Bunun yerine, doğrudan işlevleri çağırır ve parametrelerden ve değişkenlerden değerler alırsınız. Dağıtılan her kaynağa sembolik bir ad verirsiniz ve bu da şablonunuzda bu kaynağa başvurmayı kolaylaştırır.

Söz diziminin tam karşılaştırması için bkz. Şablonlar için JSON ve Bicep karşılaştırması.

Bicep, kaynaklar arasındaki bağımlılıkları otomatik olarak yönetir. Bir kaynağın sembolik adı başka bir kaynak bildiriminde kullanıldığında ayarını dependsOn yapmaktan kaçınabilirsiniz.

Bicep dosyasının yapısı JSON şablonundan daha esnektir. Parametreleri, değişkenleri ve çıkışları dosyanın herhangi bir yerinde bildirebilirsiniz. JSON'da, şablonun ilgili bölümlerindeki tüm parametreleri, değişkenleri ve çıkışları bildirmeniz gerekir.

Sonraki adımlar

Hızlı Başlangıç'ı kullanmaya başlayın.

Sık sorulan soruların yanıtları için bkz. Bicep için sık sorulan sorular.