Azure PowerShellをインストールする【Windows 10/11】Tech TIPS

Azureのリソースをコマンドラインで操作/管理する方法の1つとして「Azure PowerShell」がある。そのインストールや各種バージョンの確認、アップデートの方法と注意点を紹介しよう。

» 2024年02月28日 05時00分 公開
[島田広道デジタルアドバンテージ]
「Tech TIPS」のインデックス

連載目次

Azure PowerShellをインストールする【Windows 10/11】

対象:Azure PowerShell(PowerShell用Azモジュール)、Windows 10/11


 「Azure」で開発したり、作成したリソースを改修したりする際、自動化などのためにコマンドラインで作業したいことはないだろうか?

 それには複数の方法が提供されている。その中から本Tech TIPSでは、「Azure PowerShell」をWindows 10/11搭載PCにセットアップする手順を紹介したい。これにより、手元のWindows 10/11からPowerShellのコマンドレットでAzureのリソースをデプロイしたり管理したりできるようになる。

■執筆時の各種ツール/APIのバージョン


ところで「Azure PowerShell」とは?

 「Azure PowerShell」という表記を見ると、PowerShellのAzure向けエディションというように受け止めても不思議ではない。しかし実態は、そうではない。

 「Azure PowerShell」とは、ベースとなる「PowerShell」にAzure専用モジュール「Az」を組み込んで、Azureを操作するコマンドレットや関数などが使えるようにした環境を指す。Azure専用PowerShellが用意されているのではなく、PowerShellの「モジュール」という拡張機能を利用して、PowerShell上でAzureも操作できるようにしているのだ。

 「Az」モジュールは、Windows 10/11標準装備の「PowerShell 5.1」と、執筆時点で最新の「PowerShell 7」のどちらにもインストールできる。ただ、PowerShell 5.1では使えないAzure用コマンドレットも散見される。そのため、特に理由がなければ、PowerShell 7をインストールして、そこにAzモジュールをインストールするのがよい。本記事でも、PowerShell 7を前提に解説する。

【準備】最新のPowerShell 7をインストールする

 PowerShell 7が未インストールであれば、Azモジュールより先にインストールしておく。

 PowerShell 7をインストールするには、複数の方法がある。以下ではその概要を紹介しよう。具体的な手順はTech TIPS「『最新版をインストールせよ』とPowerShell起動時に叱られたときの対処法」を参照していただきたい。

●「Winget」コマンドでPowerShell 7をインストールする

 Windows 10/11に搭載されているパッケージ管理ツール「Winget」を以下のように実行すると、PowerShell 7をインストールできる。

winget install --id Microsoft.Powershell --source winget



「Winget」コマンドでPowerShell 7をインストールする 「Winget」コマンドでPowerShell 7をインストールする

 途中でUAC(ユーザーアカウント制御)のダイアログが表示されるので、[はい]ボタンをクリックしてインストールを進める。

 WingetでインストールしたPowerShellは、以下のコマンドラインで最新版にアップデートできる。

winget upgrade powershell



●Microsoft StoreからPowerShell 7をインストールする

 Microsoft Storeアプリを起動して、「powershell」というテキストを検索して見つかった中から、発行者が「Microsoft Corporation」であり、かつプレビュー(Preview)版でない製品版を見つける。あとは他のアプリと同じ手順でインストールできる。

 Microsoft Storeからインストールすると、新版がリリースされると自動的にアップグレードされるため、手動でバージョンアップする手間をかけずに済む。

 コマンドラインでもMicrosoft StoreからPowerShell 7をインストールできる。それには前述のWingetコマンドで、以下のようにオプションを指定すればよい。

winget install Powershell --source msstore



●GitHubからPowerShell 7をインストールする

 WingetコマンドやMicrosoft Storeアプリが利用できない環境では、以下のGitHubのページから.MSI形式のインストーラーをダウンロードして実行すると、PowerShell 7をインストールできる。

 インストール後のアップデートにはWindows Updateを利用できる。Windows Updateで「その他のMicrosoft製品の更新プログラムを受け取る」というオプションを「オン」にすると、Windows Updateによるアップデート時にPowerShellの最新版もリストアップされて更新できるようになる。

●インストールしたPowerShell 7のバージョンを確認する

 PowerShell 7をインストールすると、[スタート]メニューや「Windowsターミナル」アプリに「PowerShell 7」または「PowerShell」というアプリが登録される(黒っぽいアイコンが関連付けられている)。よく似た「Windows PowerShell」(青っぽいアイコン)の方は、Windows 10/11標準装備のPowerShell(バージョン5.1)なので間違えないように注意しよう。

