AZ-900

【AZ-900】Azure CLIとAzure PowerShellの違いについて解説!

【AZ-900】Azure CLIとAzure PowerShellの違いについて解説!

どうも、フリーランスエンジニアのMakotoです。

AzureではGUIツールであるAzureポータルを使ってリソースを管理できますが、それ以外にもコマンド操作でリソースを管理するためのツールも提供されています。

  • Azure CLI
  • Azure PowerShell

これらのAzureツールについてもAZ-900の試験範囲ですので、今回はそれぞれのツールの概要と、どういった違いがあるのか?どっちを使えばいいのか、選択する基準について解説します。

それではいってみましょう!

Azure CLIとは?

Azure CLIは、Azureを操作するためのコマンドラインツールです。Linux、Mac、または Windowsのローカルにインストールして利用することもできます。

インストール手順は以下の公式ドキュメントを参考にしてください。
Azure CLI をインストールする方法

Azure CLIは az <リソース種別> <動詞> の形で記述します。例えば、リソースグループを作成する場合、名前やリージョンを指定するパラメータを添えて次のように実行します。

az group create --name SampleRG --location japaneast

 

AzureCLIでリソースグループを作成 コマンド実行結果はJSON形式で出力されます。Azureポータルを見ると「SampleRG」という名前のリソースグループが作成できていることがわかります。

Azureポータルで結果を確認

Azure PowerShellとは?

Azure PowerShellは、同じくAzureを操作するためのコマンドラインツールで、Linux、Mac、または Windowsのローカルにインストールして利用できます。

インストール手順は以下の公式ドキュメントを参考にしてください。
Azure PowerShell をインストールする

PowerShellはコマンドプロンプトの後継ツールとしてWindowsに搭載されているイメージがあるかもしれませんが、LinuxやMacでもインストールすれば使うことができます。

Windowsであっても標準でAzure PowerShellを利用できるわけではなく、アドオンとしてAzure PowerShellモジュールを追加でインストールします。(Azureを操作するためのコマンドを後から付け加える)

Azure PowerShellは <動詞>-Az<リソース種別> の形で記述します。先ほどと同じように、リソースグループを作成する場合は名前やリージョンを指定するパラメータを添えて次のように実行します。

New-AzResourceGroup -Name SampleRG -Location japaneast

 

AzurePowerShellでリソースグループを作成

Azure CLI vs Azure PowerShell

コマンドラインツールとしてAzure CLIとAzure PowerShellの2つがあることはわかりましたが、

どっちを選べばいいの?

と疑問に思うかもしれません。

一般的には、Linuxのシェルスクリプトに慣れている人はAzure CLI、WindowsのPowerShellに慣れている人はAzure PowerShellを選択する傾向にあります。

業務で利用する場合、大事なのはチームメンバーがどちらのツールに慣れているかです。

私の感覚ではAzure CLIのほうが直感的でわかりやすく学習コストが低いと思います。

一方で、PowerShellは「オブジェクト指向」の一種のプログラミング言語ですので、オブジェクトとして変数に格納して参照できたり、try-catchでの例外処理が簡単だったりします。

ざっくり言うと複雑な処理にも対応しやすいのがAzure PowerShellだと思います。

利用者のこれまでの経験、学習コスト、行いたい処理の複雑具合などに応じて検討してみてください。サーバ環境がWindowsなのか、Linuxなのかで決めるのも一つの手です。どっちでも良いのであればAzure CLIから触ってみることをオススメします。

ちなみに私はガチガチのWindowsユーザーだったので最初はAzure PowerShellから使い始めて、Linuxを勉強してからはAzure CLIを好んで使うようになりました。実際の現場でもやはりサーバOSに左右される印象です。

AZ-900試験で問われそうなポイントとしてはどちらともLinux、Mac、Windowsで動作する(クロスプラットフォームである)点です。

Azure CLI、Azure Power ShellともLinux、Mac、Windowsで動作する

なお、Azure CLI、Azure Power Shellを試したい場合は、Azue Cloud Shellが便利です。こちらの記事で使い方を解説しているので参考にしてください。

【AZ-900】Azure Cloud Shellとは?基本的な使い方を解説!
【AZ-900】Azure Cloud Shellとは?基本的な使い方を解説!どうも、フリーランスエンジニアのMakotoです。 今回は、Azure Cloud Shellについて解説します。 Clou...

まとめ

今回はAzure CLIとAzure PowerShellの違いについて解説しました。

Azureに慣れてくるとコマンドラインでの操作が便利です。繰り返し同じ処理を行いたかったり、他の人と手順を共有するのに役立ちます。

公式ドキュメントにはコマンドを体験するためのチュートリアルも用意されています。

ぜひ実際に手を動かして試してみてください。

 

Azure入門コースを見る