システム管理の最近のブログ記事

仮想マシンの稼働中に2つのストレージの切り替えを行うことができる機能です。各ホスト(ESXサーバー)でディスクが共用されていないといけないので、ローカル~共用ディスク間の移動は出来ないようです。(Storage VMotionでは共用ディスクの移動のみ行うので、VMotionのCPUID制限は適用されない)

この機能はVI Clientでは提供されていないため、リモートCLIで行う必要があります。リモートCLIはvmwareのwebサイトからダウンロードして使用しますが、詳しい説明はマニュアル読んでください。ESXの管理者ガイドにもそう書いてありました(笑)

【使用例】

1つめのストレージはvmshare01、2つめはvmshare02です。
ESXホスト名はvi01、vi02としています。VCはvc01です

この例ではSRV-HOGE01に対してvmshare01からvmsahre02へのStorage VMotionを実行します。
オプションですべて引数を指定して実行させることも出来ますが、interactiveモードが便利なのでその方が良いです。


なお、事前に仮想マシンの現在のデータストアのパスを調べておいた方がよいです。

仮想マシンの構成ファイルへのパスを表示するには

1. VI Client インベントリで、仮想マシンを選択して[ 概要 ] タブをクリックします。
2. [ 設定の編集 ] をクリックすると、[ 仮想マシンのプロパティ ] ダイアログ ボックスが表示されます。
3. [ オプション ] タブをクリックし、[ 一般オプション ]を選択します。
4. 仮想マシン構成ファイルのパスが、[ 仮想マシンの構成ファイル ] テキスト ボックスに表示されます。

以下、コマンドプロンプトより作業を行う。

C:\Program Files\VMware\VMware VI Remote CLI\bin>svmotion.pl --interactive

Entering interactive mode. All other options and environment variables will be ignored.

