Adam the Automator

VMWare による PowerCLI は、PowerShell で vCenter を管理するための事実上の方法です。 このチュートリアルでは、ゼロから始める方法を学び、ダウンロード、インストールし、PowerCLI がどのように多くのことを成し遂げるのに役立つかを理解します。

このチュートリアルでは、次のことを学びます。

  • 従来のスクリプトで遭遇する可能性のある PowerCLI の過去のバージョンを見つける方法
  • 最新バージョンの PowerCLI をインストールする方法
  • リソースとして VMware Code を使用する方法
  • Windows PowerShell 5.x および Windows PowerShell 5.x で VMware PowerCLI をインストールする方法
  • VMware PowerCLI の最新バージョンを使用するにはどうすればよいか。Windows PowerShell 5.1 と PowerShell 6/7 の両方にインストールし、クロスプラットフォームで使用する方法。

「ほとんどの点で、VMware PowerCLI はハイパーバイザーの長年の歴史の中で最も一貫した管理インターフェースです」

上記のコメントは、システム管理者のツールキットの中でPowerCLIの回復力と重要性について語られたものです。 これは、2019 年の PowerShell Summit での VMware PowerCLI セッションで共有されました。

vSphere と VMware とのインターフェースは、オリジナルのソフトウェア クライアント、フラッシュ クライアント、HTML5、フレックス Web クライアント バージョンなど、多数のイテレーションを経験してきました。

その一方で、VMware PowerCLI の構文はそのライフサイクルを通じて安定しており、1 つのディストリビューションの変更のみでした。 その大きな変化とは、PowerShell スナップインから PowerShell モジュールへの移行です。

VMware 製品を管理する上で、PowerCLI は一貫性を保つために事実上最後の一人となりました。

目次

スナップインからパブリック アクセス不可へ

VMware PowerCLIのオリジナルのダウンロード場所は、PowerCLI 5.1 ページへのリンクの後ろでした。 この制限により、一般ユーザーはこのツールに限定的にしかアクセスできませんでした。

PowerCLI 5.1 およびそれ以前は、モジュールではなく PSSnapin であり、移植が非常に困難でした。 このブログのフォロワーであれば、このようなツールのレガシー形式として認識されていることでしょう。 スナップインはインストールが面倒なため、PowerCLIの大量導入が困難であることが証明されました。 幸運なことに、最新バージョン 6.0 の PowerCLI は、スナップインではなく PowerShell モジュールとして出荷されています!

2015年9月の PowerCLI 6.0 のリリースで、ゲームは変化し始めていました。 このバージョンは、PowerShellモジュールとしてリリースされた最初のイテレーションで、合計約400のコマンドレットを搭載して出荷されました。 しかし、2017 年 4/20 に PowerShell Gallery にリリースされたバージョン 6.5.1 まで my.vmware.com アカウントの必要性が残っていました。

VMware PowerCLI の現在のバージョン (11.3.0) では、このモジュールには多数の VMware 製品を管理対象としている 700 弱の cmdlets が含まれています。 これらの製品には、vCenter、vCloud Director、VMware Horizon、およびその他多くの製品が含まれます。

cmdlet のリストは VMware ポートフォリオと共に増え続けていますが、実績のある PowerCLI 標準は、一貫性の力として強く保持され続けています。

PowerCLI PowerShell モジュールのコマンドレット

前提条件

そろそろデモに飛び込む準備ができていますので、これらの前提条件をすべて確認し、私と一緒についていけるようにしておいてください。

  • 検証テスト用の VMware ホストまたは vCenter サーバー
  • Windows、Mac、または Linux クライアント マシン

VMware PowerCLI のダウンロード

PowerCLI プロジェクト チームの新しい長期ホームは https://code.vmware.com に設定されています。 コミュニティから寄せられた機能要求、コメント、およびこのモジュールのドキュメントはすべて、SDK、API、および認定リソースと同じサイトの一部になりました。

質問がある場合、またはチームと直接機能要求を提起したい場合は、code.vmware.com で PowerCLI チームとこのプロジェクトを取り巻くコミュニティの両方に連絡することができます。 コミュニティと VMware プロジェクト チームは、質問、懸念、および新しいアイデアが発生した場合、非常に迅速に対応します。

ウェブ経由で PowerCLI のダウンロードを実行したい場合、PowerCLI チームは PowerShell モジュールの 2 つのオプションへの直接リンクを提供します。モジュールのコンテンツを手動でインストールするための zip アーカイブ

PowerShell Gallery は、PowerCLI をダウンロードする最も一般的な方法ですが、zip アーカイブも動作します。 PowerShell ギャラリーのリンクを使用する必要はないことに注意してください。 PowerShell 経由でダウンロードすることもできます。

Windows PowerShell での VMware PowerCLI のインストール

PowerCLIをインストールするには、いくつかの方法があります。

ZIP ファイルの抽出

前述のページからウェブ経由でダウンロードした場合、手動でインストールする必要があります。 PowerShell が見える場所に PowerCLI を取得する必要があります。

提供された ZIP パッケージを介してモジュールをインストールするには、選択したモジュールの場所に内容を展開する必要があります。

%UserProfile%\Documents\WindowsPowerShell\ModulesC:\Program Files\WindowsPowerShell\Modules

