Geek

Microsoft がPowershellをオープンソース化して約半年。MacやLinuxでPowershellが利用できるようになり、既存のPowershellスクリプトをOSによって、javascriptだとか、ansibleだとかにコンバートする必要なくWindowsの構成管理ができるようになった。

そんな中、Vmware Flingsにて、オープンソース版のPowerCLIがリリースされていたため、手元のCentos に入れて仮想マシンの自動デプロイを試してみる。

デプロイに利用するスクリプトは、以前に作成したPowerCLIで仮想マシンを作成するためのスクリプトを利用する。


関連キーワード(ユーザータグ):
PowerCLI
Centos
VMware

Geek

PowerCLIからの権限付与方式については以前記載したが、今回は既存の権限設定変更について備忘録。

以前に記載した設定だと、

New-VIPermission -Entity $付与対象 \ 
-Role $付与ロール -Principal <ユーザ名>

となる。だからといって、

Set-VIPermission -Entity $付与対象 \ 
-Role $付与ロール -Principal <ユーザ名>

で良いかというと違う。というよりも、オプション Entity についてエラーとなる。 そんなオプションは存在しないからだ。


関連キーワード(ユーザータグ):
PowerCLI
VMware
仮想化

Geek
vSphere環境にある、Horizon Viewの仮想マシンをPowerCLIで操作する。
今回はWindows Updateを自動で適用させることをPowerShellで実行しつつ、その内容をメール送付する。

なんだかんだでなかなかViewの操作に入らないが、脱線して、
前回のWindowsUpdateの結果をメールで受信するまでにハマったので、こちらもメモ。


基本方針は、 スクリプト本体には可能な限り手を加えない。
ということで、まずはスクリプトのアウトプットを別ファイルに出力する。


そのために必要な変更は、以下の通り


関連キーワード(ユーザータグ):
VMware
PowerCLI
仮想化

Geek

リモートでPowershellの実行ができるようになったらいよいよViewを操作するコマンドを実行する。 今回、ざっくりと作成したのは以下の機能



  • ゲストOSでWindows Updateを反映させる
  • スナップショットを作成して再構築。


ゲストOSでのWindowUpdateを反映させるのは、山市良のえぬなんとかわーるどさんで公開されていた Windows Scripting: Windows Update をスクリプトから ( WindowsUpdate.ps1 ) の記事のスクリプトを利用させてもらった。


関連キーワード(ユーザータグ):
VMware
仮想化
PowerCLI

Geek
Powershell(PowerCLI)のリモート操作設定概要

Horizon Viewの各種操作をPowerCLIで操作する。 VMWareでVDIを利用していてGUIじゃいやだ!という人向け。超ニッチ。

以下の操作は、部分的にViewあるいはHorizonがインストールされているサーバから実行する必要がある。 というのも(おそらく)ViewPowerCLIという、View(Horizon)の操作に関するPowerCLIVMwareからはダウンロードできず リファレンスを読んでも、Connectionサーバで実行すること。 といった注釈が入っているからだ。たぶん仕様。おそらく仕様。

とはいっても、PowerShellは、リモートで実行する事ができるため、 Connectionサーバで(セキュリティ上許されれば)Powershellのリモートコマンドを受け取れるようにしてしまえば良い。

なお、リモートコマンドを受信するためには

  • ネットワークをPrivateまたはWorkGroupの設定にしておく
  • WinRMサービスを開始しておく
  • Firewallに穴を開けておく

事が必要。

備忘録がてら、以下、Powershellで外部コマンドの実行を許可する為の設定を記載しておく。


関連キーワード(ユーザータグ):
PowerCLI
VMware
仮想化