2021年12月18日土曜日

VMware PowerCLIをLinuxにインストールする手順

VMware製品を操作できるPowerShellベースのCLIツールである「PowerCLI」は、PowerShellベースで動作するため、以前は必ずWindows環境から実行する必要があった。

しかし、以下記事で記載した通り、PowerShell 7.2はLinuxに対してもインストールすることができる

そのため、PowerCLIもモジュールをインポートすることでLinux環境で動作させることが可能となった。本記事では、PowerCLIをLinux環境で動かすための手順を記載する。なお、インターネット経由でオンラインでインストールする方法と、オフラインでインストールする2パターンの手順を記載する。

環境

導入環境は以下の通りとなる。RHELについては、7と8両方でインストール確認をしている。

  • RHEL 8.3
  • RHEL 7.6

RHELへPowerCLIをインストールする手順 (オンライン)

1. RHELへPowerShellをインストール

RHELへPowerShellをインストールする手順は、以下記事を参照いただきたい。

2. Install-ModuleにてPowerCLIをオンラインインストール

Install-Moduleを使うことで、インターネット経由でモジュールのインストールが可能となる。PowerShellにシェルを変更したのち、以下の通りインストールを実施する。

# pwsh
PowerShell 7.2.0
Copyright (c) Microsoft Corporation.

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

