私の推しサービスは「Azure Bicep」、Microsoft 公式のIaCツールを使っていこう!
2025-02-12
azblob://2025/02/13/eyecatch/2025-02-13-murakami-favorite-service-azure-bicep-000.png

こんにちは、株式会社FIXERの村上です!

本日は、私が個人的にもっと広まってほしい「Azure Bicep」というサービスについてご紹介します🎉

■ Azure Bicep とは

Bicepは、Microsoftが公式に提供しているAzure向けのInfrastructure as Code (IaC)ツールです。

登場以前はARMテンプレートの択一でしたが、JSON形式でリソース情報を定義するため記述が長くなりがちで、可読性の低さが課題でした。

よく「人類にとってJSONは扱いづらい形式」と言われるほど、書けば書くほど煩雑になってしまうんですよねー(そして誰も触らなくなるゾンビ化現象が...)

そこで生まれたのが、ARMテンプレートのリビジョンにあたる Bicep です。

Terraformのように宣言的なリソースブロックでコードを定義できる「Bicep言語」を採用しており、必要な記述量を大幅に削減しながら、コードの可読性やメンテナンス性を高めてくれるのが特徴です。

■ Azure で採用する IaCツールのシェア率 について

先日、X(Twitter)でアンケートを取ってみたところ、やはりTerraformが不動の1位でした。

企業や案件、エンジニアの既存スキルなど、さまざまな制約を考えると当然の結果かもしれません。

しかし意外だったのが、2位にBicepが入っていたこと!

徐々にMicrosoft純正のIaCツールとしての注目度が高まっているようで、今後の伸びしろに期待大!

■ Azure Bicep の良いところ 3選

1. シンプルな構文と高い可読性

Bicepはシンプルな構文を採用しているため、コード量を減らせるという利点があります。体感 Terraform と同じくらいです。

さらに、可読性が高いことからコードレビューも行いやすく、チーム開発の現場では大きなメリットになります!

(個人的に1番オススメする理由)

2. ARMテンプレートからの移行が容易

これまでARMテンプレートを使っていた案件であれば、Bicepへの移行を検討する価値があります

両者ともMicrosoft純正ツールなので、Bicep CLIを数回実行するだけでARMテンプレートをBicepに変換することが可能です。

特に大規模案件などでは、コードレビューの見落としを防ぐうえでもBicepを採用するメリットが大きいです!

3. Microsoft公式のサポートとツール連携

Made by Microsoft で実装できるんですよ!!最高じゃないですか🎉  VS Code の拡張機能も豊富で優秀です。

■ Terraform から Azure Bicep に置き換えるべきでしょうか?

組織や社員に合わせて、判断することになります。個人としては、置き換えなくてもいい考えです。
マルチクラウドやKubenetes(Helm等)、DB構築 などのリソースプロバイダが提供されており、将来的なビジネス拡大があるのであれば Terraform が最適です。
他にも HashiCorp はTerraform 以外にも Valut や Nomad といったエンタープライズ向けの製品も提供しています。

Microsoft の FAQ にも方針が書かれています。

> Terraform を使い慣れている場合は、切り替える理由はありません。 Microsoft は、Azure の Terraform を最高のものにするために尽力しています。

既存リソースから Terraform に変換する機能も 2024年10月頃に発表されているため、どちらのツールを採用してもOKです。

Azure Export for Terraform の概要