Posts Tagged ‘VMWare’

CentOSへVMware Toolsのインストール (ESXi 4.x編)

ESXi 3.x以前はRPMパッケージで提供されいていたVMware Toolsですが、vSphere 4からはソース(tar.gz)しか提供されなくなったみたいです。俺が見つけられないだけという可能性はさておき、毎回tarで解凍するときのオプションなんだっけと検索するのも面倒なのでメモっておきます。

(1) vSphere Client上で対象VMを右クリック->「ゲスト」->「VMware Tools のインストール/アップグレード」を選択。ごちゃごちゃメッセージが表示されますがとりあず「OK」を押す

(2) イメージをマウント&コピーする
# mount /mnt/cdrom /mnt
# cp /mnt/cdrom/VMwareTools-4.0.0-171294.tar.gz /root
# umount /mnt

(3) tarボールを展開してインストールプログラムを実行する
# cd /root
# tar zxf VMwareTools-4.0.0-171294.tar.gz
# cd ./vmware-tools-distrib/
# perl vmware-install.pl

(4) 全ての質問に何も考えずエンターを押し続ける

(5) おしまい

念のためvSphere Client上で対象VMの「サマリ」のタブをクリックしてVMware Toolsの項目が「OK」になっていることを確認すればなおよろし。

今気づいたですけどvSphere 4からCentOS 3.x系が「Red Hat Linux Enterprise 5」ではなく「その他の2.6x Linux」として認識されるようになってる。ソースしか提供されないのってひょっとしてこのせいアルか?

 

VMWare ESXi上 のVMで完全な時刻同期を目指す(Centos5)

調べれば調べるほど奥が深いESXi上の仮想マシン(VM)の時刻同期。
どうやら現状ではNTPを使うのが最善策のようです。

まずお手軽な解決策として考えられるのは、
(1) VMware Toolsの時刻同期設定オプションを設定する
(2) NTPを利用する

のどちらか。

さらに「時刻がずれる」という現象そのものにも2パターンあって、
(A) 時刻が進んでしまう
(B) 時刻が遅れてしまう

という、それぞれのケースについて考えなければなりません。
以前は(1)が鉄板だと思われていた(というか俺が思っていた)のですが、この方法は(B)のケースでしか有効でない事が判明しました。

なぜなら(A)の時刻が進んでしまうのはLinux2.6系で設定されている毎秒1000回(わお)というタイマー割り込みをVM上ではエミュレートできないためで、エミュレートしきれない→タイマー取りこぼし発生→遅延が発生したと思い込んだカーネルが補正しようと時刻を進めてしまう、という堂々巡りの果てに引き起こされる問題であり、VMWare Toolsの設定で何とかなる範疇を超えてしまっているからです。

Time in a Linux 2.6 guest operating system runs faster than real time due to lost tick overcompensation

Time in virtual machine drifts due to hardware timer drift

この(A)の問題については、カーネルパラメータを変更する事でタイマー割り込み頻度をVM上での適正な値に抑えることができます。必要なパラメータについては、VMWare社がKBとして公式に発表しているので、こちらをご参照下さい。

Timekeeping best practices for Linux

ちなみにこのKBによれば、「全ての場合においてVMware Toolsの時刻同期設定(Periodic Time Synchronization)よりも、NTPを(優先して)使え」と明言します。生み親にまで否定されてしまった時刻同期設定オプションの立場ったら。

上記パラメータを設定をすることで時刻のずれをかなり小さくする事ができますが、カーネルパラメーターをいじるのが不安だとか、完璧な時刻同期が必要なんだ!という方はやはりNTPを使うのが良いでしょう。ただしNTPを利用する場合は別途UDP123番のポートを開く必要があるので、ネットワーク運用規定上NGな場合などは別途ネットワーク上にNTPサーバを立てて下さい。最近のルーターはNTPサーバ機能がついているものも多いので、外向きルータ(デフォルトゲートウェイとか)への追加設定とVMマシンへのNTPインストール&設定だけで済むんじゃないでしょうか。

ちなみにNTPを利用する場合はVMware Toolsの時刻同期設定(Periodic Time Synchronization)を無効にする必要があります。つまり(1)と(2)の組み合わせは不可ということですね。完全に居場所を失ってますね時刻同期設定オプション。
よくわかんないけどがんばってください。

 

SVMotionをGUIで使う

通常コマンドライン(CLI)上から実行するSVMotionを、VMWare Infrastructure Client上から実行できるプラグインを作ったえらい人がいます。

VIP – VMware Infrastructure 3 Plug-in

MSI形式のインストーラーをダウンロードして、何も考えずインストールするだけでOKです。

使い方は、

  1. VMware Infrastructure Clientを起動する
  2. SVMotionを実行したいVM上で右クリックし、表示されたメニューの最下部にある「Migrate Strage」を選択する
  3. 現在認識されているストレージ一覧と、対象VMが格納されているストレージが表示される
  4. ぐりぐりっと対象VMを希望するストレージに移動させる
  5. 「Apply」を押す

これだけです。簡単です。

環境にもよりますが、5GB程度のイメージの移動は10分くらいで完了しました。
世の中便利になったものです。