Windows2000に最新のVMwareToolsをインストールする際のメモ

windows 2000 へ VMware Toolsインストール時のパッチ当てについて

VMware toolsインストール時にエラーとなる場合は、 スナップショット取得後、次のパッチを適用してください。

Windows2000-KB835732-x86-JPN.exe

可能であれば、このパッチより先に
Windows 2000 Service Pack 4 (SP4)
を当てたほうがいいのですが、既存環境からのP2Vとかの場合だと、これを入れるのは厳しいのが実情です。

また、このパッチを当てた後、CPU負荷異常が発生する場合があります。

その場合は、以下を参照
https://support.microsoft.com/ja-jp/kb/841382

また、デバイスマネージャを開き、黄色「!」がついたデバイスがあれば無効にすると解決する場合があるとのことです。

Windows2000の場合、VMware Toolsが入らない場合は、
FlexibleをNICにしていると10MbpsのレガシーNIC(Vlance:AMD79C970 PCNet32-LANCE)で認識してしまいます。
その場合は、e1000を使うしかありませんがOS標準でドライバーが入っていないので、別途ダウンロードする必要があります。

以下のナレッジからリンクをたどると、Win2000用のドライバがダウンロードできるので、別途インストールしてください。
(ファイル名はPRO2K.exe)

Windows XP Professional 32 ビットおよび Windows 2000 32 ビット ゲスト OS 上で、E1000 vNIC がサポートされているのに E1000 NIC ドライバが自動的に使用可能にならない (2096212)

 

ESX5.5でHW Vertion10(vmx-10)の仮想マシンを編集する方法

実は、コレはvSphereClient5.5のUpdate1までの制限です。

vSphere Client 5.5のUpdate 2以降(build 1993072以降)を使えば、
警告は出るけどvShereClientの触れる範囲(vmx-8までの機能部分)であれば編集できます。

この制限は、vSphereClient側でかかっていたので、ESX5.5GAやU1に
vSphereClient5.5のUpdate2以降で接続した場合でも編集できるようになっています。

Hw10EditHw10Edit-2

ちなみに同様に、ESX5.1でも 、vSphare Client 5.1 U2 以降を使用すれば
vmx-9の仮想マシンでも編集できます。

 

ESXi仮想マシンでのメモリダンプ取得方法についてのメモ

仮想マシン内のゲスト OS の重大なエラーを特定する (2081131)
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2081131

(補足:.vmsnからWindowsコアダンプファイルへの変換方法についてへのリンクもあります)

Windows 仮想マシンで手動メモリ ダンプを生成する (2101987)
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2101987

(補足:Windowsのメモリダンプを取得する方法[物理サーバと同様です])

ESX/ESXi 上で仮想マシンをクラッシュさせて診断情報を収集する (2094454)
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2094454

他にもNMIのクラッシュダンプを取得する方法もあるようです。
http://norimaki2000.blog48.fc2.com/blog-entry-1301.html

(この場合、NMI割り込みをかけるだけなので、挙動としてはゲストOSに依存します。)

 

AndroidをESXi仮想マシンのスピーカーにする方法

AndroidをPC(ESXiの仮想マシン)のスピーカにしてみたので、そのメモ

ESXiの仮想マシンの場合、通常の方法では、音を鳴らすことができません。
そこで、通常ではない方法の一つとして、AndroidをESXi仮想マシンのスピーカーにする方法を試してみました。

有償ソフトもあるけど、とりあえず試したのは、「WiFi Audio Wireless Speaker」。

このソフトは、PC(Xp,Vista以降、Pluse Audioを使用しているLinux)で出た音声を、同一ネットワーク上にあるAndroidに送信して、Androidのスピーカーから出すことができます。

 

まずは、Android側に上記のアプリをPlayストアからダウンロードして、起動します。

操作は基本的に、WiFi Audio Statusを OFF/ONしかありません。

ONにすると、受信した音が鳴るようになります。
また、画面下にはIPアドレスが表示されます。

 

次に送信先となるWindowsに送信用アプリを以下からダウンロードします。

http://ajeetv.info/wifiaudio/

WiFiAudio-Web

それぞれのOSに合わせた送信用ソフトウェアをダウンロードします。

Windows Vista以降
Linux (with Pulse Audio)
WindowsXP (with Wave Mix/Stereo MIx)

基本的にダウンロードしたファイルを実行するだけです。

WiFiAudio-exe

 

実行してIPアドレスを入れて、Startを押すだけで、PCで鳴らした音がAndroidから流れるようになります。

WiFiAudio-PC

 

ただし、物理PCの場合、物理PCのスピーカーもONになっていると、PC側とAndroid側の両方から音が鳴ります。
Android側からの音は若干の遅延が発生するのでエコー状態になるので
PC側のスピーカの音量を0にするか、ミュート状態にする必要があります。

また、通信時のビットレートは約1.4Mbps程度です。圧縮転送の機能はありませんので、
その場合は別のソフトの有償版を使うしかないようです。

WiFi Speaker(無償版)WiFi Speaker Pro(有償版)
SoundWire (free version)SoundWire (full version)
(両方未検証です)

また、1つのAndroidに複数のPCから音声を転送しようとすると、ノイズが多くなり事実上使えませんでした。

 

で、このオレ的用途ですが、
このアプリを使えばESXi内の仮想マシンから音声を出力することが出来ます。

ただし仮想マシンにAudioデバイスがないと、PC側アプリでStartできませんので
何らかのAudioデバイスを仮想マシンから認識させなければなりません。

物理的なデバイスをつけないという条件であれば、
ESXi仮想マシンのvmxファイルに隠しパラメータであるHDAudioをつける記述を行うか、
仮想Audioデバイス(XPの場合はTiVSound。Windows 7以降であればNetDuetto付属の仮想デバイスがお勧め)をインストールする必要があります。

