Menjelaskan template Azure Resource Manager dan Azure ARM

Selesai

Azure Resource Manager (ARM) adalah layanan penyebaran dan manajemen untuk Azure. Azure Resource Manager menyediakan lapisan manajemen yang memungkinkan Anda membuat, memperbarui, dan menghapus sumber daya di akun Azure Anda. ARM akan terlibat setiap kali Anda melakukan apa pun dengan sumber daya Azure Anda.

Saat pengguna mengirim permintaan dari salah satu alat Azure, API, atau SDK, ARM menerima permintaan tersebut. ARM mengautentikasi dan mengotorisasi permintaan. Kemudian, ARM mengirimkan permintaan ke layanan Azure, yang mengambil tindakan yang diminta. Anda melihat hasil dan kemampuan yang konsisten di semua alat yang berbeda karena semua permintaan ditangani melalui API yang sama.

Keuntungan Azure Resource Manager

Dengan Azure Resource Manager, Anda dapat:

  • Mengelola infrastruktur Anda melalui templat deklaratif daripada skrip. Templat Resource Manager adalah file JSON yang menentukan apa yang ingin Anda terapkan ke Azure.
  • Terapkan, kelola, dan pantau semua sumber daya untuk solusi Anda sebagai grup, daripada menangani sumber daya ini satu per satu.
  • Menerapkan kembali solusi Anda di seluruh siklus hidup pengembangan dan yakin bahwa sumber daya Anda digunakan dalam keadaan yang konsisten.
  • Menentukan dependensi antar sumber daya, sehingga mereka diterapkan dalam urutan yang benar.
  • Terapkan kontrol akses ke semua layanan karena RBAC secara alami terintegrasi ke dalam platform manajemen.
  • Terapkan tag ke sumber daya untuk menata semua sumber daya dalam langganan Anda secara logis.
  • Klarifikasi tagihan organisasi Anda dengan menampilkan biaya untuk sekelompok sumber daya yang memiliki tag yang sama.

Video berikut ini memberikan gambaran umum tentang Azure Resource Manager.

Infrastruktur sebagai kode

Infrastruktur sebagai kode adalah konsep di mana Anda mengelola infrastruktur Anda sebagai baris kode. Pada tingkat pengantar, ini adalah hal-hal seperti menggunakan Azure Cloud Shell, Azure PowerShell, atau Azure CLI untuk mengelola dan mengonfigurasi sumber daya Anda. Saat Anda menjadi lebih nyaman di cloud, Anda dapat menggunakan infrastruktur sebagai konsep kode untuk mengelola seluruh penyebaran menggunakan templat dan konfigurasi yang dapat diulang. Templat ARM dan Bicep adalah dua contoh penggunaan infrastruktur sebagai kode dengan Azure Resource Manager untuk mempertahankan lingkungan Anda.

Templat ARM

Dengan menggunakan template ARM, Anda dapat menjelaskan sumber daya yang ingin Anda gunakan dalam format JSON deklaratif. Dengan template ARM, kode penyebaran diverifikasi sebelum kode apa pun dijalankan. Ini memastikan bahwa sumber daya akan dibuat dan terhubung dengan benar. Templat kemudian mengatur pembuatan sumber daya tersebut secara paralel. Artinya, jika Anda membutuhkan 50 instans sumber daya yang sama, seluruh 50 instans dibuat pada saat yang sama.

Pada akhirnya, pengembang, profesional DevOps, atau profesional TI hanya perlu menentukan status dan konfigurasi yang diinginkan dari tiap sumber daya dalam templat ARM, dan templat melakukan sisanya. Templat bahkan dapat menjalankan skrip PowerShell dan Bash sebelum atau sesudah sumber daya disiapkan.

Manfaat menggunakan templat ARM

Template ARM memberikan banyak keuntungan saat merencanakan penyebaran sumber daya Azure. Beberapa keuntungan tersebut antara lain:

  • Sintaks deklaratif: Templat ARM memungkinkan Anda untuk membuat dan menerapkan seluruh infrastruktur Azure secara deklaratif. Sintaks deklaratif berarti Anda mendeklarasikan apa yang ingin Anda terapkan tetapi tidak perlu menulis perintah dan urutan pemrograman aktual untuk menyebarkan sumber daya.
  • Hasil yang dapat diulang: Berulang kali menyebarkan infrastruktur Anda sepanjang siklus hidup pengembangan dan memiliki keyakinan sumber daya Anda digunakan secara konsisten. Anda dapat menggunakan template ARM yang sama untuk menerapkan beberapa lingkungan pengembangan/pengujian, mengetahui bahwa semua lingkungan adalah sama.
  • Orkestrasi: Anda tidak perlu khawatir tentang kerumitan operasi pemesanan. Azure Resource Manager mengatur penyebaran sumber daya yang saling bergantung, sehingga dibuat dalam urutan yang benar. Jika memungkinkan, Azure Resource Manager menyebarkan sumber daya secara paralel, sehingga penyebaran Anda selesai lebih cepat daripada penyebaran bertahap. Anda menerapkan templat melalui satu perintah, bukan melalui beberapa perintah penting.
  • File modular: Anda dapat memutus template Anda menjadi komponen yang lebih kecil dan dapat digunakan kembali dan menautkannya bersama-sama pada waktu penyebaran. Anda juga dapat menyarangkan satu templat di dalam templat lain. Misalnya, Anda dapat membuat template untuk tumpukan VM, lalu menumpuk template tersebut di dalam template yang menyebarkan seluruh lingkungan, dan tumpukan VM tersebut akan disebarkan secara konsisten di setiap template lingkungan.
  • Ekstensibilitas: Dengan skrip penyebaran, Anda dapat menambahkan skrip PowerShell atau Bash ke template. Skrip penyebaran memperluas kemampuan Anda untuk menyiapkan sumber daya selama penyebaran. Skrip dapat dimasukkan dalam template atau disimpan dalam sumber eksternal dan direferensikan dalam template. Skrip penerapan memberi Anda kemampuan untuk menyelesaikan penyiapan lingkungan end-to-end Anda dalam satu template ARM.

Bicep

Bicep adalah bahasa yang menggunakan sintaksis deklaratif untuk menyebarkan sumber daya Azure. File Bicep menentukan infrastruktur dan konfigurasi. Kemudian, ARM menyebarkan lingkungan tersebut berdasarkan file Bicep Anda. Meskipun mirip dengan templat ARM, yang ditulis dalam JSON, file Bicep cenderung menggunakan gaya yang lebih sederhana dan lebih ringkas.

Beberapa manfaat Bicep adalah:

  • 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.
  • 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.
  • 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 Anda 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.