Aracılığıyla paylaş


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 sonra 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. Bir 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 dağıtmak istediğiniz kaynakları ve kaynak özelliklerini 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.

  • Yinelenebilir 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 eminim. Bicep dosyaları bir kez etkili olur, yani 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. Örneğin, aşağıdaki dosya bir depolama hesabı oluşturur. Bu şablonu dağıtırsanız ve belirtilen özelliklere sahip depolama hesabı zaten varsa, hiçbir değişiklik yapılmaz.

    param location string = resourceGroup().location
    
    resource mystore 'Microsoft.Storage/storageAccounts@2023-04-01' = {
      name: 'mystorageaccount'
      location: location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
    }
    

  • Düzenleme: İşlemleri sıralamanın karmaşıklıkları konusunda endişelenmeniz gerekmez. Resource Manager, birbirine bağlı kaynakların doğru sırada oluşturulması için dağıtımını düzenler. 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 kaynak 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ştirilir.

  • Değişiklikleri önizleme: Bicep dosyasını dağıtmadan önce değişikliklerin önizlemesini almak için durum işlemini kullanabilirsiniz. Durum ile, hangi kaynakların oluşturulacağını, güncelleştirileceğini veya silineceğini ve değiştirilecek kaynak özelliklerini görürsünüz. What-if 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şleneceğini garanti edebilir.

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

Kullanmaya başlayın

Bicep’i kullanmaya başlamak için:

  1. Araçları yükleyin. Bkz. Bicep geliştirme ve dağıtım ortamlarını ayarlayın. Alternatif olarak, önceden yapılandırılmış bir yazma ortamı almak için VS Code Devcontainer/Codespaces depoyu da kullanabilirsiniz.
  2. Bicep için hı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'i ve eşdeğer JSON'ı yan yana görüntülemek için Bicep Oyun Alanı'nı kullanabilirsiniz.

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 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, 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ümleri içinde 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.