上記の仮想的なデバイスは、OSからはAudioデバイスがあるように見えますが、実際に音を出すことは出来ません。ただし、Audioデバイスがないと動かないようなソフトウェアがこれをつけると動くようになります。
今回のWiFi Audio Wireless Speakerもこれで動くようになります。

 

ESXiの仮想マシンから音を出す方法は、ほかにも色々あるのでそのうちまとめる予定です。

ESXiでThinディスクをシュリンクする場合のメモ

ESXiでThinディスクをシュリンクする

ESXiで、Thinディスクを作成して仮想マシンにマウントした場合、
ファイルを作成するに従ってVMDKのサイズが増えていきますが、
ファイルを削除しても、VMDKのサイズは減りません。

VMDKファイルのサイズを小さくすることをシュリンク(shrink)と呼ぶこともあります.

 

ESXの場合、基本的には、以下の2つの処理をおこなうことでシュリンクすることができます。

・SDeleteで仮想ディスク内の過去使用したことがあるが、現在未使用領域のNullクリア

SDelete -z ドライブ文字

・仮想マシンを停止して、vmkfstoolでNullブロックを削除する

vmkfstools -K /path/to/disk-name.vmdk

 

注意点としては
・Nullクリアする段階でThinディスクは事実上Thickディスクになります。
つまり、Nullクリア完了時点でVMDKサイズに割り当てした最大容量にまでおおきくなるので、その分の空き容量がデータストア上に必要です。

・スナップショットやリンククローンを使用している場合は、シュリンクできません。

ESX3.5の頃は、Nullクリアした上でThinでStorage vMotionすればシュリンクされたような気がするけど、
ESX4.0以降では、同じブロック間のデータストア間のStorage vMotionだとNullは回収されない模様。別のブロックサイズであれば、回収されるようです。

SDelete & vmkfstoolsの場合は、仮想マシンを停止しなければいけないで、どうしても仮想マシンON状態でやりたい場合は、SDelete & Storage vMotion(別ブロック長間 or FC,iSCSI,DAS<->NFS で移動)もひとつの手かと。

 

(今回の参考)

ESXi/ESX によってホストされた仮想マシン上の VMware Tools 圧縮オプション (2094653)

http://kb.vmware.com/selfservice/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=2094653

Storage vMotion でシン ディスクを移行したとき null ブロックが回収されない (2092768)

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2092768

ESXでAFT-Diskを使う場合について少し調査中

ESXでAFT-Diskを使う場合について少し調査中

ESX5.0以降であれば、VMFS領域確保時に、領域の最初は4KBにあわせて確保されるので、アライアンスを気にする必要はない模様

ただし、VMFS上に作成したVMDKは512バイトセクターとして見えますが、実際にアクセスするHDDはAFT領域(論理512,物理4096)なので、結局はゲストOSからしてみれば、AFT-Diskを使用するのと同じ注意が必要

Windows のVISTA/7/2008 SP1以降は、領域確保時にクラスタ協会が4KBに合う様に調整され、NTFSであれば標準4KBクラスタなので、実際影響はありません。

ただ、その他のOSについては、別途確認が必要です。

Solaris系ですと、デフォルトでは512KB単位でのアクセスになるようなので、AFTの影響を受けます。

特に、Windows XPでは、ほとんどの場合AFTの影響を受けます。
XPのインストール時のフォーマットでは、63セクターから領域が確保されるため、4K境界と合っていないためです。

事前にWindows 7 SP1以降でHDDをフォーマットすれば、2048セクターから領域が確保されるので、その後WindowsXPをインストールすればよいという話もありますが、すでにWindowsXPをインストール済みの場合はそうはいきません。

専用のソフトもありますが、有償のものや特定のHDD専用が多いので無償でできるものがないかを調べてみました。

見つけたのは、パーティション変更のためのCD-BOOTタイプのソフトである、「gparted」
本来はデータを保存したままでパーティーションサイズの変更に便利なソフトウェアですが、
パーティーションの領域移動もできるので、この機能を使ってアライアンスを調整します。

ISOが以下のサイトからダウンロードできるので、そこからブートします。
http://sourceforge.jp/projects/gparted/releases/

まずは現状確認。開始セクターは63になっています。

xp-gpearted1

リサイズ/移動をクリックします。

Align to: をMiBになっていることを確認し、前方の空き領域(MiB)に1を指定します。
後方の開き領域があれば、その分 ヘるためサイズの変更はありません。

変更後、リサイズ/移動ボタンをクリックします。

xp-gpearted4

変更内容を確認し、Applyをクリックします。

xp-gpearted5

パーティション領域の移動が開始されます。

xp-gpearted6

完了。

xp-gpearted7

移動後確認すると、開始セクターが2048になっていることが確認できました。

xp-gpearted8

 

Windows XPを起動すると、Checkが走りますが、その後正常に起動できます。

xp-gpearted9

 

なお、アライアンス調整をする前とした後だと、
シーケンシャルReadで2倍、シーケンシャルWriteで1.5倍の差が出ました。

ただ、この結果はNexentaStorというストレージOS上のZFS領域を仮想マシンのデータストアとして使用した場合なので、直接HDDにアクセスした場合とは異なります。
なお、ZFSはSSDをReadキャッシュ(CACHE)やWriteキャッシュ(LOG)に指定できるため、その状態だと、そのこまでの差が出なくなります(SSDが差を吸収しているようです)。

aft5

 

なお、4TBクラスで、AFTではないHDDには以下のようなものがあります。

MD03ACA400

東芝製の4TB SATA-HDDのバルク品。
「回転数は7,200rpm、MTTFは100万時間。512セクター対応品」

他のハードディスクがどちらかについては、以下のURLが参考になります。
http://www.pc-master.jp/jisaku/aft-hdd.html

 

その他参考URL

https://www.allbsd.org/~hrs/diary/201109.html

https://www.icts.uiowa.edu/confluence/pages/viewpage.action?pageId=67307552

