仮想マシン
 Computer >> コンピューター >  >> ソフトウェア >> 仮想マシン

VMware PowerCLI:vSphereおよびESXiをインストールおよび管理する方法

VMware vSphere PowerCLI コマンドプロンプトからVMwareインフラストラクチャを管理するためのPowerShellモジュールのセットです。 PowerCLIを使用して、仮想マシン、データストア、ネットワーク、またはユーザーの状態を取得し、さまざまな設定を管理し、新しいオブジェクトを作成し、ESXi、vCenter Server、vSphere、vSAN、およびその他のVMware製品の自動化タスクでPowerShellを使用できます。

現在、VMwareはPowerShell Core(7.0以降)専用のPowerCLIバージョンを開発しています。このPowerShellバージョンはクロスプラットフォームであり、Windows、Linux、またはmacOSで使用できます。 Windows PowerShell 5.x用の以前のPowerCLIモジュールについては、セキュリティ修正のみがリリースされています。更新されたPowerShellCoreバージョンを使用することをお勧めします。

WindowsにVMwarePowerCLIモジュールをインストールするにはどうすればよいですか?

VMwarePowerCLIはWindowsにオンラインまたはオフラインでインストールできます。

PowerShellギャラリーからPowerCLIをオンラインでインストールするには、次のコマンドを実行します。

Install-Module -Name VMware.PowerCLI

PowerCLI vSphereバージョン6.5以前は、MSIインストーラーとして配布されました。

現在のユーザーのみにモジュールをインストールする場合:

Install-Module VMware.PowerCLI -Scope CurrentUser

既定では、最新のPowerCLIバージョンがPowerShellギャラリーからインストールされます。特定のPowerCLIバージョンをインストールする場合は、使用可能なバージョンの完全なリストを表示して、必要なバージョンをインストールできます。

Find-Module -Name VMware.PowerCLI -AllVersions|select version
Install-Module -Name VMware.PowerCLI -RequiredVersion 12.4.0.17860403

VMware PowerCLI:vSphereおよびESXiをインストールおよび管理する方法

インストール中に、NuGetプロバイダーを更新するように求められます。また、信頼できないPowerShellGalleryリポジトリからのインストールを確認します。 Set_PSRepositoryを使用して、信頼できるものにすることができます コマンドレット。

PowerCLIモジュールがインストールされていることを確認し、それらのバージョンを表示します。

Get-Module -ListAvailable VMware* | Select Name,version

VMware PowerCLI:vSphereおよびESXiをインストールおよび管理する方法

PowerCLIモジュールのバージョンを更新するには、次のコマンドを実行するだけです。

Update-Module -Name VMware.PowerCLI

WindowsにChocoパッケージ管理モジュールがインストールされている場合は、リポジトリにPowerCLIモジュールがあります。

choco search vmware

インストールします:

choco install vmware-powercli-psmodule

PowerCLIモジュールはwingetではまだ利用できません。

隔離されたコンピューター(切断された環境)にPowerCLIをインストールする場合は、オフラインインストーラーを使用できます。

  1. PowerCLIモジュールhttps://code.vmware.com/web/tool/vmware-powercliを使用してZIPファイルをダウンロードします(現在のVMware-PowerCLI12.4.1を使用したZIPアーカイブのサイズは約80MBです)。
  2. コンピューター上のPowerShellモジュールを含むディレクトリにアーカイブを解凍します($env:PSModulePathを使用してPoShモジュールディレクトリのリストを取得できます)。 )。通常、C:\Program Files\WindowsPowerShell\Modules 使用されます。
  3. インターネットからダウンロードしたファイルのブロックを解除します:
    cd “c:\Program Files\WindowsPowerShell\Modules”
    Get-ChildItem * -Recurse | Unblock-File
  4. PowerShellコンソールを開き、PowerCLIモジュールが使用可能になっていることを確認します。Get-Module -Name VMware.PowerCLI –ListAvailable
PowerShellモジュールのオフラインインストールの詳細をご覧ください。

PowerCLIモジュールを現在のPowerShellISEまたはVisualStudioCodeセッションにインポートするには、次のコマンドを実行します。

Import-Module VMware.VimAutomation.Core

モジュールのロード時に次のエラーメッセージが表示される場合があります:

Import-Module: File C:\Program Files\WindowsPowerShell\Modules\VMware.VimAutomation.Sdk\12.4.0.18627054\VMware.VimAutomation.Sdk.psm1 cannot be loaded because running scripts is disabled on this system.
>

次に、PowerShellスクリプト実行ポリシーを構成する必要があります。現在のセッションでモジュールを使用できるようにするには:

Set-ExecutionPolicy Unrestricted -Scope Process

リモートコンピュータにインストールされているPowerCLIモジュールを使用できます。これを行うには、PSRemotingを使用してリモートでインポートします:

$session = New-PSSession -ComputerName mun-svr01

PowerCLIモジュールをコンピューターにインポートします:

Import-Module -PSsession $session -Name VMware.VimAutomation.Core

終了したら、セッションを閉じることを忘れないでください:

Remove-PSSession $session

LinuxへのPowerCLIモジュールのインストール

PowerCLIは、WindowsとLinuxの両方にインストールして使用できます。まず、PowerShellCoreをLinuxホストにインストールします。次に、コンソールで次のコマンドを実行して、VMwarePowerCLIをインストールします。

pwsh
Install-Module -Name VMware.PowerCLI

VMware PowerCLI:vSphereおよびESXiをインストールおよび管理する方法

モジュールをセッションにインポートします:

Import-Module VMware.PowerCLI

VMwarevSphereおよびVMを管理するための基本的なPowerCLIコマンド

PowerCLIモジュールのコマンドレットのリストは次のように取得できます(2200を超えるコマンドが使用可能です):

Get-Command –Module *vmware*

VMware PowerCLI:vSphereおよびESXiをインストールおよび管理する方法

VMwareカスタマーエクスペリエンス向上プログラム(CEIP)通知を無効にするには:

Set-PowerCLIConfiguration -Scope AllUsers -ParticipateInCeip $false

vCenter ServerまたはESXiホストに接続するには:

Connect-VIServer <vCenter_or_ESXi_FQDN>

vCenter Serverに自己署名SSL証明書を使用している場合、PowerCLIは接続をブロックします:

Connect-VIServer Error: Invalid server certificate. Use Set-PowerCLIConfiguration to set the value for the InvalidCertificateAction option to Prompt if you'd like to connect once or to add a permanent exception for this server.
Additional Information: Could not establish trust relationship for the SSL/TLS secure channel with authority.

自己署名証明書を無視するには:

Set-PowerCLIConfiguration -Scope AllUsers -InvalidCertificateAction Warn

ESXi(またはvCenter)サーバーに登録されている仮想マシンのリストを表示するには:

Get–VM

電源がオフになっているVMのみを表示するには:

Get-VM | Where {$_.Powerstate -ne “PoweredOn”} | Select Name, VMHost, NumCPU, MemoryMB, Version|Format-Tableを選択します

VMware PowerCLI:vSphereおよびESXiをインストールおよび管理する方法

仮想マシンを起動するには:

Start-VM -VM MUNTestVM1

VMを正しく再起動するには(VMwareツールエージェントを使用):

Restart-VMGuest -VM MunTestVM1 -Confirm:$False

VMをシャットダウンするには:

Shutdown-VMGuest -VM MunTestVM1 -Confirm:$False

VMのスナップショットのリストを表示するには:

Get-VM -VM MunTestVM1 | Get-Snapshot| Format-List

VMotionを使用して実行中のVMを別のホストに移動するには、Move-VMコマンドを使用します。たとえば、すべてのVMをmun-esxi1からmun-esxi2に移動するとします。

Get-VMHost mun-esxi1|Get-Vm| Move-VM –Destination (Get-VMHost mun-esxi2)

新しい仮想マシンを作成するには、 New-VMを使用します コマンドレット:

New-VM –Name MunTestVM1 -VMHost mun-esxi1 –ResourcePool Production –DiskGB 20 –DiskStorageFormat Thin –Datastore MUN_MSA2000_Prod1

Set-VMを使用する 仮想マシンの設定を変更するためのコマンドレット。

PowerCLIコマンドレットを使用すると、仮想マシンのゲストオペレーティングシステムと対話できます。これを行うには、VMwareToolsをVMにインストールする必要があります。次のようにVMwareToolsを更新できます。

Get-VMGuest MunTestVM1 | Update-Tools

