2013/12/01

Zabbix2.2 VMWare ESXi監視

さて、前回ざっくりとZabbix2.2とvSphereについて書いたが、
今回はVMWareESXiを監視対象とする手順を紹介してみる。
尚、Zabbix2.2のインストールは完了しているものとする。

2013/11/18

Zabbix2.2がリリースされました

待ちに待っていたZabbix2.2がようやくリリースされた。
Zabbixに関しては、以下の記事がわかりやすい。

@IT ZABBIXで脱・人手頼りの統合監視
http://www.atmarkit.co.jp/ait/articles/0908/13/news062.html

Windowsならリソースモニタ、あるいはSystemCenter、
vSphereならvCenterなど リソースを監視する機能は各システムに備わっているものの、
視認性が微妙だったり、コスト的に難があったりすることもある。
今回は特にvSphereに的を絞ってみたい。
----
5

2013/07/29

DISMコマンドを使ったイメージキャプチャ・展開 その2

前回はざっとWIMイメージファイルのことを書いてみた。
http://win-enikki.blogspot.jp/2013/07/dism.html

実際にイメージキャプチャする場合には、
以前はImageX.exeとよばれるツールを利用する必要があったのだけれど、
Windows8からは標準で組み込まれているDISMコマンドからキャプチャおよび展開することが
できるようになった。

イメージ管理のコマンド ライン オプション
http://technet.microsoft.com/ja-jp/library/hh825258.aspx

Windows8ベースのWindowsPE4.0でも同様にDismコマンドを利用することができる。
WindowsPEを作成し、キャプチャ・展開するまでの手順をまとめてみる。
4

(ここからは自環境で行った検証なので、
本番環境で利用等で利用し、うまく行かなかった場合でも責任をとることはできません。
参考資料として、各自検証していただければとおもいます。)



2013/07/26

DISMコマンドを使ったイメージキャプチャ・展開 その1