https://community.oracle.com/thread/2501822

http://openindiana.org/pipermail/openindiana-discuss/2013-August/013669.html

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2014761

http://blog.delphix.com/gwilson/2012/11/15/4k-sectors-and-zfs/

http://wiki.illumos.org/display/illumos/List+of+sd-config-list+entries+for+Advanced-Format+drives

 

 

VMware vSphere PowerCLIを使用したスクリプトをバッチから起動するためのメモ

VMware vSphere PowerCLIを使用したスクリプトをバッチから起動するためのメモです

VMware vSphere PowerCLIは便利ですが、VMware vSphere PowerCLIコンソールを立ち上げてからのコマンド実行なので、少しめんどくさいです。なので少し調べてみました。

なお、VMware vSphere PowerCLIは、以下からダウンロードできます。

ダウンロード vSphere PowerCLI 5.5

VMware vSphere PowerCLIに限らずですが、
Powershell スクリプトファイル(.PS1)を実行するためにはポリシー変更が必要です。

VMware vSphere PowerCLIを初回起動時には以下のように表示されます。

 

この場合、管理者として実行したPowershellにて、以下のコマンドを実行する必要があります。

(上記の場合、ローカルのローカルに保存されているスクリプトは実行可能。インターネットからダウンロードしたスクリプト(非ローカルのスクリプト)は、署名されているもののみが実行可能。)

そのほかのパラメータとしては、以下のようなものがあります。

Unrestricted
全てのスクリプトが実行可能。ただしインターネットからダウンロードしたスクリプトは、実行するかどうかが確認されるので、ユーザーが明示的に許可した場合のみ実行される

Bypass
全てのスクリプトが実警告やユーザーへの確認なしに、全てのスクリプトが実行可能

 

 

これで、VMware vSphere PowerCLIを起動した状態でPowerSHellからスクリプトファイルが実行できるようになります。

ためしに以下のps1ファイルを作成します

Get-PowerCLIVersion.ps1

 

これをVMware vSphere PowerCLIで実行します。

 

しかし、コマンドプロンプトやバッチファイルから以下のように実行しても、エラーになります。

 

この場合は、実行するps1ファイルに以下の行を追加します

 

実際にやってみます。

Get-PowerCLIVersion.ps1 を変更

 

コマンドプロンプトから実行してみます

実行できました。

あとは以下のようなバッチファイルを書けば、すぐに実行できますね。

VyOSを調べた結果のメモ

 

仮想環境内で使用できるソフトウェアルータのひとつとして、Vyattaがありましたが、
Vyattaが買収されてComminity Editonの開発が終わったため、フォークして再出発したものがVyOSらしいです。

 

ただし、ルータとしてではなくブリッジ接続(HUB)として動作させる場合、ESXi側で仮想スイッチで無差別モードをONにする必要があるはず・・・・

 

公式サイト

vyos.net/wiki

 

公式サイト 日本語翻訳サイト

vyos.net/wiki 日本語サイト

 

インストール手順

『Vyatta』からフォークした『VyOS』をインストールしてみた

 

標準にないWeb 設定画面を外付けするVirtual Applianceらしいです。

vyBuddy virtual appliance

 

Zabbix AgentとSNMPの設定方法

VyOS(Vyatta)をSNMPとZabbix Agent経由で監視してみる

 

NAT構成の作成方法例

VMware ESXi 5.5にVyOS1.0.4をインストールしてみました。

 

VPNの張り方

ソフトウェアルータVyattaとVyOSを用いてSoftLayerとオフィスをIPsec VPN接続する #softlayer

 

 

ESXiのStandalone VMRCについての説明を追記しました。

久しぶりに、
ESXi関連の記事を更新しました。

ESXi 5.xで各仮想マシンのコンソールへ直接アクセスする方法を調べてみた

Standalone VMRC(VMware Remote Console 7.0)を利用する方法。(2015/03/01追加)

を追記しました。

わざわざvmware playerや、ESX4.1のvSphereClientを入れなくても
コンソール表示できるようになります。

ただ、現状x64なWindowsにしか、インストールできない模様・・・

 

ESXiでパフォーマンス履歴を過去1時間だけでなく過去36時間(5分毎)を追加する。に関するメモ

パフォーマンス履歴を過去1時間だけでなく過去36時間(5分毎)を追加する。に関するメモ

ESXi単体で使用していると、過去のパフォーマンスは過去1時間しか確認できません。
ただ以下の設定をすると、vCenterがなくても、過去36時間のパフォーマンス履歴を確認できます。

sshもしくは、TSM経由でrootでログインする。

vi /etc/vmware/hostd/config.xml

<historicalStatsEnabled> false </historicalStatsEnabled>

<historicalStatsEnabled> true </historicalStatsEnabled>

1654343218_34
以下のコマンドを実行すると、サーバ自身を再起動しなくても反映される。
(ただし、vSphereClientの接続はいったん切断されるし、SNMPエージェントを有効にしている場合はWarmStartするので注意)

services.sh restart

取得間隔・保存期間は以下のファイルにかかれているらしい(未確認)。
/var/lib/vmware/hostd/stats/hostAgentStats.xml

なお、ESXiの場合、履歴データ自身はRAMディスク上に存在するため、サーバを再起動すると消えます。

なお元ネタはこちら。
http://www.vm-help.com/esx/esx3i/extending_performance_data.php

すると、Past dayという項目が追加されます

1654343218_246

過去36時間(1日半)の5分ごとのパフォーマンスが確認できます。

1654343218_164

設定&サービス再起動直後だと、パフォーマンスデータがクリアされているので、5分以上待ってvSphereClientのパフォーマンスにアクセスすれば、サービス再起動移行のデータが表示されます。

なお、この設定はESX3iの頃から使えますが、最新のESX5.5でも有効なようです。

 

 

 