PS /root> Install-Module -Name VMware.PowerCLI

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"):y ←★"y"を選択
Installing package 'VMware.PowerCLI' [Installing dependent package 'VMware.V…]
  Installing package 'VMware.VimAutomation… [Downloaded 13.36 MB out of 14.8…]
↑★オンラインでモジュールがインストールされる

Get-Moduleコマンドでインストール後の確認を行うと、VMwareから始まる各種モジュールがインストールされていることが確認できる。今回はPowerCLIのバージョン12.4.1がインストールされていることがわかる。

PS /root> Get-Module -ListAvailable | where { $_.Name -like "VMware*" }

    Directory: /root/.local/share/powershell/Modules

ModuleType Version    PreRelease Name                                PSEdition
---------- -------    ---------- ----                                ---------
Script     12.4.0.18…            VMware.CloudServices                Desk
Script     7.0.2.178…            VMware.DeployAutomation             Desk
Script     7.0.2.178…            VMware.ImageBuilder                 Desk
Manifest   12.4.1.18…            VMware.PowerCLI                     Desk

~(中略)~

Script     12.2.0.17…            VMware.VimAutomation.vROps          Desk
Script     12.4.0.18…            VMware.VimAutomation.WorkloadManag… Desk
Script     12.1.0.16…            VMware.VumAutomation                Desk

3. vCenter Serverへ接続確認

それでは実際にPowerCLIのConnect-VIServerを使ってvCenter Serverに接続してみよう。

PS /root> Connect-VIServer 192.168.11.160 -Force

Specify Credential
Please specify server credential
User: administrator@vsphere.local
Password for user administrator@vsphere.local: ************


Name                           Port  User
----                           ----  ----
192.168.11.160                 443   VSPHERE.LOCAL\Administrator

問題なくvCenter Serverに接続できたので、Get-VMで仮想マシン一覧を確認してみよう。以下の通り、問題なく仮想マシンの情報を取得することができた。

PS /root> Get-VM

Name                 PowerState Num CPUs MemoryGB
----                 ---------- -------- --------
t1164vsrm            PoweredOn  2        8.000
testvm-02            PoweredOn  2        4.000
testvm               PoweredOn  2        4.000
t1160vcsa            PoweredOn  2        12.000
vCLS (2)             PoweredOn  1        0.125

以上でRHELへPowerCLIをオンラインでインストールする手順は完了となる。

RHELへPowerCLIをインストールする手順 (オフライン)

1. PowerCLIのファイルを入手

PowerCLIのモジュール一式は、以下サイトからzip形式でダウンロードできる。

今回はバージョン12.4.1をダウンロードした。

ダウンロードしたファイルは、インストール対象のLinuxへアップロードしておこう。

2. RHELへPowerShellをインストール

RHELへPowerShellをインストールする手順は、以下記事を参照いただきたい。

3. PowerCLIをオフラインインストール

PowerShellインストール後、一度pwshにてPowerShellのシェルに変更したのち抜けておく。これにより、PowerShellのモジュールをインストールするディレクトリがホームディレクトリ配下に作成される。

# pwsh
PowerShell 7.2.0
Copyright (c) Microsoft Corporation.

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

PS /root> exit

モジュールをインストールするディレクトリは、ホームディレクトリ配下の~/.local/share/powershell/Modules/となる

# ls -ld ~/.local/share/powershell/Modules/
drwxr-xr-x 2 root root 6 11月 21 10:59 .local/share/powershell/Modules/

本ディレクトリにダウンロードしたPowerCLIのzipファイルを配置し解凍する。これだけでインストールは完了となる。

# cp VMware-PowerCLI-12.4.1-18769701.zip ~/.local/share/powershell/Modules/
# cd ~/.local/share/powershell/Modules/
# unzip VMware-PowerCLI-12.4.1-18769701.zip
# ls -l
合計 79676
-rw-r--r-- 1 root root 81582404 11月 21 11:05 VMware-PowerCLI-12.4.1-18769701.zip
drwxr-xr-x 4 root root      154 11月 21 11:08 VMware.CloudServices
drwxr-xr-x 3 root root      142 11月 21 11:08 VMware.DeployAutomation

~(中略)~

drwxr-xr-x 4 root root      243 11月 21 11:08 VMware.VimAutomation.WorkloadManagement
drwxr-xr-x 4 root root      172 11月 21 11:08 VMware.VimAutomation.vROps
drwxr-xr-x 3 root root      117 11月 21 11:08 VMware.VumAutomation
# rm VMware-PowerCLI-12.4.1-18769701.zip

インストールが問題なくできていることをPowerShellからも確認しておこう。Get-Moduleコマンドにて確認すると、VMwareから始まる各種モジュールがインストールされていることが確認できる。

PS /root> Get-Module -ListAvailable | where { $_.Name -like "VMware*" }

    Directory: /root/.local/share/powershell/Modules

ModuleType Version    PreRelease Name                                PSEdition
---------- -------    ---------- ----                                ---------
Script     12.4.0.18…            VMware.CloudServices                Desk
Script     7.0.2.178…            VMware.DeployAutomation             Desk
Script     7.0.2.178…            VMware.ImageBuilder                 Desk
Manifest   12.4.1.18…            VMware.PowerCLI                     Desk

~(中略)~

Script     12.2.0.17…            VMware.VimAutomation.vROps          Desk
Script     12.4.0.18…            VMware.VimAutomation.WorkloadManag… Desk
Script     12.1.0.16…            VMware.VumAutomation                Desk

4. vCenter Serverへ接続確認

それでは実際にPowerCLIのConnect-VIServerを使ってvCenter Serverに接続してみよう。

PS /root> Connect-VIServer 192.168.11.160 -Force

Specify Credential
Please specify server credential
User: administrator@vsphere.local
Password for user administrator@vsphere.local: ************


Name                           Port  User
----                           ----  ----
192.168.11.160                 443   VSPHERE.LOCAL\Administrator

問題なくvCenter Serverに接続できたので、Get-VMで仮想マシン一覧を確認してみよう。以下の通り、問題なく仮想マシンの情報を取得することができた。

PS /root> Get-VM

Name                 PowerState Num CPUs MemoryGB
----                 ---------- -------- --------
t1164vsrm            PoweredOn  2        8.000
testvm-02            PoweredOn  2        4.000
testvm               PoweredOn  2        4.000
t1160vcsa            PoweredOn  2        12.000
vCLS (2)             PoweredOn  1        0.125

以上でRHELへPowerCLIをオフラインでインストールする手順は完了となる。

0 件のコメント:

コメントを投稿

人気の投稿