Cent OSにPowerShellやAzureのリソース操作用のAzモジュールをインストール

Azure,CentOS,PowerShell/Azure CLI

 Azureリソースの操作をPowerShellを使って行う事が出来ます。その場合にはPowerShellのAzモジュールを利用します。
 今回はCent OSでPowerShellインストールからAzure PowerShellのAz モジュールセットアップまでやってみました。

 インストールはMicrosoft様のサイトを参考に実施しています。

Linux に PowerShell をインストールする(公式サイト)

スポンサーリンク

Cent OSにPowerShellをインストール

PowerShell用のリポジトリ登録

 リポジトリを登録してyumでPowerShellのインストールを行います。

[root@test-01]# curl https://packages.microsoft.com/config/rhel/7/prod.repo | tee /etc/yum.repos.d/microsoft.repo
[root@test-01]#yum install -y powershell

Cent OSでPowerShellを呼び出すのはpwshコマンド

 pwshコマンドでPowerShellを呼び出す事が出来ます。

[root@test-01]#pwsh

PS /root>   

PowerShellのリポジトリ登録状況を確認

 Azモジュールをインストールする前にGet-PSRepositoryコマンドでリポジトリが登録状況を確認します。
 Get-PSRepositoryコマンドがエラーになる場合(何も表示されない場合)は、リポジトリが登録されていない可能性があります。その場合はRegister-PSRepositoryでリポジトリを登録します。

PS /root> Get-PSRepository 

Name InstallationPolicy SourceLocation
—- —————— ————–

PSGallery Untrusted https://www.powershellgallery.c…

#リポジトリが登録されていない場合は以下のコマンドで登録。

PS /root> Register-PSRepository -Default 

※Register-PSRepositoryで登録出来ない場合はProxy設定等外部との通信設定が出来てない可能性があるので確認します。

PowerShellのリポジトリ登録状況を確認

 Azモジュールをインストールする前にGet-PSRepositoryコマンドでリポジトリが登録状況を確認します。
 Get-PSRepositoryコマンドがエラーになる場合(何も表示されない場合)は、リポジトリが登録されていない可能性があります。その場合はRegister-PSRepositoryでリポジトリを登録します。

PS /root> Get-PSRepository 

Name InstallationPolicy SourceLocation
—- —————— ————–

PSGallery Untrusted https://www.powershellgallery.c…

#リポジトリが登録されていない場合は以下のコマンドで登録。

PS /root> Register-PSRepository -Default 

※Register-PSRepositoryで登録出来ない場合はProxy設定等外部との通信設定が出来てない可能性があるので確認します。

Install-ModuleコマンドでAzモジュールをインストール

 Azモジュールをインストールします。
 確認メッセージが表示された時には"A"もしくは"Y"を入力し進めます。

PS /root> Install-Module -Name Az -AllowClobber -Scope AllUsers

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"):

※確認メッセージが表示される理由ですがリポジトリが信頼済みになっていないからになります。Get-PSRepositoryコマンドでリポジトリを確認した際にInstallationPolicyがUntrustedになっている事から分かります。

Get-InstalledModuleコマンドでAzモジュールのバージョン確認

 Azモジュールをインストール後の確認にはGet-InstalledModuleコマンドを使います。
 インストールが完了していればVersion情報が表示されます。

PS /root> Get-InstalledModule -Name Az

Version Name Repository Description
——- —- ———- ———–
7.3.0 Az PSGallery Microsoft Azure PowerShell – Cmdlets to manage…

※コマンドの実行結果は2022年3月に実施した結果になります。

アクセスエラーになった場合に確認するポイント(NSGやProxy設定)

 PowerShell上でAzモジュールや各種パッケージをダウンロードや利用する場合には以下の設定が必要となります。
 セットアップがうまく行かない場合は、まずこの編を確認してみるのをお勧めします。

      • 仮想マシンからInterNet向けのNSGの接続許可
        • HTTP(80)、HTTPS(443)許可
        • 送信セキュリティ規則の許可設定なのでデフォルトは許可設定になっています
      • Proxy経由でのアクセスの場合はProxy設定が必要
        • /etc/environmentでProxy設定

 Visual Studio Codeでのインストールはこちら。

 Azureへのサインインコマンドについてはこちら。

最後に

 基本的にはCent OSの場合もほぼWindowsと同じインストール方法で非常に簡単に設定できました。

    • WindowsとLinuxの場合の手順の違い
      • yumのリポジトリ登録が必要だった。
      • PowerShellのスクリプト実行権限の確認が必要無かった。