最近のマイブームはZabbixと英語勉強である。
ZabbixはvSphereを監視することができるというver2.2が出るのを今か今かと待ちわび、
英語の勉強ではiPhoneアプリやWebサービスがなかなかおもしろく、
どちらも興味深い。
ある程度 紹介できるネタがたまったら ブログに書きたいところなのだけど、
はたしていつになるであろう(;´∀`)


さて、今回はWindowsイメージキャプチャと展開を取り上げてみようと思う。
Windows標準の機能でイメージの取得と展開は可能なのだけれども、
WDS展開サービスやら、ImageXやら、WindowsPEやらと色々からんでしまうため、
自分の中で結局何が何だかわからないまま 使いきれていなかったので少し整理してみた。


2013/05/29

D-Rootのアドレスが変わっているのでWindows DNSルートサーバの更新

DNSルートサーバのひとつである、d.root-servers.net(D-Root)のアドレスが、
昨年末より変更されている。

株式会社日本レジストリサービス(JPRS)
http://jprs.jp/tech/notice/2013-01-07-d-root-ip-address-change.html

DNSの「D-root」サーバーのIPアドレスが変更、企業側サーバーも更新が必要(ITProニュース)
http://itpro.nikkeibp.co.jp/article/NEWS/20121218/445163/
 旧IPアドレス: 128.8.10.90
 新IPアドレス: 199.7.91.13



WindowsDNSの場合、他のルートサーバもリストにあればつなぎにいけなかった場合でも、再度別のサーバを見に行くので変更されてもすぐに何かおきるわけではないけれど、並行利用期間である6ヶ月もそろそろ終わりそうなので、更新はかけておく必要はあるかも。

更新は簡単で、DNSのプロパティからルートヒントタブを選択、d.root-servers.net を選択し編集を行う。(図はすでに変更したもの)
image

128.8.10.90 のIPアドレスを削除し、199.7.91.13を入力、追加する。

image
ActiveDirectory統合で運用している場合には、各DNSへレプリケートするので
1台だけ変更すれば終了。


関係ないかもしれないけれど、念のためキャッシュも確認しておく。
DNSの表示から[詳細設定]を選択
逆引き参照から[キャッシュされた参照]を確認。
d.root-servers.netのキャッシュが正しい値を参照しているか確認する。

image

気になる場合にはDNSサービスも再起動をかけても良いかもです。

2013/05/09

ViewClientをiPhoneにいれてみる

前々から、VMWare ViewをiPhoneで接続したら、どんなふうに見えるか気になっていた。
アプリでiphone用のViewClientの存在は知っていたので、とりあえず入れてみた。

image


2013/05/06

VMWare Horizon View設定 その2

前回は、サーバの準備まで。
http://win-enikki.blogspot.jp/2013/05/vmware-horizon-view-1.html

今回は、クライアントイメージの用意から。


VMWare Horizon View設定 その1

検証としてVMWare Horizon View5.2を入れてみる。

無償評価版ダウンロード
http://www.vmware.com/jp/products/desktop_virtualization/view/overview
VMware Horizon View 5.2 ドキュメントリソース
http://www.vmware.com/jp/support/support-resources/pubs/view_pubs/

おおまかな流れは以下のとおり。
1. vCenter インストール・設定
2.Connection Serverインストール、設定
3.View Composerのインストール、設定
4.View Clientのインストール、マスターイメージ作成
5.プールの作成・展開
6.VMWareClientからデスクトップ接続


2013/04/29

RDM経由でSATA認識、あわよくばWindows起動

VMWare Viewがアップグレードされ、VMWare Horizon Viewとなっている。
http://www.vmware.com/jp/products/desktop_virtualization/view/overview
ようやくまとまった時間がとれるようになったので、Viewの検証しようと思っていたが、
昨年末から自宅環境の構成を放置していたので、すっかり構成内容を忘れていた。

そして、ローカルサーバに接続しているSATAディスクに対し、RDMで利用できないか模索していたまま、中途半端にそのまま放置していたのを思い出した。

SATAでRDM
年末に、共有ディスク用のQNAP NASを購入したので、仮想OSはそちらに保存することとし、
ESXiデータはUSBフラッシュメモリ上に保存し、メモリを刺すだけでESXiで起動できるようにしている。
structure
ここで問題となったのは旧型機のML110はシングルコアの為、VMWareESXi5以降を起動させることができない点だ。
せっかく共有Diskを購入したのに、vMotionなどの利用に制限がかかるのはちょっと残念。
そんなこともあり、ESXiが入ったUSBメモリをもう一個用意し、
普段利用しているメイン機(192.168.11.2)に指し、年季の入った古いノートPCにvSphereClientをいれることで、検証環境を作った。


さて、これで一応の環境は整ったものの、検証するたびにメイン機が利用できなくなるのも面倒くさい。
メイン機をESXiで起動させ、共有Diskを見ると同時に、ローカルSATAを認識させ、さらにはRDMをつかって仮想OSとして普段使っているWindowsOSも起動できないか、、と考えたのである。
a
パススルーでSATAを認識させる方法もあるのだけど、
結局それだとSATAをVMFSにフォーマットして入れなおしが発生しちゃうので、あまりよくない。
やはりRDMで現在利用しているWindowsOSをそのまま残しつつ、
仮想化変換などの面倒な作業もとっぱらってそのまま利用できるのが理想。


2013/04/20

Windows8ガジェット

Windows8からは、デスクトップガジェットが廃止されている。
Vistaからはじまったこの機能、なかなか短命である。
今まで特に必要とはしていなかったけれど、
CPUやネットワークなどのメーターガジェットはコンパクトかつ視認性にすぐれているので
なきゃないで困る。
Googleデスクトップもサービス廃止されているし、あまりこの分野はもう発展性はないのかもしれない。


ともあれ、無理やりWindows8にガジェット機能をもたせるためには、
8GadgetPack というソフトがあるようだ。
http://filedir.com/windows/desktop/8gadgetpack-download-3552099.html


色々なガジェットがあらかじめ付いているみたいだけれど、
とりあえずシステム状態が見れるものを追加。
しばらくどんなものか使ってみよう。


2013/04/19

VCP510証明書が届いた


VCPの資格証明書が米国から届く。
はじめ不在者届けできていたから、国際郵便での届けに何事かと思ったさ。

試験合格は3月初旬だったけれど、なんだかんだで届くのに1ヶ月はかかる模様。
なおテスト勉強の知識のみで実技が伴ってないので、またぼちぼち動かしていこう。

Windows7 USBメモリ不可設定

USBメモリの利用不可設定の方法はいくつかあるが、
僕はグループポリシーよりも いろいろカスタマイズができるスクリプトを利用した制御のほうが
好き

@IT USB大容量記憶装置ドライバを無効にする
http://www.atmarkit.co.jp/fwin2k/win2ktips/629usb2/usb2.html

上記に書かれている通り、
KEY_LOCAL_MACHINEのSYSTEM\CurrentControlSet\Services\USBSTOR の
Start の値を4に変更するとUSBメモリを指しても認識しなくなる。

ただし、新しいメモリを刺した場合、USBメモリのドライバを取ってくるときに、上記のレジストリはクリアされ、(値が3に戻る)再び利用可能となってしまう。

対応方法として、%SystemRoot%\inf\ 配下の以下の2つのファイルのアクセス権を無効にする必要があるらしい
UsbStor.inf
UsbStor.pnf

ただ、僕のWindows7環境では上記のアクセス権を無効にしても、相変わらずドライバはインストールされ続け、USB利用も可能になってしまった。なので以下のファイルのアクセス権を無効にした。
C:\Windows\System32\DriverStore\INFCACHE.1

上記ファイルのSystem、Everyoneのアクセス権をフルコントロールで拒否することで、
ドライバのインストールは試みるものの失敗するようになり、USBメモリを利用できない動きが確認できた。

あとはどのように上記アクセス権を変更するかだが、
Windows7の場合icaclsコマンドがあるので、それを利用する。
ただし、そのままアクセス権変更を実施してもUACが邪魔するので、解除した上で実行する必要がある。
また、一般ユーザーでは変更権限をもたないので、GPOのスタートアップスクリプトを利用して展開するのが理想。

以下、スクリプト
nonusb.vbs
<# 


On Error Resume Next
'listがoffの場合には、'System権限、Users権限をなくすスクリプト。
'スタートアップによる実施が必要

Dim objWMI, objShell, osInfo, os
Dim objWsh, objNetwork, objFS, objTS
Dim CompName, objFile, host

Set objWsh = WScript.CreateObject("WScript.Shell")
Set objNetwork = WScript.CreateObject("WScript.Network")
Set objFS = WScript.CreateObject("Scripting.FileSystemObject")

' Vistaかどうかチェックし管理者権限に昇格させる
do while WScript.Arguments.Count = 0 and WScript.Version >= 5.7
    Set objWMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
    Set osInfo = objWMI.ExecQuery("SELECT * FROM Win32_OperatingSystem")
  
    For Each os in osInfo
        If left(os.Version, 3) < 6.0 Then exit do
    Next
    
    ' 引数付きでwscriptを管理者権限で再実行
    Set objShell=CreateObject("Shell.Application")  
    objShell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName & Chr(34) & " uac","","runas",1
    WScript.Quit
loop


CompName =  objNetwork.ComputerName   'コンピュータ名を変数に保存
objFile = "usblist.txt"
Set objTS = objFS.OpentextFile(objFile)


Do Until objTS.AtEndOfStream
 List = objTS.readline
' WScript.Echo host
'カンマで区切ったものを配列に入れる
 List_Item = Split(List,",")
 Host = List_Item(0)
'大文字、小文字の両方で利用可能にする
 oomoji = Ucase(Host)

 If host = CompName OR oomoji = CompName Then

  Select Case List_Item(1)

  Case "ON","on"
   objWsh.Run("cmd /c icacls C:\Windows\System32\DriverStore\INFCACHE.1 /reset")
   objWsh.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Start", "3","REG_DWORD"
  Case "OFF","off"
   objWsh.Run("cmd /c takeown /F C:\Windows\System32\DriverStore\INFCACHE.1 /A")
   WScript.sleep(100)
   objWsh.Run("cmd /c icacls C:\Windows\System32\DriverStore\INFCACHE.1 /inheritance:d")
   WScript.sleep(100)
   objWsh.Run("cmd /c icacls C:\Windows\System32\DriverStore\INFCACHE.1 /deny system:F /deny users:F /deny everyone:F")

   objWsh.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Start", "4","REG_DWORD"

  End Select

 End If
Loop

usblist.txtを用意し、
PC名,off
PC名,on
と書かれたリストを用意し、任意のPCがonの場合はUSB利用許可、offの場合は不可となるようにする。