M1 MacでAzure PowerShellを使う

今月は、Azure PowerShellで仮想マシンを作る際の細かい設定方法について、順番にまとめていこうと思います。
本日は第一弾として、Azure PowerShellを使えるようになるまでを紹介します。

初めに

Macでは、ターミナルがあるので、MacからコマンドラインでAzureリソースを操作する場合は、Azure CLIを利用する人がほとんどかと思います。
そこを敢えて、PowerShellを使って操作できるようにするための記事です。

0. M1 MacにPowerShellをインストール

Azure PowerShellを利用できるようにするために、まずはPowerShellをインストールする必要があります。
インストールする方法は、下記の4種類があります。
・Homebrewを利用
・pkgファイルを利用
・.netを利用
・バイナリのアーカイブを利用
今回は、Homebrewを利用する方法でインストールしてみます。

1. Homebrewをインストール

まずは、Homebrewをインストールします。
Homebrewのインストールは簡単で、下記のサイトにアクセスした上で、画面中央に表示されるコマンドをMacのターミナルにコピペして実行するだけです。

2. PowerShellのインストール

次にPowerShellをインストールします。
インストールは、下記のコマンドをMacのターミナルから実行するだけです。最後に、powershell was successfully installed!が表示されれば、インストール成功です。

% brew install --cask powershell  
<中略>
installer: Package name is PowerShell - 7.2.1
installer: Installing at base path /
installer: The install was successful.
🍺  powershell was successfully installed!

インストールが完了した後は、pwshコマンドでPowerShellを利用できます。
PowerShellのコンソールを終了するためには、exitと入力します。

% pwsh           
PowerShell 7.2.1
Copyright (c) Microsoft Corporation.

https://aka.ms/powershell
Type 'help' to get help.

PS /Users/yohei/Applications> exit

ちなみに、2022年2月5日時点では、Ver.7.2.1がインストールされました。

> $PSVersionTable.PSVersion

Major  Minor  Patch  PreReleaseLabel BuildLabel
-----  -----  -----  --------------- ----------
7      2      1                      

なお、本記事には記載しませんが、PowerShellのプレビュー版をインストールすることも可能です。

3. Azure PowerShellをインストール

PowerShellまでインストールできたら、最後はAzure PowerShellのインストールです。
基本的には、Windowsと同じです。
Homebrewを使った場合、Powershell Ver.7以降がインストールされるので、Windowsで利用するケースと異なり、PowerShellのバージョンはそれほど気にする必要はないです。
Azure PowerShellのインストール方法は下記の公式情報に記載されています。

やることだけ抜粋すると、以下のコマンドをPowerShellから実行するだけです。

if (Get-Module -Name AzureRM -ListAvailable) {
    Write-Warning -Message ('Az module not installed. Having both the AzureRM and ' +
      'Az modules installed at the same time is not supported.')
} else {
    Install-Module -Name Az -AllowClobber -Scope CurrentUser
}

実際に、実行すると、「Untrustedなリポジトリからだけど本当にインストールするか?」と聞かれるので、Yes to Allを示すAを入力します。

> if (Get-Module -Name AzureRM -ListAvailable) {                                            
>>     Write-Warning -Message ('Az module not installed. Having both the AzureRM and ' +
>>       'Az modules installed at the same time is not supported.')
>> } else {
>>     Install-Module -Name Az -AllowClobber -Scope CurrentUser
>> }

Untrusted repository
You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the 
Set-PSRepository cmdlet. Are you sure you want to install the modules from 'PSGallery'?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"): A

これで、Azure PowerShellが利用可能になります。
試しに、Loginしてみます。

> Connect-AzAccount                                                                         

Account                       SubscriptionName TenantId                             Environment
-------                       ---------------- --------                             -----------
<Mail Address>@<Domain>       IboyPrivate      00000000-0000-0000-0000-000000000000 AzureCloud

TenantIdなどはマスクした結果に修正していますが、Connect-AzAccountから認証することで、Azure PowerShell上で、私のテナントにログインすることができました。

4.終わりに

見ていただいたように、とても簡単にPowerShell環境をMac上に構築できることがわかるかと思います。
次回は、実際にAzure仮想マシンを構築していこうと思います。

参考


この記事が気に入ったらサポートをしてみませんか?