上記の場所のいずれかに .zip コンテンツを解凍します。

PowerShell Gallery

現在 PowerCLI をダウンロードおよびインストールする最も簡単で速い方法は、PowerShell コンソール内の PowerShell Gallery からモジュールをダウンロードする方法です。 以下に、この方法で PowerShell に新しいモジュールをインストールする一般的な手順についての簡単なビデオを掲載します。

しかし、全体として、管理用の PowerShell プロンプトから以下を実行することにより、仕事を完了させることが可能です。

PS51> Install-Module VMware.PowerCLI

管理者権限のないワークステーションで PowerCLI のインストールを実行したい場合は、Scope パラメータを使用して、ユーザー プロファイル モジュール パスにモジュールをインストールできます。

PS51> Install-Module VMware.PowerCLI -Scope CurrentUser

Linux 上の PowerShell 6 で VMware PowerCLI をインストール

現在、非 Windows システムでも、PowerCLI をインストールすることが可能です。 たとえば、Ubuntu 上の PowerShell Core に PowerCLI をインストールすることができます。 ここでも、ZIP ファイル、PowerShell Gallery の Web リンク、または PowerShell コンソールから直接ダウンロードすることを選択したかによって、インストール手順が少し異なります。

ZIP ファイルを展開する

Linuxのフレーバーによって、 .zip ファイルのコンテンツを異なる場所に展開します。

ターミナルで pwsh を実行して Linux 上の PowerShell を開いてみてください。

PS61> ($env:PSModulePath).split(":")
Directories in PSModulePath

モジュール ファイルをインストールする場所を決定したら、その場所にダウンロードして解凍の準備に取り掛かります。 ユーザー アクセスの場合は /home/ フォルダーに、システム アクセスの場合は /opt/ に解凍します。

Linux ベースのインストールのこの例では、Ubuntu 18.04 を使用して、ここからダウンロードした .zip ファイルを使って VMware PowerCLI 11 をインストールして、このマシンのすべてのユーザーによってアクセスできるようモジュールを設置します。

> cd /opt/microsoft/powershell/6/Modules> sudo apt install unzip> sudo wget https://vdc-download.vmware.com/vmwb-repository/dcr-public/8bf09c32-43c0-46d4-8816-92515c3b8228/15761272-b339-4da4-888a-4b8633f9a964/VMware-PowerCLI-11.3.0-13990089.zip> sudo unzip ./VMware-PowerCLI-11.3.0-13990089.zip

次に、モジュール ファイルが $PSModulePath 所定の場所にあるため、次の通常の実行によりこのモジュールをインポートできます。

Import-Module VMware.PowerCLI

Legacy VMware PowerCLI スナップインのインストール

時には、古い PowerCLI スナップインをインストールしなければならないことがあるかもしれません。 おそらく、いくつかのレガシー コードの責任を引き継ぎ、問題のトラブルシューティングを行う必要があるのでしょう。

古いスナップインをインストールするには、ログインして VMware-PowerCLI-5.1.0-3090428.exe ファイルを取得するための my.vmware.com アカウントが必要です。

その後、Add-PSSnapin を実行して VMware のコマンドレットをセッションにロードするか、提供されている VMware PowerCLI コンソールをスタンドアロンで起動することが可能です。

PS51> Add-PSSnapin VMware*
PowerCLI snapins

バージョン 5.1 でインストールされる、スタンドアロン VMware PowerCLI ショートカットを起動する。1 console

Note that the above snapin is not compatible with PowerShell 6/7.

Verifying Installation of PowerCLI

PowerCLI のインストールが成功したかどうかは、PowerShell のバージョンにかかわらず、同じことです。 まず、PowerShellコンソールからモジュールの存在を確認します。

Get-Module -ListAvailable VMware* 
Available PowerCLI modules

次に、Connect-VIServerコマンドレットでPowerCLIを使ってvCenterへの接続を試行します。 これは、モジュールが正常にインストールされたことを確認するだけでなく、インフラストラクチャに正しく接続されるかどうかもテストします。

Windows の場合

PS51> Connect-VIServer <FQDN of vCenter or ESXi Host>
Connecting to vCenter with VMware PowerCLI on Windows

Linux の場合

Linux でインストールの検証をする場合、接続に関する問題が発生したらまず無効(もしくはデフォルトの自己署名証明書)を考慮し接続設定をする必要があります。 以下では、PowerCLI を使用して vCenter に接続しています。

PS> Set-PowerCLIConfiguration -InvalidCertificateAction:ignorePS> Connect-VIServer <FQDN of vCenter or ESXi Host>
Connecting to vCenter with VMware PowerCLI on Linux

正常に VMware エンポイントに接続できたため、PowerCLI は正常に起動しました!

Go Forth and PowerCLI!

ここまでで、「VMware PowerCLI をインストールするにはどうしたらいいですか」という、あのことわざのような質問に答える準備が整ったことになります。 これで、設定のデプロイメント、VM レポート、およびメンテナンス タスクをスクリプト化する作業を開始することができます。 このブログでは、PowerCLI を始めるための新しい記事と今後の記事をお届けします!

続きを読む

  • PowerShell で VMware に OVF ファイルをインポートする方法

|PowerShell の概要

コメントを残す

メールアドレスが公開されることはありません。