Windows OSにインストールしたPowerShell 7を起動する Windows OSにインストールしたPowerShell 7を起動する
Microsoft Storeからインストールすると「7」が付かない「PowerShell」という名前になるので注意しよう。

 バージョン7の方のPowerShellを起動したら、次の「$PSVersionTable」という自動変数の内容を表示させるとバージョンを確認できる。

$PSVersionTable


 PowerShellのバージョンは、この「PSVersion」プロパティに格納されている。

インストールしたPowerShell 7のバージョンを確認する インストールしたPowerShell 7のバージョンを確認する

●PowerShellの実行ポリシーが「RemoteSigned」であることを確認する

 Azure PowerShellを利用するための前提条件には、PowerShellの「実行ポリシー(Execution Policy)」を「RemoteSigned」に設定することが含まれている。

 実行ポリシーを確認するには、PowerShell 7上で以下のように「Get-ExecutionPolicy」コマンドレットを実行する。

Get-ExecutionPolicy -List


 出力された一覧表で、「CurrentUser」「LocalMachine」がともに「RemoteSigned」以外であれば、以下のように「Set-ExecutionPolicy」コマンドレットを実行し、サインイン中のユーザーの実行ポリシーを「RemoteSigned」に変更する。

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser


PowerShellの実行ポリシーを「RemoteSigned」に変更する PowerShellの実行ポリシーを「RemoteSigned」に変更する

 もし「MachinePolicy」「UserPolicy」が「Undefined」以外に設定されている場合は、そのPCまたは所属ネットワークのシステム管理者が実行ポリシーを制限しているので、そのシステム管理者に相談や確認をした方がよい。

Azure PowerShellをWindows OSにインストールする

 Azure PowerShellをインストールする、すなわちAzモジュールをPowerShellに組み込むには、以下のように「Install-Module」コマンドレットを実行する。このとき、インターネット上のサイトからモジュールがダウンロードされるので、インターネットに接続できる環境で実行する必要がある。

Install-Module -Name Az -Repository PSGallery -Force


 「PSGallery」は「PowerShellギャラリー」を指していて、PowerShellのモジュールなどがまとまっている「リポジトリ」の1つである。上記のコマンドレットを実行すると、インターネット経由でAzモジュールがダウンロードされるので、インターネット接続は必須だ。

Azure PowerShelll(Azモジュール)をWindows OSにインストールする Azure PowerShelll(Azモジュール)をWindows OSにインストールする

 もし上の画面のように「PSGallery」が見つからない、というエラーが発生したら、次の「Register-PSRepository」コマンドレットを実行してリポジトリ設定を修復してからインストールを再実行する。

Register-PSRepository -Default


 Azモジュールのインストール完了には、数分という単位で時間がかかる。これはAzureの多種多様なリソースを操作するためのパッケージが大量に含まれているからだ。そのため、インストールは時間に余裕があるときにした方が無難だろう。

Azure PowerShellのインストールの有無やバージョンを確認する

 PowerShellにAzモジュールがインストールされているかどうかは、次の「Get-InstalledModule」コマンドレットでバージョンなどが表示されるかどうかで確認できる。

Get-InstalledModule az


 未インストールの場合は、以下の画面のようにエラーが赤文字で表示される。

Azure PowerShell(Azモジュール)が未インストールの場合に生じるエラーの例 Azure PowerShell(Azモジュール)が未インストールの場合に生じるエラーの例

 インストール済みなら、Azモジュールの主要なプロパティが表形式で表示される。その[Version]列にAzモジュールのバージョンが記載されているはずだ。

Azure PowerShell(Azモジュール)のインストールの有無やバージョンを確認する Azure PowerShell(Azモジュール)のインストールの有無やバージョンを確認する

Azure PowerShellを最新版にアップデートする

 Azモジュールでは、Microsoftによって新機能の追加や不具合の修正などが施された新版がときどきリリースされる。

 そのため、ローカルのWindows 10/11環境でAzモジュールを最新に維持するには、以下の「Update-Module」コマンドレットをときどき実行してアップデートする必要がある。

Update-Module -Name Az -Force


Azure PowerShell(Azモジュール)を最新版にアップデートする Azure PowerShell(Azモジュール)を最新版にアップデートする

 もし上の画面のような警告メッセージ(「WARNING」から始まる黄色のテキスト)が表示されたら、いったんシステムを再起動するか、サインアウトしてサインインし直すかした後で、Update-Moduleコマンドレットを再実行した方がよい。

「Tech TIPS」のインデックス

Tech TIPS

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。