follow me

ESXiでの仮想マシン複製

srchack.orgでは検証環境としてESXiを利用している訳ですが、ESXiではVMware Serverと違い仮想マシンの複製が面倒なのです。
ファイルコピーで動作する訳ですが、管理しやすくファイル名をVM名にしておきたい訳なのですが、vmdkファイルのファイル名変更がESXiではサポートされていない為、ファイル名変更が出来ないのです。。。

Deployサーバを立てる事も考えたのですが、どこに立てるかが問題なので、ふとした思い付きでovfエクスポート/インポートをしてみました。
結果はビンゴ。
ovfエクスポートを実施した後で、ovfインポートの際に名前を付けると、VM名でファイル一式できました。
OS毎でovfファイル作っておけば、インポートするだけで検証環境の出来上がりっとw
ovfファイル置き場のクライアントとのネットワーク回線速度が遅いとDeployも遅い訳なので、せめてGigabitで接続しなくては。。。

元の仮想マシン・ファイル
/vmfs/volumes/4c445a2e-0695b55c-50c1-001a4bb0d9e7 # ls -l Windows2008\(32bit\)/
-rw-------    1 root     root        42949672960 Aug 21 14:54 Windows2008(32bit)-flat.vmdk
-rw-------    1 root     root               8684 Aug 21 14:54 Windows2008(32bit).nvram
-rw-------    1 root     root                531 Aug 21 11:30 Windows2008(32bit).vmdk
-rw-r--r--    1 root     root                  0 Aug 20 14:05 Windows2008(32bit).vmsd
-rwxr-xr-x    1 root     root               2901 Aug 21 15:00 Windows2008(32bit).vmx
-rw-r--r--    1 root     root               1584 Aug 21 15:00 Windows2008(32bit).vmxf
-rw-r--r--    1 root     root             112652 Aug 20 14:07 vmware-1.log
-rw-r--r--    1 root     root             114691 Aug 21 11:18 vmware-2.log
-rw-r--r--    1 root     root             881387 Aug 21 12:00 vmware-3.log
-rw-r--r--    1 root     root             135480 Aug 21 14:54 vmware.log
複製先の仮想マシン・ファイル
/vmfs/volumes/4c445a2e-0695b55c-50c1-001a4bb0d9e7 # ls -l ESSO81/
-rw-------    1 root     root         2147483648 Aug 21 15:27 ESSO81-c2dfd6ed.vswp
-rw-------    1 root     root        42949672960 Aug 21 15:31 ESSO81-flat.vmdk
-rw-------    1 root     root               8684 Aug 21 15:29 ESSO81.nvram
-rw-------    1 root     root                519 Aug 21 15:16 ESSO81.vmdk
-rw-r--r--    1 root     root                  0 Aug 21 15:16 ESSO81.vmsd
-rwxr-xr-x    1 root     root               2743 Aug 21 15:29 ESSO81.vmx
-rw-r--r--    1 root     root                261 Aug 21 15:16 ESSO81.vmxf
-rw-r--r--    1 root     root             139854 Aug 21 15:28 vmware.log
follow me

ESXi 4.1でもsshd

ESXi 3.5の際に使っていた方法ではsshd有効化が出来なくなっていました。
どうやら、ESXi 4.0からはGUI管理画面のサービスプロパティから有効化できる様になった模様。
sshdを有効化すると、「構成の問題」と表示を出してくれるという、なんとも親切な作りになってしまったではないか。
セキュリティ的に宜しくないので問題といえば問題なのでしょうが、ssh経由で触れるのは便利なのですよ。
おとなしくVM API使えって事なんでしょうかね。


follow me

ESXi 4.1導入

7/13に公開されているESXi 4.1ですが。
srchack.orgでは遅くなりましたが導入しました。
今まで使用していたESXi 4.0u1からのアップグレードではなく、ついでにHDDも付け替えた為、新規導入です。
利用機器は、ML115G1(Opteron 1210)で問題なく導入完了。

4.1では「USBデバイス・パス・スルー」機能が追加されておりますが、ESXiでUSBを利用したことの無い私には無用な話ですね。。。

follow me

ESXiで256GB以上の仮想ディスクを作る

普通にESXiを導入し利用していると、仮想ディスクに256GB以上の玉が作れません。
srchack.orgの環境はストレージなんて導入していないので、作れなくて困ることも無い訳ですが、出来ないのか?的な話を聞いたので調べてみた。

どうやらデータストア作成時にデフォルトだとブロックサイズが1MBで設定されてしまう点に問題があるようです。
データストアを作り直せば、最大2048GBまで割り当てが可能になります。
ただ、2048GB割り当てる場合、ディスクをそのまま付けないかとか思ったりもしなくもないが。。。


follow me

KVM徹底入門

「KVM徹底入門」ヨドバシAkibaで買ってきましたよ。

19日にトークショーやるらしく、19日に買えばイイかと思っていたのですが、先着30名なんたらと書いてあったので、その場で財布と相談し購入。
整理券001番って。。。売れてないなんて事ないよね?。。。
トークショーって、濃い話なのかな?

