Azure リソース編集方法の使い分けと Azure Resource Explorer が便利だという話

AzureResourceExplorer をときどき使っていて便利だと感じているのでそれについて書く。
Azure をある程度使ってるがまださほど詳しくない、という人には参考になる部分がありそう。

Azure リソース編集方法の使い分け

Azure のリソースを編集する方法は、大きく3つだ。
スクリプト(azure-cli, PowerShell)、Azure ポータル、それから今回の AzureResourceExplorer である。
(他にも ARM TempleteREST API などもあるが割愛)

それぞれ特徴を上げる。

azure-cli, PowerShell

  • 新しいサービスリリース時の対応が早い
  • 特に azure-cli を使ったサンプルをよく見かける
  • Azure Cloud Shell の存在も相まって使い勝手がよい
  • スクリプトの流用しやすい

Azure ポータル

AzureResourceExplorer

  • 一部リソースの編集がしやすい
  • Azure の概念を理解しやすい
  • ARM Templete を書きたいときに参考になる
  • イチから作成するには不向き

このあと解説する。

便利なシーン

Network Security Group(NSG) のルールを一気に変更するときに便利

NSG のルールを編集しようとすると、azure-cli でも Azure ポータルでも一つずつしか変更ができず、毎回更新が入ってしまい、複数のルールをまとめて登録したいときに時間がかかる。
NSG のルール数は 上限が規定で200 なのでそこまで多くのルールを登録することはないかもしれないが、場合によってはあるだろう。
そういったときに JSON ベースで編集ができる Azure Resource Explorer ならば一気に複数ルールを編集し、更新することができる。
間違って設定したルールをまとめて削除するのも簡単だ。
これは非常に便利。

Azure の概念を理解しやすい

Azure ではまずリソースを購入するために必要なサブスクリプションや、AWS など他のクラウドにない概念としてリソースグループという概念がある。

f:id:khei-fuji:20171121235827p:plain

上の図のように、サブスクリプション、リソースグループ、リソースの種類に応じた namespace、リソース名、といった格好だ。
Azure のリソースはこれらの組み合せで URL がつくようになっている。 この URL を Get すればそのリソースの構成情報が JSON で取得できる、というシンプルなものだ。

これがわかると、リソースグループをまたげば同名のリソースを作れることや、サブスクリプション・リソースグループ・リソースの各階層でアクセス権限が設定できることがしっくりくる。

ARM Templete を書きたいときに参考になる

Azure には ARM Templete という、JSON で書いたファイルを使ってリソース群をまとめてデプロイする方法がある。
どんな風に書けば作れるかは azure-quick-templates を覗き見するのが早いだろう。
これを使って GitHub 上に Deploy To Azure ボタンをつけることもできる。

Deploy To Azure ボタンについてはこのあたりが詳しい。

ARM Templete を書くのは面倒なのだが、正しい状況を作ってから Azure Resource Explorer で JSON を確認しつつ編集すると捗る。

最後に

ということで AzureResourceExplorer の紹介おわり。


Azureテクノロジ入門 2018

Azureテクノロジ入門 2018