VMware ESXi 4.1以上の仮想マシンで、リモート・コンソール間のコピー・アンド・ペースト操作の有効化のメモ

VMware ESXi 4.1以上の仮想マシンで、リモート・コンソール間のコピー・アンド・ペースト操作の有効化のメモ

マニュアル(VMware ESXi 4.1 Installable および VMware vCenter Server 4.1[http://www.vmware.com/jp/support/pubs/vs_pages/vsp_pubs_esxi41_i_vc41.html])より抜粋。

クリップボードにコピーされた機密データの漏えい制限

ESXi では、クリップボードにコピーされた機密データの漏えいを防ぐため、コピー アンド ペーストの操作がデフォルトで無効になっています。
VMware Tools を実行している仮想マシンでコピー アンド ペーストが有効になっている場合、
ゲスト OS とリモート コンソールとの間でコピー アンド ペースト操作が可能です。
コンソール ウィンドウにフォーカスが移るとすぐに、仮想マシンを操作している権限のないユーザーおよび実行中のプロセスは、
仮想マシン コンソールのクリップボードにアクセスできます。ユーザーがコンソールを使用する前に機密情報をクリップボードにコピーすると、
ユーザーが気付かない間に、機密データが仮想マシンにさらされています。この問題を防ぐため、ゲスト OS のコピー アンド ペースト操作はデフォルトで無効になっています。
必要な場合は、仮想マシンのコピー アンド ペースト操作を有効にできます。

 

該当の仮想マシンを停止

1.vSphere ClientからESXiにログインして、コピー・アンド・ペースト操作を有効にしたい仮想マシンを選択
2. [サマリ] タブの [設定の編集] をクリック
3. [オプション]タブの[詳細] – [全般] を選択し、 [構成パラメータ]ボタンをクリック
4. [行の追加]ボタンをクリックして、次の値を名前と値の各列に入力

名前 値
isolation.tools.copy.disable false
isolation.tools.paste.disable false

5. [OK]ボタンをクリックして構成パラメータを閉じ、もう一度[OK]ボタンをクリックして仮想マシンのプロパティを閉じる

該当仮想マシンを起動後はクリップボード共有が使用きるようになります。

 

 

 

VMware ESXi 4.1のゲストOSとリモート・コンソール間のコピー・アンド・ペースト操作をデフォルトで有効にする方法

ESXi4.1ではクリップボードにコピーされた機密データの漏えいを防ぐためコピー・アンド・ペーストの操作が
デフォルトで無効にされている。(ESX4.0以前ではデフォルトで有効)
マニュアルでは各仮想マシンの設定を編集して有効にする方法が乗っているのだが、
ESXi4,0以前からのバージョンアップなどでが仮想マシンが多いと編集作業が面倒なので
デフォルトを有効にしたい場合は以下の設定を変更し、仮想マシンを一度停止した後で、起動してください。

sshもしくは、TSM経由(ローカルコンソール)でrootでログインする。

/etc/vmware/config ファイルを開き、
以下の行を追加

isolation.tools.copy.disable=”FALSE”
isolation.tools.paste.disable=”FALSE”

これで、以後設定したESXiで起動した仮想マシンでクリップボード共有が使用できるようになります。

参考URL
http://kb.vmware.com/kb/1026437

NexentaStor on ESXi 的なお話。

NexentastorのESXiへのインストール

今回はNexentaStore 3.1.5をESXi上にインストールします。

●仮想マシンの作成
「新規仮想マシンの作成」から、構成で標準でセットアップ
注意点は、
・ゲストOSをSolarisのSun Solaris 10(64-bit)に変更
・HDDは、SCSIで20GBで作成(OS部分のみに必要な容量です。)
・メモリを標準1GBから2GB以上に変更
・CD/DVDで、データストアISOファイルにダウンロードしたNexentaStor-Communityのisoを指定し、
パワーオン時に接続にチェックを入れる
・NICでネットワーク接続先を、任意の場所に指定
・起動HDDを冗長化する場合は、SCSI-HDDを20GBでさらにもう一個追加する。

なお、標準にすれば、SCSIコントローラはLSI Logic、NICはE1000になるはずです。

●インストール
電源オンでインストールが始まります。
注意点としては、起動HDD冗長化するときには、2つのHDDにチェックを入れるというところです。
冗長化しないなら、1つで問題ありません。

●初期設定1
インストール完了後、再起動で製品登録の画面になります。
http://www.nexenta.com/register-evalにアクセスして、
画面に出ているMachine Signatureを登録します。

その後、IPアドレス/サブネット/DNS/デフォルトゲートウェイと、
管理用プロトコル/ポートを設定します。

●初期設定2
http<s>://<IPアドレス>:<ポート>にアクセスし各種設定を実施

Host Name: NS002
Time Zone: Asia Japan – Japan
Keybord Layout: Japanese

Admin/Rootのパスワード

メール設定は必要に応じて

ネットワーク設定も環境に応じて設定

iSCSIイニシエータの設定は、使用するなら設定

DiskやVolimes,Foldersの設定は、ここではまだストレージ用のHDDを追加していないためスキップ

もし、安全性よりパフォーマンス優先なら、「Optimize I/O perfoamance forCIFS/NFS/iSCSI UPS-backed deployments?」にチェックを入れる。

その後、一度電源オフ

●機器の追加
NICと、データ保存用HDDをハードウェアに追加します。
・NICはE1000で追加します。
ただし、ESX5.1のU2以降、ESX5.1GA上でNexentastorを稼動させる場合は、
VMXNET3にしないと大量の通信を行った場合にスループットが低下するようです。
(VMware ESXi 5.1 U2 または ESXi 5.5 GA における、e1000 アダプタを使用する Solaris 仮想マシンでのネットワーク スループットのパフォーマンスの問題 (2086372))
ただし、VMXNET3のインターフェイスではMTU変更は出来ない(失敗する)ようです。こんな情報も見つけましたが、まだ試していません。
(Cannot increase MTU setting for virtual machines running Solaris with VMXNET3 network interface (2032669))

・データ保存用HDDを追加する場合、SCSIコントローラを追加する場合は、LSI Logicパラレルを指定します。

RAIDを組む場合は、同一容量のHDDを必要台数分追加します。
ここでは、新しいRAID領域ごとに別のRAIDコントローラを追加して、その下にそれを構成するHDDを接続しています。

●追加した機器の設定
・NICの設定(IP/サブネットマスク/MTU)
Setting->Network
・HDDの追加
Data Management->Data Sets

・volumesの追加
ここで、HDDを選択してRAIDを構成します。RAIDを組まないこともできます。
ここでは、noRAIDとします。

・Foldersの追加
volumesの中に、Foldersを作成します。
ここでは、nfsとします。

・作成したFoldersで、NFSを有効にします。
設定はデフォルトで問題ありませんが、NFSのバージョンは3に変更します。
(Data Management -> Shares -> Configureからも設定できます。)
ただ、このままだとすべてのユーザが読み書きできるので、セキュリティ的には別途検討要です。

1654315653_11

・ESXから設定したNFS領域をマウントします。
構成 -> ストレージ -> ストレージの追加 -> ネットワークファイルシステム から追加します。
サーバ:NexentastorのIPアドレス
フォルダ:/volumes/<ボリューム名>/<フォルダ名> (例:/volumes/noRAID/nfs)
データストア名:データストア識別名

1654315653_105

●確認
この時点で、ESXiのデータストアとして、NexentaStorのNFSが参照可能となっています。
ただし、Write速度が非常に遅いと思います。

1654315653_205

●チューニング
主なチューニングに関連する項目は、以下のとおり

Setting -> Preferences

system
Sys_zfs_nocacheflush : デフォルトはno。YesにするとHDD内キャッシュが有効になるがDiskが仮想ディスクの場合の効果は不明。もちろん停電には弱くなるのでYesにする場合は自己責任で。

DataManegment -> DataSet

Folder
Record Size:128KB推奨
LogBuas: 通常はlatencyで問題なし。
ただし、シングルタスクでのパフォーマンスを求める場合はここをthroughputにすると
パフォーマンスが向上する場合があります。
Deduplication: 通常はoff。
有効にすると重複排除機能が有効になりますがその分CPU特にメモリ負荷が高くなり、結果的にパフォーマンスが落ちる傾向が強いです。
バックアップ用領域に利用すると効果が高いです。その場合の設定はsha256,verfyが比較的安全かも。
Compresson: 通常はoff。
有効にすると、圧縮機能が有効になりますが、その分CPU負荷が高くなります。ただし圧縮してDiskに書き込むことになるので、データの内容によってはパフォーマンスがあがる場合もあります。
on=lzjbと同義です。圧縮率は低いですが、CPU使用率も低い傾向があるようです。なお、gzip=gzip-6と同義になります。
on=jzjb -> gzip-1 -> gzip=gzip-6 -> gzip-9となるにしたがって圧縮率が上がりますが、CPU負荷も上がりますので、。
Sync: 書き込みパフォーマンスに重大な影響があります。
デフォルトは、Standerdです(WriteThrou的な設定)。
disableにすると、WriteBack的な動きになり、書き込みパフォーマンスが一気に上がりますが、
突然の停電などが発生した場合にデータ欠損が発生する可能性があります。
ただ、ZFS由来のZFSであれば、WriteHole問題が発生しないことになってますので、
大きな問題はない気がしますが、自己責任でお使いください。

Volume
Deduplication: Folder内の意味と同じ。Volume内のFolderに対するデフォルト値のようです。
Sync: Folder内の意味と同じ。Volume内のFolderに対するデフォルト値のようです。
AutpExpand: パフォーマンスとは直結しませんが、onにするとDiskサイズが増えたときに領域を自動拡張してくれます。

あとは、細かいチューニングをくりかえして、環境に応じた最適値を見つける必要があります。

最新版への更新はまた別途必要であれば。

 

その他ナレッジ

CUIコンソールの入り方

コンソール画面でrootやadminユーザでログインすれば、CUIで操作できます。
adminユーザでログインした場合は、shellが一般ユーザで起動します。suで特権モードでのshell操作も可能です。

また、rootの場合はNMC(Nexenta Management console)が起動し、Nexentastorの設定などがコマンドできるようになります。
この環境はshell環境とは違い、用意されたコマンドのみが使用できます。
GUI(Webインターフェース)でできる設定ができるようになっています。

NMCからshellを起動する

コンソールかsshでrootでログインする。

option expert_mode=1 -s
!bash

option ~は、最後に-sをつけると最初の1回のみの実行でOKです。
その後は!bashのみで起動できるようになります。

nexenta-bash

NexentaStorの初回起動時のCUIネットワーク設定を再度実行する

NMCにを起動して、以下のコマンドを実行します。

setup appliance init

うまくGUI(Webインターフェース)を起動できなかった場合にも再インストールする必要はありません。

NexentaStorのバージョンアップ

 NMCを起動して、以下のコマンドを実行します。
新しい更新があれば、表示されますので、
必要に応じて更新します。更新した場合は再起動が行われます。

setup appliance upgrade

nexenta-upgrade

正常に再起動でき、動作を確認したら、NMCにログインすると、今後更新を反映させるかの確認があります。ここで、反映させておかないと次の再起動時に更新がキャンセルされますのでご注意ください。

その他よく使うNMCコマンド

help                ヘルプ表示
setup appliance reboot     再起動
setup appliance poweroff   シャットダウン

<tab>キー2回でコマンドの候補がでますし、コマンドの後Enterでコマンドに対するオプションや説明が表示・選択できますので結構感覚的に操作できます。

最新のESXi付属のVMware-Toolsを使用する方法

VMXNET3やPVSCSIを使用するために、
本家VMwareToolsを導入する場合は、以下のURLの手順でインストールできます。

http://plone.4aero.com/Members/lmarzke/howto/nexentastore-installation-on-vsphere

ただ、4.x系だとVMXNET3がうまく動かない場合があるので、
apt-getコマンドでopen-vm-toolsやをインストールしたほうがいいかもしれません。

パッケージ管理

Nexentastorにはパッケージ管理としてaptがデフォルトでインストールされています。これを利用して、VMware-tools(open-vm-tools)をインストールできます。
ただし、!bashからコンソールではなく、adminでログインしてsuにならないとうまくレポジトリにアクセスできない場合があるのでご注意を。

apt-get update
apt-get install open-vm-tools

もし、proxy経由での接続が必要であれば、以下のように環境設定を設定します。

export http_proxy=”http://proxy:port”
export https_proxy=”http://proxy:port”
export ftp_proxy=”http://proxy:port”

その他、vmxnet3ドライバや、pvscsiドライバも用意されています(3.1.5だと標準でインストール済み)

nexenta-vmxnet3    - VMware EtherAdapter v3, Rev 5
nexenta-pvscsi       – Solaris driver for VMware para-virtualized SCSi HBA, Rev 15

ちなみに、その他のコマンド例
apt-cache search open-                             open-を含むインストール可能なパッケージを表示する
dpkg -l                                                          インストール済みパッケージの表示

その他のコマンドの参考
http://landisk.kororo.jp/debian/04_apt-get_dpkg.php

 ESXiとのVAAI 連携について

ESXiのストレージオフロード機構であるVAAIをNexentaStoreでは使用できます。

iSCSIについては、NexentaStor 4.0.3 FP2までは標準でサポートしており、
nexentastorでiSCSI領域を作成、ESXi側でマウントすれば、
自動的にハードウェア支援が有効になります。

NexentaStor 4.0.3 FP3以降では、デフォルト無効なので、
https://nexenta.com/products/downloads/nexentastor
からvaaictlをダウンロードして、転送し、

chmod 555 ./vaaictl
./vaaictl –enable

とする必要があるようです(後で確認します。)

NFSの場合は、別途プラグインをNexentaStor、ESXi側両方に導入する必要があります。

2015/4現在のプラグインのバージョンは1.0-128です。
現状NexentaStore CE 3.1.xとvSphere5.xの組み合わせで動作を確認しています。

Nexenta 3.1.4 and beta Nexenta NFS VAAI Plugin released

Nexenta VAAI-NAS Beta Released, NFS Hardware Acceleration

ただ、NexentaStore CE 4.0だとエラーとなってプラグインが起動せずでした。vSphere6.xではまだ試していません。

 

 

Nexentastor 3.x 4.xをESXi5にインストールするためのメモ

NexenrtaStorの仮想マシンの構成や、VMwareToolsのインストールやおすすめパラメータなどの情報

あとで家の環境と比較しよう

http://plone.4aero.com/Members/lmarzke/howto/nexentastore-installation-on-vsphere

仮想マシンの作成からNexentaStorインストール、VMwareToolsのインストール、NFSやiSCSIのおすすめ設定まで書いてあるのですごい参考になります。

http://vmpost.com/installing-vmware-tools-nexenta/

Toolsのインストールが参考になる
基本的には上に書いてある内容と同じっぽい。

http://info.nexenta.com/rs/nexenta/images/solution_guide_nexentastor_iscsi_multipath_configuration.pdf

NexentaStor iSCSI Multipath Configuration Document
WindowsやESXi4/5でのマルチパス設定が詳しくまとめられています。

 

 

ESX上で動いているWindowsで任意の解像度を追加するための設定

ESX上で動いているWindowsで任意の解像度を追加するための設定だそうだ

Windows ゲスト OS へのビデオ解像度モードの追加 (2078472)

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2078472

ゲストなWindowsでポートレートな解像度(いわゆる800*1280とかの縦が長い解像度)がうまく追加できなかったので、これでできそう。今度試す。

(コンソールのWindowsを縦長にして、「今すぐゲストを合わせる」でも縦長にはできるけど、800*1280とかだと、vSphereClientを実行しているPCの画面サイズの縦が1280以上じゃないと無理だし、そもそも厳密な数字にするのは無理ぽ)

 

 

 

ESXiのDISK 最大I/Oブロックサイズの調整

なんかこんな情報を見かけた。

最大 I/O ブロック サイズを変更して ESX/ESXi を調整し、ストレージ パフォーマンスを改善する (2074666)

ESX では、最大で 32767 KB の I/O 要求があるけど、ストレージよっては大きすぎてパフォーマンスが落ちるらしい。

うちのESXIのストレージはNexentastorのZFSでのNFSなのですが、
現状ブロックサイズが128KBなので、最大I/Oサイズを128KBに調整してみる。

VMwareInfrastructure/vSphere Client を使用して、ストレージ デバイスに渡される I/O 要求のサイズを減らす方法

  1. ホスト > 構成 へ進みます。
  2. 詳細設定 をクリックします。
  3. ディスク へ進みます。
  4. Disk.DiskMaxIOSize を変更します。(128KBの場合128に変更)

注:この変更では、ESX/ESXi ホストを再起動したり、ESX/ESXi ホストをメンテナンス モードにしたりする必要はありません。

 

とりあえず、1台だけ変更して、様子見中

Workstation 10で仮想マシンを立ち上げる際のチューニングメモ

Workstation 10で仮想マシンを立ち上げる際のチューニングメモ

  • VMware Toolsをゲストにインストールする。ある意味基本。
    VMware Toolsはドライバ以外にもパフォーマンスアップのための機能が含まれています。

 

  • 仮想マシンの仮想DISKの配置場所はホストOSのOS保存先とは別の物理Diskを割り当てる。また、極力書き込みが早いDISKを用意。

パフォーマンスアップのためには、やっておきたいがなかなか難しい状況も多いので出来るだけ分けておきたい。
ハードウェアキャッシュなしのRAID5ボリュームとかは、極端にパフォーマンスが落ちる場合が多いです。

  • 仮想ディスクは「事前に割り当て」仮想ディスクを作成する際、ディスク容量を「事前に割り当てる」にする。
    最初の作成時に時間がかかるしDISK容量も食うので、実際の使用時確保になる「拡張可能」にしがちだけど、パフォーマンスを考えたらこちら。
    あと、2GBの分割保存などはせずに、単一ファイルにしたほうがよい。

 

  • ホストOS側でのDeflagをしっかりやっておく。

DISK I/Oパフォーマンス確保のために、ぜひ。

  • ホストOSのワクチンソフトで、仮想マシンの仮想ディスクの保存先は除外設定をしておき、余分なオーバーヘッドは極力カット。

 

  • スナップショットは極力使用しないVMwareのスナップショットはスナップショット取得後の更新
    データを差分ファイルに書き出しますが、その差分ファイルは実際の使用時に容量を確保するし、DISKアクセスのオーバーヘッドが増えるので、パフォーマンス低下の要因になります。

 

  • Windowsの仮想マシンを立ち上げるときは1パーティーション(C:,D:)=1VMDKを心がけるパフォーマンスとは直接影響無いけど、上記のようにしておくと、パーティーションの容量が不足したときにあとから簡単に拡張できる。1つのVMDKに複数のドライブをまとめておくと、拡張できない場合もある。
    Windows2000     ・・・ CD-Bootによる拡張ツール等でデータを残したままで
    パーティーション容量を増加できる
    Windows2003,XP   ・・・ OSのdiskpartコマンドでオンライン拡張できる
    Windows2008,Win7 ・・・ Diskの管理(GUI)からオンライン拡張できる

 

  • 仮想マシンか同時に極力メモリを使用する設定をVMXに追加

通常のPCで、仮想マシンを稼動させる場合は、一番ボトルネックになりやすいのがDISKI/O。
なので、極力メモリを使用する設定をVMXに追加

MemTrimRate = “0” : .vmemファイルを使用しない(定期的にメモリ状況をファイルに保存するのを抑止)
mainMem.useNamedFile = “FALSE” : メモリトリミングの無効化(Workstation6.5からはGUIでも設定可)
sched.mem.pshare.enable = “FALSE” : ページ共有機能の無効化
prefvmx.useRecommendedLockedMemSize = “TRUE” :

その他動かす環境について

  • ホストPCのCPUは極力多くのコア搭載でVT-x対応のものを
  •  ホストPCの物理メモリは多めに搭載

おまけ

Workstation 10の仮想マシンを「共有VM」にすると、
他のWorkstationやWSXツール経由でのWebアクセス で、別のPCからコンソールをリモート操作できるようになる。

WSXは別途インストールが必要だけど、html5ブラウザがあればコンソール表示できる模様。

ただ、以下のような制限があるのでご注意を

  • ゲストOSと外とのクリップボード経由でのコピーと貼り付けができない
  • ゲストOSと外とのdrag-and-dropができない
  • 仮想マシンとの共有フォルダが使えない
  • USB機器が接続できない
  • ユニティ モードが使えない

あと、共有VMと通常の仮想マシンを同じフォルダにも設定できるけど
あとでトラブルの元となるので、別にしとくことを推奨です。

 

Proxy経由のvCloud接続でコンソールが表示できないのを調査する(紆余曲折ぶりをお楽しみください

先日、客先でインターネット上にあるクラウドにProxy経由でvCloudで構成されたクラウド環境に初めて接続してみた。

管理ポータルにはログインできたが、仮想マシンのコンソールを開こうとすると、
「接続しています」→「切断状態」となってコンソールが表示されない。

VMware Remote Console Plugin(VMRC Plugin)のログを確認すると、
proxy:8080というプロキシ経由でアクセスしていることが確認できるが、
サーバ名が確認できていない模様。

C:\Users\(ユーザ名)\AppData\Local\Temp\vmware-(ユーザ名)\vmware-vmrc-6092-6008.log

クラウドのマニュアルには

「接続端末がインターネット接続時にプロキシ認証が必要なネットワーク環境の場合、仮想マシンのコンソール操作ができない可能性があります。」

との記述がありますが、使用しているPROXYは認証が不要なことは確認済み・・・・・・

なお、vCloudのバージョンは5.1な模様。

 

で、いろいろ試行錯誤した結果、やっと原因見つけました。

 

ちなみに解決までの紆余曲折ぶりはこちら

  • インターネット上のポータルにはつながるのにコンソールにつながらなくてあせる。
    →コンソール出ないとOSインストールできない~
    →埒が明かないし次のスケジュールがあるので、仕方が無く、自社のリモート環境にアクセスして、そこからインターネット経由でOSセットアップ+SP適用を始める。計5台(ぉぃ
  • なんとかセットアップが終わり、紆余曲折タイムスタート
  • IEのセキュリティ設定を変えてみる。
    →× 変わらず
  • Firefoxでも試してみる
    →× 変わらず
  • OS変えてみる
    →× XP,WIndows7ともに一緒で表示されず。
  • どうしようもなくなったので、ダメ元で、
    インターネット間をつなぐProxyと、自PCとの間にもう一個Proxyを自PC内に立ててみる。
    いわゆる多段プロキシ。自PC->localhost:8080->proxy:8080->vCloud
    →○ なんとコンソール表示される(え、まじで
  • では、自PCとは別のPC(他PC)のプロキシ設定に上記多段プロキシを設定してみる。
    (自PCはMyPCという名前でDNS登録済み)
    他PC->MyPC:8080->proxy:8080->vCloud
    →× 表示されない・・・・・(なぜだ
  • 自PCのプロキシのログを見る
    →Cloud管理ポータルのログインは記録に残っているけど、
    コンソールアクセス時にプロキシにアクセスしている気配がない・・・だと・・・(??
  • 他PCのプロキシ設定の自PCサーバをコンピュータ名からIPアドレスにしてみる
    他PC->192.168.11.11:8080->proxy:8080->vCloud
    →○ コンソール表示される(え~
  • もしかしてと思い、IEプロキシ指定で最初のプロキシをサーバ名(Proxy)でなくIPアドレス(192.168.11.3)を入れてみる
    自PC->192.168.11.3:8080->vCloud
    →◎ コンソール表示される(やっぱり
  • IEプロキシ指定で最初のプロキシをサーバ名に戻してして、hostsに最初のプロキシサーバを登録して再挑戦
    →◎ コンソール表示される(原因確定

なに、この回り道状態。

 

本来は、クラウド提供会社に回答をもらうはずで、ログとかも送ったけど、
先に解決したのでとりあえず情報提供はしといた。

だって、クラウド提供会社って私の勤めている会社だし。別事業部だけどさ。

 

というわけで、最終的な原因はPCから外部のインターネット接続のため、IEのプロキシ設定で、プロキシの「サーバ名」を入力していたことでした。でもこれって普通ですよね。
DNSには「proxy」というサーバ名で登録済みで各クライアントからNSLOOKUPで「proxy」でIPアドレスができることも確認していましたので盲点でした。

これは 単にVMwareのコンソールプリケーション(vmrc plugin)のプロキシサーバのサーバ名-IP変換の問題でDNSを参照してくれていないのが原因のように見えるので、
以下の2つのうち、いずれかを追加で行うことにより、対応可能な模様です。

Windows7およびXPのPCで確認済み
(Windows8/8.1はそもそもvCloud5.1の対象外みたい)

方法1

操作PCのIEのプロキシ設定を、プロキシサーバ名をサーバ名からIPアドレスに変更
(例:Proxyから192.168.11.3に変更)

方法2

操作PCのIEのプロキシ設定を、プロキシサーバ名にサーバ名を設定のままで、
操作PCの「C:\Windows\System32\drivers\etc\hosts」ファイルに
プロキシサーバのIPおよびサーバ名の行を登録
(例:192.168.11.3          proxy)

 

うん、なにやってるんだ、オレ。

 

ESXi 5.xで各仮想マシンのコンソールへ直接アクセスする方法を調べてみた

無償版ESXi5.xで、仮想マシンのコンソールに直接アクセスするためには
通常はvSphereClientでアクセス出来ますが、そのほかにもいくつか方法があります。

有償版であれば、vCenterと組み合わせて
Webインターフェイスから各仮想マシンのコンソールへのショートカットを作れますが、無償版だといろいろ工夫しなければいけません。

とりあえず、vSphereClientを使用する以外で、今回は4つ紹介

  1. ESXiのVNCインターフェイスを有効にして、VNCViewerで接続する
  2. VMware WorkStationやVMware Playerをコンソールにする
  3. ESXi4.1用のvSphereClientと一緒にインストールされる
    vmware-vmrc.exeを利用する
  4. VMware Remote Console SDKを利用する
  5. VMware Remote Console 7.0を利用する(2015/03/01追加)

“ESXi 5.xで各仮想マシンのコンソールへ直接アクセスする方法を調べてみた” の続きを読む

ESXiのHDD交換

調子が悪かったESXiで一番怪しいと思われるHDDの交換を実施。

このESXi、NECの安鯖GT110bをベースに軽く魔改造したもので
内HDD1台にアクセスしている仮想マシンだけ調子が悪い。

ただ交換しようにも、標準SATA6ポートにはHDD5台、SSD1台を
接続しているためすでに空きがない。
(本当は、DVD-ROM繋いでいて、障害時にはリカバリー用のHDDと繋ぎかえてデータ移行できるようにしていたのだけど、誘惑に負けてSSDをつないでしまったので、簡単には外せなくなってしまった。ちなみにDVD-ROMは現在USB接続中)

ESXiそのものはUSBメモリに入れているので、普通なら
壊れたHDDの単純交換&リビルドで済むんだけど、
あいにく今回故障したのが単体で使用していたHDD
(主にバックアップデータや一時テータ保管用)だったため、
別PCにデータ(約1.6TB)を移動させる必要がでてしまった。

しかも、使っていたHDDが非AFTの512バイトセクターな2TBで、
予備の同型HDDは2台確保済しているけど、RAID組んでいる同型HDDが8台あるので
非RAIDなHDDの交換に使うのは正直もったいない。

だって、まだ非AFT-HDDは何とか手に入るけど、非AFT2TBが、WD REDの3TBと同じ値段というおそろしい現実。

というわけで、今回は余っていたWD RED 3TBを入れてみることにしました。

今使用しているのがESXi5.0なので、2TB以上のデータストアには対応しているのと、
AFT対応HDDと、VMFS5の組み合わせをためしてみたかったから。

AFTな4Kセクターについては、ZFSが吸収してくれることを期待します。

 

交換自身は、3.5インチベイに入れていたので、GT110bの全面パネルを開けて前から交換。

VMFS5でフォーマットして、前と同じボリューム名を付けて完了。
VMFS3からのフォーマットではなく、新規作成なのでブロックサイズが1MBになっています。

vmfs53TB

 

なお、別PCにつないでSMART値確認すると代替済セクター数596、保留中1。
回復不可能セクター数がなかったことは不幸中の幸い。
たしかに動いてはいたけど、かなりやばかった。

VMSV01-HDDERR

もっとひどいのは、使用時間3万時間超えってところかも
3年半で電源投入回数が112回っていうのは、ESXiサーバとしては大目か。
まあ、このESXiいろんなデバイスを付けたり外したりしているからしょうがないよね
(と自分にいいきかせてみる。)