follow me

OpenVZテンプレートをLXCで流用(Slackware 13.0)

既にOpenVZテンプレートをLXCで流用する際の事については書いたのですが、rc.Sの修正したものを公開しておこうと。。。
コメントアウトではなく、がっつり削除しているので標準で入るものと比較して頂きたいのですが、さまざまなファイルシステム系チェックが含まれておりLXCでは殆ど不要となります。
まだ不要な処理が入っていると思いますが、とりあえずLXC起動時に止まらないレベルまでそぎ落としました。

■Slackware 13.0
rc.S
follow me

OpenVZテンプレートをLXCで流用

小さいchroot環境を一から用意するのは面倒です。
OpenVZでは、さまざまなディストリビューションのminimalなchroot用アーカイブが用意されている為、これをLXCで利用してみます。
http://wiki.openvz.org/Download/template/precreated

■まず重要なのがudevを止めることです。
ディストリビューションにより方法は異なりますので、各ディストリビューションのドキュメントを参照して頂く形になりますが、rc.d配下にudevの起動スクリプトがある場合は実行権限を外すでも問題ないと思われます。

■次にこのまま立ち上げるとconsoleが繋がらないなどと現象が発生します。
OpenVZのTemplateでは、getttyの起動がLXCで必要とするものと異なる様です。
多くのディストリビューションでは、inittabに以下を追加。
(ディストリビューションによりgettyのプログラムが変わるので、修正は必要)
1:1235:respawn:/sbin/agetty 38400 console
■最後に、LILOとかfsckとかを組み込んでいる起動スクリプトを排除。
Slackwareであれば、rc.Sに含まれているので、自分で不要箇所を消す必要があります。
何もせず起動すると、LILOが怒ってくれます。
follow me

LXCネットワークブリッジ設定(Ubuntu10.04)・その2

chroot環境作成にUbuntu 10.04で導入されるlxc-debianを利用した場合。
lxc-createでchroot環境を作っただけでは、ネットワークの設定が入らない為、自分で追加する必要があります。

configに以下を追加します。
/usr/share/doc/lxc/examples以下にサンプルのconfが転がっています。
lxc.utsname = <ホスト名>
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0
lxc.network.name = eth0
lxc.network.ipv4 = <アドレス(1.2.3.5/24)>
chroot内のetc以下のアドレス設定も変えておきます。
あとは、lxc-startで起動するとブリッジされてTCP/IPでコンテナに通信が可能になります。
follow me

LXCネットワークブリッジ設定(Ubuntu10.04)・その1

LXCで外部と通信する為のブリッジ設定です。
最低限これで通信に問題はなし。

■bridge-utilsパッケージ導入
標準ではbrctlコマンドが入っていない為、bridge-utilsパッケージ導入
# brctl
The program 'brctl' is currently not installed.  You can install it by typing:
apt-get install bridge-utils

# apt-get install bridge-utils

■eth0あたりの設定にブリッジ設定を追加
/etc/network/if-up.d/brctl.shスクリプトを作成
内容はこんな感じ
#!/bin/sh

brctl addbr br0
brctl setfd br0 0
ifconfig br0 <ブリッジインターフェイスにつけるIP> promisc up
brctl addif br0 eth0
ifconfig eth0 0.0.0.0 up
route add -net default gw <デフォルトゲートウェイのIP> br0
/etc/network/interfacesに上記スクリプトを登録
Allow-Hotplug設定にしないとうまくいきません。
auto eth0
allow-hotplug eth0
iface eth0 inet static
        address 192.168.73.20
        network 192.168.73.0
        netmask 255.255.255.0
        broadcast 192.168.73.255
        gateway 192.168.73.1
        dns-nameservers 192.168.73.1
        post-up /etc/network/if-up.d/brctl.sh
インターフェイスを再起動後、brctlコマンドで確認。
# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.0010dc94d655       no              eth0
後は忘れてはいけないのが
# echo 1 > /proc/sys/net/ipv4/ip_forward
/etc/sysctl.confにでも設定を入れておきましょう。
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
follow me

Virtual Server Security for VMware

仮想化IBMから、仮想環境でのセキュリティ対策製品が発表されました。
Virtual Server Security for VMware

機能として以下の様にあげられています。
・X-Force Virtual Patch技術を仮想ネットワークにも適用
・仮想環境におけるコンプライアンスの準拠
・ハイパーバイザーの乗っ取り防止技術
・X-Force による精度の高い検知・防御能力を実現
・Virtual Patch (バーチャル・パッチ)による運行コスト削減


試してみようと、IBM PartnerWorldのサイトを徘徊してみるものの見つからず。。。
提供は開始されてるっぽい記述はあるんですが、買わないと入手できないって事なんですかね。。。
インストールガイドには、IBM Download CenterからDownloadしろって書いてあるけども。。。
検証目的で入手したいのですが、無理なんでしょか?知ってる方いましたら教えて頂ければ。。。