
画像: yucelyilmaz、ゲッティイメージズ/iStockphoto
VMwareベースの仮想マシン(VM)を管理する場合、管理者はベアメタルホストの準備、ゲストOS、ストレージスペース、そして相互通信やネットワーク通信に使用するスイッチの設定において、いくつかの決定を下す必要があります。これらの選択は、初期仕様を決定した後、ホストとVMをどのように構成するかという点に焦点が当てられます。
参照:ネットワーク管理者になる方法: チートシート (無料 PDF) (TechRepublic)
管理者によっては、リムーバブルメディアを使ってESXiを手動でインストールすることを選択する場合もあれば、キックスタートスクリプト方式を使ってインストールプロセス中にホストの初期構成を行うことを好む場合もあります。どちらのアプローチも、何らかの形でオンサイト作業が必要になります。つまり、サーバーを手動で起動する技術者と、インストールを実行するためのブートストラップが必要です。管理者はvCenterを使用し、ホストプロファイルを使ってVMを集中管理することもできます。このソリューションは間違いなく最適ですが、vCenterのライセンスは高額になる可能性があるため、すべての組織が利用できるとは限りません。
しかし幸いなことに、PowerShell (PS) スナップインとして機能し、Windows、macOS、Linux でサポートされている PowerCLI という別の選択肢があります。PowerCLI はインストール後に実行できるほど柔軟性が高く、IT 部門は管理タスクを実行するためのスクリプトを作成できます。他のスクリプトと同様に、サーバーの初期プロビジョニング方法に関係なく、スクリプトは将来使用するために保存できます。
各ESXiサーバーは組織のニーズに応じて異なる構成となるため、この記事では特定の管理タスクを実行するためにどのようなコマンドを実行するべきかという詳細については詳しく説明しません。この記事の目的は、管理者が管理ステーションにPowerCLIをインストールし、コンソールを操作してホストとVMの管理に使用するリソースを見つける方法を支援することです。
前提条件:
- .NET Framework 4.5 以降 (Windows のみ)
- PowerShell 3.0以降
PowerCLIのインストール方法
1. PowerShellを起動します。Windowsをお使いの場合は、「管理者として実行」を使用してください。2
. 次のコマンドを実行します:
Install-Module VMware.PowerCLI
3. プロンプトが表示されたら、インストールを続行します。
完了すると、必要なコマンドレットとその依存関係がすべて使用できるようになります。
PowerCLIの使い方
PowerCLIはPowerShellのフレームワークに基づいているため、PowerShellの使用経験がある管理者にはコマンドレットと構文が馴染みやすいでしょう。PowerShellの使用経験がほとんどない、あるいは全くない管理者向けに、コマンドの検索方法、コマンドの機能、そして自動化のための管理タスクの実行方法をより深く理解するための、一般的なコマンドレット(PowerShellのコマンド)をご紹介します。
PowerShellの実行ポリシー
PowerShellには、デフォルトでスクリプトの実行を制限する実行ポリシーが含まれています。これは、ユーザーが誤ってスクリプトを実行し、システムに取り返しのつかない問題を引き起こすのを防ぐためです。ただし、このポリシーを許可したい場合は、以下のコマンドレットを実行することで、スクリプトを制限なしで実行できます。Set
-ExecutionPolicy Unrestricted
PowerShell で利用可能なコマンドレットの一覧
PowerCLIコマンドを含む、PSで利用可能なすべてのコマンドレットの完全なリストを取得するには、以下のコマンドレットを実行してください。Get
-Command
PowerShellのヘルプインデックスを取得する方法
PowerShell には、構文や例など、コマンドレットの詳細を提供するヘルプ インデックスが組み込まれています。
Get-Help Connect-VIServer -examples
PowerShell 内からヘルプを取得するための基本事項をいくつか確認した上で、ホストの構成に使用するコマンドレットをいくつか確認しましょう。
ESXi ホストへの接続
Connect-VIServer -Server IP_ADDRESS -Protocol https -User USER -Password PASS
システム情報の取得
Get-VMHost | Format- List
VM の一覧とステータスの取得
Get-VM | Format-List
特定の VM の詳細情報の取得
Get-VMGuest GUEST_NAME | Format-List
データストア情報の表示
Get-HardDisk -Datastore DATASTORE_NAME
指定した VM
の起動
Start-VM -VM VM_NAME -Confirm
指定した VM の OS の再起動
Restart-VMGuest -Guest GUEST_NAME -Confirm
指定したホスト サーバの再起動
Restart-VMHost -VMHost HOSTNAME -Force
これは決して網羅的なリストではありませんが、管理者がESXiインフラストラクチャをリモート管理し始めるための手助けとなるはずです。これらの知識に加えて、VMwareコミュニティフォーラムやGitHubなどのリソースでスクリプト作成のガイダンスを調べ、もちろん実践的な学習を通して、組織のニーズに最適なスクリプトを作成してください。