仮想マシンの情報取得

最初に仮想マシンの情報を取得してみましょう。Get-VMコマンドで仮想マシンの一覧(仮想マシン名、電源状態、CPU数、メモリ容量など)が確認できます。

図3:Get-VMコマンドの実行例

図3:Get-VMコマンドの実行例(クリックで拡大)

メンバー変数の確認

PowerCLIをインストールすると「vSphere PowerCLI Cmdlets Reference」ヘルプが一緒にインストールされます。コマンドの使い方などの詳細はそちらを参考にしてください。

PowerShellはオブジェクト指向だと最初に書きましたが、各コマンドの戻り値は実はオブジェクトです。オブジェクトなのでメンバー変数もあります。どんなメンバー変数(プロパティ)があるかを確認するには、以下のコマンドを実行します。出力結果は省略しますが、皆さんも一度試してみてください。

Get-VM | Get-Member

詳細の出力

では、仮想マシン名「vCenter」の情報をもう少し詳しく確認してみましょう。「Select-Object」で表示したいオブジェクトを確認することができます。今回は、仮想マシン名、電源ステータス、CPU数、メモリ、ネットワークアダプタ情報を表示させました。

Get-VM -Name vCenter | Select-Object Name, PowerState, NumCpu, MemoryMB, 
NetworkAdapters

図4:Get-VMの詳細情報確認の実行例

図4:Get-VMの詳細情報確認の実行例(クリックで拡大)

実例紹介

ここからはRePlavailなどで実際に使用しているスクリプトを一部抜粋して実例を紹介していこうと思います。

仮想マシンの新規作成

仮想マシンの新規作成もコマンドから作成することができます。メモリーサイズなどは「-MemoryMB」で指定できますが、引数をカッコつきで「(1024*2)」などと指定すると計算された結果が引数として利用されますので便利です。

New-VM -Name 'win2k3-001' -vmhost (Get-VMHost -Name 192.168.0.221) 
-Datastore 'datastore' -NumCpu 1 -DiskMB (1024*30) -MemoryMB (1024*2) 
-DiskStorageFormat 'thin' -GuestID 'winNetStandardGuest'

仮想マシン名を「win2k3-001」としていますが、「win2k3-001」から「win2k3-005」の5台の仮想マシンを作成したい場合は以下のとおりです。

1..5 | foreach {
New-VM -Name ("win2k3-{0:000}" -F $_) -vmhost (Get-VMHost 
-Name 192.168.0.221) -Datastore 'datastore' -NumCpu 1 -DiskMB (1024*30) 
-MemoryMB (1024*1) -DiskStorageFormat 'thin' -GuestID 'winNetStandardGuest'
}

「1..5」で1から5までの配列が作成されます。それを「foreach」で受け取ります。「$_」は「現在のパイプライン オブジェクト」となりますので、1から5が順番に入ります。今回のポイントは、「"win2k3-{0:000}" -F $_」になります。この表現は文字列書式のフォーマットで「win2k3-001」から「win2k3-005」までを作成します。

実行結果は以下のとおりです。作成された仮想マシンの一覧が表示されます。

図5:仮想マシン作成の実行例

図5:仮想マシン作成の実行例(クリックで拡大)

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30