Apa itu Bicep?
Bicep adalah bahasa pemrogram khusus domain (DSL) yang menggunakan sintaks deklaratif untuk menyebarkan sumber daya Azure. Dalam file Bicep, tentukan infrastruktur yang ingin Anda sebarkan ke Azure, lalu gunakan file tersebut sepanjang siklus hidup pengembangan untuk menyebarkan infrastruktur Anda secara berulang. Sumber daya Anda disebarkan secara konsisten.
Bicep menyediakan sintaksis ringkas, keamanan jenis yang andal, dan dukungan untuk penggunaan kembali kode. Bicep menawarkan pengalaman penulisan terbaik untuk solusi infrastruktur sebagai kode di Azure.
Keuntungan Bicep
Bicep memberikan keuntungan berikut:
Dukungan untuk semua jenis sumber daya dan versi API: Bicep segera mendukung semua pratinjau dan versi GA untuk layanan Azure. Segera setelah penyedia sumber daya memperkenalkan jenis sumber daya baru dan versi API, Anda dapat menggunakannya dalam file Bicep Anda. Anda tidak perlu menunggu alat diperbarui sebelum menggunakan layanan baru.
Sintaks sederhana: Jika dibandingkan dengan templat JSON yang setara, file Bicep lebih ringkas dan lebih mudah dibaca. Bicep tidak memerlukan pengetahuan sebelumnya tentang bahasa pemrograman. Sintaks Bicep bersifat deklaratif dan menentukan sumber daya dan properti sumber daya mana yang ingin Anda sebarkan.
Contoh berikut ini memperlihatkan perbedaan antara file Bicep dan templat JSON yang setara. Kedua contoh menyebarkan akun penyimpanan.
param location string = resourceGroup().location param storageAccountName string = 'toylaunch${uniqueString(resourceGroup().id)}' resource storageAccount 'Microsoft.Storage/storageAccounts@2023-04-01' = { name: storageAccountName location: location sku: { name: 'Standard_LRS' } kind: 'StorageV2' properties: { accessTier: 'Hot' } }
Pengalaman penulisan: Saat Anda menggunakan Ekstensi Bicep untuk VS Code untuk membuat file Bicep, Anda akan mendapatkan pengalaman menulis kelas satu. Editor menyediakan validasi keamanan jenis intellisense, dan sintaksis yang kaya.
Anda juga dapat membuat file Bicep di Visual Studio dengan ekstensi Bicep untuk Visual Studio.
Hasil yang dapat diulang: Berulang kali menyebarkan infrastruktur Anda sepanjang siklus hidup pengembangan dan memiliki keyakinan sumber daya Anda digunakan secara konsisten. File Bicep merupakan idempoten, yang berarti Anda dapat menyebarkan file yang sama berkali-kali dan mendapatkan jenis sumber daya yang sama dalam kondisi yang sama. Anda dapat mengembangkan satu file yang mewakili kondisi yang diinginkan, daripada mengembangkan banyak tfile terpisah untuk mewakili pembaruan. Misalnya, file berikut membuat akun penyimpanan. Jika Anda menyebarkan templat ini dan akun penyimpanan dengan properti yang ditentukan sudah ada, tidak ada perubahan yang dilakukan.
Orkestrasi: Anda tidak perlu khawatir tentang kerumitan operasi pemesanan. Resource Manager mengatur penyebaran sumber daya yang saling diperlukan sehingga dibuat dalam urutan yang benar. Jika memungkinkan, Resource Manager menerapkan sumber daya secara paralel sehingga penyebaran Anda selesai lebih cepat daripada penyebaran serial. Anda menyebarkan file melalui satu perintah, bukan melalui beberapa perintah imperatif.
Modularitas: Anda dapat memecah kode Bicep menjadi bagian yang dapat dikelola dengan menggunakan modul. Modul ini menyebarkan sekumpulan sumber daya terkait. Modul memungkinkan Anda menggunakan kembali kode dan menyederhanakan pengembangan. Tambahkan modul ke file Bicep kapan saja Anda perlu menyebarkan sumber daya tersebut.
Integrasi dengan layanan Azure: Bicep terintegrasi dengan layanan Azure seperti Azure Policy, spesifikasi template, dan Blueprints.
Perubahan pratinjau: Anda dapat menggunakan operasi bagaimana-jika untuk mendapatkan pratinjau perubahan sebelum menyebarkan file Bicep. Dengan bagaimana jika, Anda melihat sumber daya mana yang akan dibuat, diperbarui, atau dihapus, dan properti sumber daya apa pun yang akan diubah. Operasi bagaimana-jika memeriksa kondisi lingkungan Anda saat ini dan menghilangkan kebutuhan untuk mengelola status.
Tidak ada file status atau kondisi untuk dikelola: Semuanya disimpan di Azure. Pengguna dapat berkolaborasi dan memiliki keyakinan bahwa pembaruan mereka ditangani seperti yang diharapkan.
Tidak ada biaya dan sumber terbuka: Bicep benar-benar gratis. Anda tidak perlu membayar untuk mendapatkan kemampuan premium. Ini juga didukung oleh dukungan Microsoft.
Memulai
Untuk memulai dengan Bicep:
- Pasang alat. Lihat Menyiapkan pengembangan Bicep dan lingkungan penyebaran. Atau, Anda dapat menggunakan repositori Devcontainer/Codespaces Visual Studio Code untuk mendapatkan lingkungan penulisan yang telah dikonfigurasi sebelumnya.
- Selesaikan mulai cepat dan modul Microsoft Learn untuk Bicep.
Untuk mendekompilasi templat ARM yang ada ke Bicep, lihat Mendekompilasi JSON templat ARM ke Bicep. Anda dapat menggunakan Bicep Playground untuk melihat Bicep dan JSON yang setara secara berdampingan.
Untuk mempelajari sumber daya yang tersedia dalam file Bicep Anda, lihat Referensi sumber daya Bicep
Contoh Bicep dapat ditemukan di repositori GitHub Bicep
Tentang bahasa
Bicep tidak dimaksudkan sebagai bahasa pemrograman umum untuk menulis aplikasi. File Bicep mendeklarasikan sumber daya Azure dan properti sumber daya, tanpa menulis urutan perintah pemrograman untuk membuat sumber daya.
Untuk melacak status pekerjaan Bicep, lihat Repositori proyek Bicep.
Untuk mempelajari Bicep, lihat video berikut.
Anda dapat menggunakan Bicep sebagai ganti JSON untuk mengembangkan templat Azure Resource Manager (templat ARM). Sintaksis JSON untuk membuat template ARM dapat menjadi sangat panjang dan memerlukan ekspresi rumit. Sintaks Bicep mengurangi kerumitan tersebut dan meningkatkan pengalaman pengembangan. Bicep adalah abstraksi yang transparan di templat ARM JSON dan tidak kehilangan kemampuan templat JSON apa pun. Saat penyebaran, CLI Bicep mengonversi file Bicep menjadi JSON templat ARM.
Jenis sumber daya, versi API, dan properti yang valid dalam template ARM valid dalam file Bicep.
Bicep menawarkan sintaksis yang lebih mudah dan lebih ringkas jika dibandingkan dengan JSON yang setara. Anda tidak menggunakan ekspresi kurung [...]
. Sebaliknya, Anda langsung memanggil fungsi, dan mendapatkan nilai dari parameter dan variabel. Anda memberikan nama simbolis kepada setiap sumber daya yang disebarkan, sehingga memudahkan referensi sumber daya itu di template Anda.
Untuk perbandingan penuh terkait sintaksis, lihat Membandingkan JSON dan Bicep terkait template.
Bicep secara otomatis mengelola dependensi antar sumber daya. Anda dapat menghindari pengaturan dependsOn
saat nama simbolis sumber daya digunakan dalam deklarasi sumber daya lain.
Struktur file Bicep lebih fleksibel daripada template JSON. Anda dapat mendeklarasikan parameter, variabel, dan output di mana saja dalam file. Di JSON, Anda harus mendeklarasikan semua parameter, variabel, dan output dalam bagian template yang sesuai.
Dapatkan dukungan
Berikut adalah langkah-langkah untuk membuka tiket dukungan untuk masalah terkait templat Azure Resource Manager (ARM):
Buka portal Microsoft Azure.
Pilih ikon Dukungan + Pemecahan Masalah dari sudut kanan atas.
Di Jelaskan masalah secara singkat, masukkan templat ARM, lalu pilih Buka.
Di Layanan mana Anda mengalami masalah?, pilih Portal di bawah Pemantauan & Manajemen, lalu pilih Berikutnya.
Pilih langganan, lalu pilih Berikutnya.
Pilih Masalah dengan templat ARM, lalu pilih Berikutnya.
Langkah berikutnya
Memulai dengan Mulai Cepat.
Untuk jawaban dari pertanyaan umum, lihat Tanya jawab umum untuk Bicep.