はじめに
PowerShellからAzureを操作するための設定を行う覚書です。
PowerShellのインストール
下記のサイトを参考にインストールを行います。
Azモジュールのインストール
インストールしたPowerShellを管理者で実行して下記のコマンドを実行します。
Install-Module -Name Az -AllowClobber
実行後に対話に答えていくとモジュールがインストールされます。
Azureへの接続
PowerShellからAzureへの接続を構成するために下記のコマンドを実行します。
Connect-AzAccount -DeviceCode
実行するとURLとパスコードが表示されるので、ブラウザからアクセスしてパスコードを入力します。
WARNING: To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAA to authenticate.
その後ブラウザからユーザー名やパスワードを入力してログインするとPowerShellからAzureにアクセスできるようになります。
例えば下記のようなコマンドでサブスクリプションを表示することができます。
Get-AzSubscription
Azureからのログアウト
PowerShellからAzureへの接続を切断するために下記のコマンドを実行します。
Disconnect-AzAccount
PowerShellでできること
PowerShellで試しにVMを作成して、消すまでのサンプルスクリプトです。前提としてログインしているユーザーアカウントが権限を持っている必要はあります。
# 東日本リージョンに新しいリソースグループを作成
New-AzResourceGroup -Name rg-test -Location japaneast
# 上記リソースグループ内に新しいVMを作成(VMのユーザー名とパスワードを求められます)
New-AzVM -ResourceGroupName rg-test -Name vmtest01 -SubnetName sn-test
# 作成したVMの状態を確認
Get-AzVM -Name vmtest01 -status
# 作成したリソースグループごと全て消去
Remove-AzResourceGroup -Name rg-test
おわりに
PowerShellはとっつきにくい印象を持っていましたが、意外と簡単にAzureの操作が自動化できそうです。これらのスクリプトはAzure Portalのクラウドシェルからも実行できるので、コピペするだけでお手軽に再現性の高い環境構築ができるので便利に感じました。