Invoke-VMSを使用すると、ゲストWindowsOSでスクリプトまたはプログラムを実行できます。

$script = '"%programfiles%\Common Files\Microsoft Shared\MSInfo\msinfo32.exe" /report "%tmp%\inforeport"'
Invoke-VMScript -ScriptText $script -VM MunTestVM1 -HostCredential $hostCred -GuestCredential $VMCred -ScriptType Bat

ファイルをすべてのVMにコピーするには、次のコマンドを実行します。
Get-VM | Copy-VMGuestFile -Source C:\PS\get-size.ps1 -Destination C:\PS\ - LocalToGuest -GuestUser administrator -GuestPassword P@ssdr0w2

このモジュールには、クラスター、データセンター、データストア、およびESXiホストを管理するためのコマンドレットが含まれています。

Get-VMHost
Get-Datacenter
Get-Cluster
Get-Datastore
Get-VirtualPortGroup

クラスタ内のESXiホストのリストを表示するには:

Get-Cluster munprod1 | Get-VMHost | sort name

特定のESXiホストをメンテナンスモードにします。
Set-VMhost -VMHost mun-esxi1 -State Maintenance

iSCSI LUNをESXiホストに接続し、その上にVMFSデータストアを作成するには:
Get-ScsiLun -VmHost mun-esxi1 | ft
New-Datastore -Name 'mun_iscsi_datastore' -VMHost mun-esxi1 -Path naa.6000xxxxxxxxxxxxxxxx -Vmfs

ヒント。 PowerCLIは、無料のVMwarevSphereHypervisorで読み取り専用モードで動作します。つまり、コマンドを使用してホストとVMの設定を表示することはできますが、変更することはできません。

PowerCLIサンプルスクリプト

PowerCLIを使用してVMwareインフラストラクチャアイテムに関する情報を取得し、Webサイトでのいくつかのアクションを自動化する例がいくつかあります。次の記事の例を使用して、独自のPowerCLIスクリプトを作成できます。

  • VMFSデータストアの空きディスク容量を確認する
  • VMware仮想ディスク(VMDKファイル)とWindowsドライブボリュームのマッピング
  • IPまたはMACアドレスでVMwareVMを検索する方法
  • VMwareESXiホストでSNMPを構成する
  • スタックしたVMwareVMを強制的に再起動する方法
  • VMwareテンプレートでWindowsUpdateを自動化する方法
  • ESXiインストールイメージへのドライバの挿入
  • VMwareVM統合に必要なステータスアラーム
  • VMハードウェアバージョンのアップグレード

vSphere PowerCLI は、VMwareインフラストラクチャを管理および自動化するための強力なツールです。 PowerCLIには、クラウドおよびオンプレミスのVMwareインフラストラクチャ(vSphere、vSAN、vRealize Operations Manager、vCloud Director、Site Recovery Manager、Horizo​​n、NSX-T、VMware Cloud Services、VMware Cloud on AWSなど)を管理するための2000を超えるコマンドレットが含まれています。


  1. Microsoft Edge の拡張機能をインストールして管理する方法

    Microsoft Edge には、Web をさらに活用できるいくつかの強力な機能が既定で含まれています。 Microsoft は、Web ノートで Web ページに注釈を付けたり、Cortana で情報を検索したり、閲覧モードで記事を楽しんだりすることを容易にしていますが、拡張機能をインストールすることで、Edge のエクスペリエンスをさらに向上させることができます。 Microsoft は、昨年の夏に Windows 10 Anniversary Update で Edge の拡張機能ストアを立ち上げました。 2015 年 11 月の更新プログラムまたは元のバージョンの Windows

  2. VMware ESXi で仮想マシンのクローンを作成する方法

    このチュートリアルは多くのホーム ユーザーには当てはまらないかもしれませんが、何らかの理由で環境内で VMware ESXi を使用している場合は、この記事が気に入るはずです。 VMware ESXi はベアメタル ハイパーバイザーであり、無料で提供されます。これは、無限に高い価格を含め、すべてを備えた、より完全な機能を備えた ESX Server 製品を購入するよう説得するための一種のティーザーです。 ESXi は、ベアメタル仮想化のための貧乏人のソリューションのようなものです。そのため、主要な製品の一見明白な機能のいくつかが欠けています。クローンのように。幸いなことに、ESXi でのマ