Enter the VirtualCenter? service url you wish to connect to (e.g. https://myvc.my[外部リンク] corp.com/sdk, or just myvc.mycorp.com): vc01.hoge.local
Enter your username: administrator
Enter your password:(パスワードを入力)

Attempting to connect to https://vc01.hoge.local/sdk.[外部リンク] Connected to server.

Enter the name of the datacenter: datacenter
Enter the datastore path of the virtual machine (e.g. [datastore1] myvm/myvm.vmx ): [vmshare01] SRV-hoge01/SRV-hoge01.vmx
Enter the name of the destination datastore: vmshare02

You can also move disks independently of the virtual machine. If you want the d isks to stay with the virtual machine, then skip this step..
Would you like to individually place the disks (yes/no)? no

Performing Storage VMotion. 0% |-------------------------------------------------------------------| 100%

最後の質問は独立型ディスクを使用するかどうかです。これは環境と運用に因るところがありますのでどちらがよいとは言えませんが、RAWデバイスマッピングを使用しない環境であればNOで良いと思います。

実行するとVI Client側では「仮想マシン ストレージの再配置」というタスクが実行されます。100%(完了)となると、リモートCLIもコマンドプロンプトに戻りますので終了です。

ちなみにStorage VMotionで20台ぐらいの仮想マシンを移行しましたが、移行中でもアプリケーションの実行速度はほとんど変わりませんでした。ストレージの追加や入替えを行う際には非常に役に立つ機能です。

また、interactiveモードでない場合は、バッチファイルを生成してリモートCLIがインストールされているPCからも自動移行が可能だとおもいます。VI ClientのタスクではStorage VMotionは使用できないのですが、次回から出来るようになってると良いですね。

前回の続きです。

NシリーズとVMwareの運用を考えたときに、どのようするのが一番適当なのか、しばらくの間答えが出なかったのですが、ようやく現状での答えが出てきました。

まずは、手持ちのリソース(駒)の確認です。

VMware ESX Enterpriseサーバーが2台
Virtual Centerが1台

ストレージが2台(IBMのDSシリーズ、Nシリーズ(今回導入))、共にFCで接続。
NシリーズにはNFSのライセンスがありませんので、ESXのホストとはFC接続のみとなります。

*余談ですが、Nシリーズ(NetApp含む)はNFSで接続しても仮想マシンの実行速度はあまり変わらないというデータもあります。NFSが使えるならより設計の柔軟性が上がります。

というわけで、今回は7TBある論理ディスク容量をまるまるVMwareに割り当てる方針で行きます。
しかもsnapshot無し(笑)。これは各仮想サーバー単位のバックアップをどうするか?という点を考慮して決めるのがよいでしょう。私の場合は各仮想マシン内でバックアップを取得するので、Nシリーズ側でのsnapshotは不要との判断です。

さて、ディスクの使い方の基本方針が決まったので、早速セットアップに入ります。細かい手順は割愛しますが、今回の場合はLUNを作ってESX側で認識させますから以下の手順になります。

(1)Nシリーズ側でaggregateを作成する。今回は7TBで一つのaggregateを作成
(2)さらにボリュームを作成。これも最大容量で作成します。ディスクサイズは整数値しか入りませんから適宜ディスクの指定単位をTBにするかGBにするかしてください。その際はsnapshotを20%から0%へ変更。あとはデフォルトのままです。

(3)Manage Initiator Groupsで使用するFC-HBAのグルーピングを行っておきます。

(4)LUNを作成します。原因は不明ですが、1TB以上のLUNを作成すると、ESX側では正しくディスクサイズを認識することが出来ないようです。ですので、1TB単位でLUNを作ります。LUN IDは任意で構いませんが、わかりやすくするため、他のストレージとは別の番号体系にするのが良いでしょう。その後、LUN IDとMaps Group : LUN ID((3)で作成したManage Initiator Groupsの名前)を紐付けておきます。これがないとESX側でLUNが認識できません。

(5)VI Clientの構成→ストレージアダプタで再スキャンを実行します。(4)で作成したLUNが見えればOKです。

(6)同じくストレージでストレージの追加を行います。7TBを7つのLUNにしていますが、まずはIDが若いLUNを選択します。未フォーマットの場合はフォーマットするか聞いてきますのでそのまま実行してください。その後、追加したストレージのプロパティ画面で、エクステントの追加を実行します。これは複数のLUNを1つのVMストレージに見せる機能です。エクステントで残りの6つのLUNを追加していきます。(未フォーマットの場合は多少時間がかかります)

以上でVM用の新しいストレージが出来ました。

LUNでの運用の良いところは、ストレージ側でLUNを追加し、ESXのエクステントでも追加してやると、容易にストレージの容量確保が出来る点です。Nシリーズはその辺は楽に出来ますので、特にマニュアルも不要だと思います。

次はStorage VMotionを使用したストレージの移行についてです。

自宅のPCは自作です。

現在はCora 2 QuadというCPUと4GBメモリ、リネージュIIには欠かせないグラフィックボードと割合贅沢な仕様になっているのですが、2年前にWindows XPをインストールしてから様々なアプリをとっかえひっかえインストール/アンインストールを繰り返してきたため、OSの挙動がだいぶ怪しくなってきました。

そこでWindows XPの再インストールを実施することにし、併せてモニターもフルHD対応、グラボ交換も併せて行うことにしました。

入れ替える前に問題となるのが、これまで使用していたCドライブの扱いです。私が使っていたCドライブは同容量の2台のディスクを1台に見せかけて使う、いわゆるRAID-0構成だったので、新規のディスクにXPをインストールした後に使用できるとは限りません。

そこでまずはTrueImageでフルバックアップしてから作業開始。

作業自体は一応その筋のプロなので問題はないのですが、インストールして1日経ったあたりからコントロールパネルの「コンピュータの管理」が使用できなくなるというトラブルに巻き込まれたため、やむなくもう一度再インストールを実施。今度は問題なさそうなので、アプリケーションやデータの引っ越しです。

DAW関係のソフトウェアはほぼすべて再オーサライズが必要となり一苦労でしたがようやく完了。

ちなみにRAID-0で使用していた2台のディスクに対してそれぞれチェックディスクをかけてみたら、エラー多発でほぼ使えない状態でした。危なかった~~

仮想化の仕事をやっていて行き着いたのがVMware+NetAppという組み合わせによるサーバーインフラの構築です。というわけでNetAppを導入したのですが、初めて扱う機器にもかかわらず自分でセットアップをやることにしたので、備忘録的に手順を書いていきます。

まずはNetApp単体の初期設定までです。

【最初にやっておくこと】

・拡張ユニットをFCケーブルで接続しておく
・eth0a~0dの4つのうちどれかをDHCPが使えるネットワークに接続しておく
・電源ケーブルを全てつないでおかないとStatusでエラーになるので注意
・Ciscoのコンソールケーブルを用意して、背面の管理ポート(○|○|)に接続しておく
(コンソールのソフトウェアはTeraTermでOK、初期セットアップはここから行う)

【電源投入】

・背面の電源ユニットの電源を入れる
・本体のステータスモニターにDHCPで取得したIPアドレスが表示されるまで待つ
・コンソール用PCでTeraTermを起動したら初期設定開始

【コンソール側の設定】

とにかく英語なのでなんとかする(笑)、ではなく、手順を追って入力していけばOKです。HTTPでの管理画面を有効にしておいた方が後で楽できます。また、IPアドレス等のネットワーク設定もWebから変更できるようなので暫定でも構いません。

注意すべき点はLocationとContactが必須入力であることで、これ最初はなんのことかわかりませんでした。これはSNMPのLocationとContactなのですが、普通は必須入力じゃないだろ~とか思いながら適当に入力。

すべての入力が終わったら初期設定時に入力したIPアドレスを用いてWebブラウザにてアクセスします。
ちなみに初期のユーザーアカウントはrootです。パスワードは初期設定時に入力してますが、アカウントはどうやら変更できない模様です。

というわけで次回はNetApp側のaggregate設定とボリューム、LUNを作るところを中心に書きたいと思います。

先日のことですがNetAppのセミナーに行って参りました。NetAppがどんな会社なのかはこちらを参照して・・・もよくわからないと思います。

NetAppというのは所謂NAS(Network Attached Storage)を作っている会社です。VMwareとの親和性を売りにしていることもありますが、ストレージとしては少々(同クラスのストレージと比較して)お高いものの、いろいろと便利な機能をもってます。その便利な機能もほとんどがライセンスとして購入しなければならないので結局高くつくのですが、RAID-DPとSnapshotが標準でついてきますので、VMwareに対してFC接続するならこれで十分です。(FC Protcolオプションは必須)。

ファイルサーバー用のストレージとしても秀逸なので、今後導入を検討されている方(会社)は是非候補に入れておくべきでしょう。NASだと思ったら大間違いです。(IBMのNシリーズはNetAppのOEMなのですが、NASカテゴリーで売ろうとするから売れないんだな)

ESXサーバーでLinuxの時計が狂うのは割と知られている話だと思うのですが、これはVMware-Toolsのインストールで解決できる話ではあります。
ところが、2~3日前から不可解な現象があったので備忘録的に書いておきたいと思います。

  • ntpdを起動させると仮想マシン(CentOS 5.1)の時刻が1時間13分先に進んでしまう
  • しかしながらdateコマンドを数回たたくと、1時間ずれた時間が表示されたり、正確な時間が表示されたり・・・
  • ログを見ても特におかしなことはなさそう。
  • 全く同一のOS、設定をしている仮想マシン(もちろん同じホストで動作している)では発生しない。
さてこの場合ですが、ntpdateでは時刻の修正ができるので、ntpdも問題なさそうです。 となるとVMware-Toolsの時刻同期の問題のような気がしますが、設定自体は問題ないようです。ホスト側の時刻も特に狂っているわけではありません。 一応仮想マシンのBIOSの時刻も確認しようと再起動すると、set_rtc_mmssのエラーがだらだらと表示されてしまいました。いつまで経っても再起動しないので、スナップショットも取ってあるしということで強引にリセットしてBIOSを起動し時間を確認。全く問題なく現在の時刻が表示されています。

さて困った、解決策が思い浮かびません。

仕方がないのでもう一度再起動をしてみると、時刻についの問題は全くありませんでした。

なんなのでしょうか、この障害・・・

いままで仕事でVMware ESXのStandard版しか使う機会が無かったのですが、このたびEnterprise版へアップデートしても良いという会社の許可が下りました。
共有ディスクは既に準備済みですので、ESXサーバーの2台のメモリを増強しクラスタ構成にも耐えられるようにする予定です。

先日VMwareのライセンスが先行して送られてきたので、早速テスト環境にぶち込んで設定手順の確認等を行いました。設定方法はWebや書籍で拾える情報でまかなえますが、仮想マシンが稼働中のVMotion(Live VMotionと呼んでます)を行う際にはいくつか注意点があります。Webでもあまり載っていなかった情報なので念のため書き残しておきます。

1.vSwitchにVMKernel用の設定が必要。物理NICは専用でなくても良いようですが、あった方が良いと思います。
 Vmkernel.JPG

2.VMKernelのプロパティでVMotionを有効にするをチェックする。
 vmotion.JPG

3.VMotion対象となる仮想マシンにVMware-Toolsをインストールしておくこと

1と2はホスト側の設定で、クラスタ対象となるすべてのESXに設定する必要があります。
問題なのは3.でWindows系は問題ないのですが、Linux系でFedoraはCentOSにVMware-ToolsをCUIでインストールするのは少しコツが要ります。
正直いままでVMware-Toolsって別に不要じゃん!とか思ってましたが、VMotionで必須となると様々なディストリでも動作検証が必要ですね。

上記条件がそろえばLive VMotionができるようになります。仮想マシンを選択し右クリックで「マイグレーション」を選択するとウイザードが起動するのでその通りにやればできるはずです。試しにCentOS 5.1でやってみましたが、ディスク容量40GBの仮想マシンで約1分30秒でした。これは早い!

マシンメンテやDRSと組み合わせると、かなりおもしろい運用ができそうです。

VMware関連で検索していたらこのようなサイトが見つかったのですが、これは当たり前の話だと思いました。

クライアントPCにVMware Player載っけて2つめのクライアントOSを使うというのは、私もテストしたことがありますが相当処理速度が遅いです。VMware Infrastructure 3でWindows XPをゲストOSとして使うのとは雲泥の差。

これは当然の話で、VMware PlayerはホストOSの上でサービスとして起動しているわけで、CPUやメモリは全部ホストOSからの借り物です。確かにESX上のゲストOSでも、CPUやメモリはホストOSの借り物には違いないんですが、ホストOS側の軽さというのが圧倒的に違うので(もちろんホストOSのハードウェアもクライアントPCとは処理速度が違うので)VMware Playerをシンクライアント的に利用するのは向かないと思います。

ちょっと間が空きましたがCentOSのインストールの説明の前に、IBM製のサーバー製品を購入すると付いてくるIBM DirectorというソフトウェアをESXで有効活用する事例を紹介します。前述のOpManagerと異なり、こちらはエージェントソフトウェアをインストールして管理するのが主目的で、特に物理サーバーにインストールされているServeRAIDソフトウェアを集中管理したり、ハードウェアの詳細なインベントリを取得するのに向いています。(もちろんハードウェアがIBM製の場合です)

会社の人が海外で使用していたPCにて、ネットワーク上のサーバーに接続できないという話があり、さっそくヘルプに入りました。症状としては下記の通り。

・DHCPからIPアドレスは取得できる。
・ipconfig /allで確認すると本来設定されているはずのWINSのアドレスが無い。
・さらにNetBIOS over TCP/IPがdisableになっている。
・nslookupで名前解決はできる。
・ログオンしたいサーバーに対してpingも通る。
・但し、\\server00\public等でサーバーの公開ディレクトリには入れない。ネットワークが到達できないといわれる。
・インターネット上のWebサイトへアクセスできない。

これだけの情報があれば、何とかなりそうです。
問題となっているのは名前解決が出来ないためであろうというアタリをつけ、とりあえずNetBIOS over TCP/IPをオンにすることを目的としました。
通常はネットワークのプロパティの奥深くにある、設定(下図参照)であればTCP/IP over NetBiosはオンになるはず。

WS00001.JPG

・・・おかしい。いくらやっても設定が切り替わりません。

こうなったら徹底的にやるしかないです。まずは変なサービスによってNetBIOS over TCP/IPの設定が上書きされていないかどうか確認します。タスクマネージャーで起動中のプログラムを見るとvsa.exeという見慣れないプログラム名がありました。しかもCPUリソースを(少しづつですが)使っている感じです。というわけで早速強制終了すると、インターネットのWebサイトへのアクセスは出来るようになりました。

ということはこのプログラム挙動不審の原因のようです。まずはどう行った経路で起動しているのか調べる必要がありますが、サービスで起動しているわけではないようです。だとするとスタートアップか、レジストリのRUNでしょう。面倒なので窓の手をインストールして自動実行タブからスタートアッププログラムを確認してみます。
・・・Windows modez Verifierってなんだ?ググってみると・・・ってBOTかよ!

取り急ぎこのBOTを除去し、再起動します。これで、Webサイトへのアクセスが問題なく出来るようになりました。あとはTCP/IP over NetBiosを何とかするだけですが、BOTに感染しているとなれば、TCP/IP系のプログラムは再インストールするのが賢明です。XPの場合はTCP/IPの設定をリセットするためにnetsh interface ip reset <ログファイル名>というコマンドが用意されているので早速実行。詳細はこちらを参照してください。

これで問題はすべて解決しました。それにしてもBOTなんかに感染してくるなよなぁ・・・orz

このアーカイブについて

このページには、過去に書かれたブログ記事のうちシステム管理カテゴリに属しているものが含まれています。

前のカテゴリはアニメです。

次のカテゴリはジャンクフードです。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

アーカイブ