Azure ARMテンプレートを使ってみた
こんにちは。MSP部 オペレーター石橋です。
オペレーター業務としては、アラート対応・メールでの問い合わせ対応や監視先の障害復旧対応や一部の監視設定・環境設定作業を行わせていただいております。
好きなAzureのサービスはApp Service、趣味はダーツになります。
今回はAzure ARMテンプレートの特徴や、実際の使い方を紹介いたします。
Azure ARMテンプレートとは?
インフラサービスの一つであるMicrosoft Azureでインスタンス(VM)とかコンテナー、AWSのLambdaに該当するAzure Functionsなどを構築する際にjsonファイルの記述でリソースを構築できる機能(正確にはサービスとは違う)になります。
この機能が便利な点は以下になります。
- jsonファイルで作成できるので普段CLIやAPIを使っている人はとっつきやすい
- Azure Portal(AWSのマネコンに該当するコンソール)でリソースを作成する際にjsonファイルで出力される
- リソースを作成する直前でjsonファイルで出力しておけばキャンセルしたり同じものを作成するときにそのjsonファイルで再度構築できる
実際にやってみた
今回はサイト作成やブログなどのコンテンツでよく使用されるWordPressを立ててみます。
Azure Portalの検索画面で「wordpress」と検索してWordPressを検索してWordPressを選択
AppserviceにてWordPressが立てられるので最低料金になるようにこまごま設定
そして作成する直前で「Automation オプション」を選択すると、先ほど作成した設定についてjsonファイルでテンプレートファイルとその設定値のパラメーターファイルの一覧が作成されます。
それを直接ダウンロードすると、直接jsonファイルとしてダウンロードされ編集することも可能です。
もちろんダウンロード後にAzure Portal上でデプロイも可能です。
ですが今回はダウンロードしたjsonファイルをどのようにしてアップロードデプロイするか簡単に説明します。
ダウンロードしたjsonファイルをアップロードしてデプロイする
Azure Portalの検索画面で「テンプレート」と検索してカスタムテンプレートのデプロイを選択します
カスタムテンプレートのデプロイの画面で「エディターで独自のテンプレートを作成する」を選択
直接jsonエディターが出てくるので、ダウンロードした2つのファイルを使ってパラメーター及びテンプレートを設定すると先ほどと同じWordPressの設定でデプロイできるというものです。
※一部のOSやDBパスワードや認証情報はセキュリティ上jsonファイルに記載されてなく、作成時に入力など必要です。
こんな感じで作成しようとしてキャンセルした検証環境などをjsonで保存したり(プレビューですが)Azure Portal上に保存できたりと便利です。
チュートリアルやハンズオンも含めたドキュメントもございます。ご参照ください
https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/templates/