<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>Whimsical Kitteeeeen &#187; VMware ESXi</title>
	<atom:link href="http://www.witkitty.com/wordpress/category/computer/esxi/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.witkitty.com/wordpress</link>
	<description>日々繰り返される失敗談と、その失敗を冷ややかな眼差しで見守る気まぐれ猫たちの近況・・・</description>
	<lastBuildDate>Thu, 02 Feb 2012 07:32:57 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.witkitty.com/wordpress/category/computer/esxi/feed/" />
		<item>
		<title>ESXi 4.1へのアップグレード完了</title>
		<link>http://www.witkitty.com/wordpress/2010/07/28/update2esxi41-completely/</link>
		<comments>http://www.witkitty.com/wordpress/2010/07/28/update2esxi41-completely/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 22:35:21 +0000</pubDate>
		<dc:creator>hiro</dc:creator>
				<category><![CDATA[VMware ESXi]]></category>
		<category><![CDATA[upgrage]]></category>
		<category><![CDATA[アップグレード]]></category>

		<guid isPermaLink="false">http://www.witkitty.com/wordpress/?p=309</guid>
		<description><![CDATA[<a href="http://www.witkitty.com/wordpress/2010/07/28/update2esxi41-completely/" title="ESXi 4.1へのアップグレード完了"></a>7/15に一部のESXiをバージョン4.1へアップグレードしたことを書きましたが、CPUの関係でアップグレードからはぐれていたDELLマシンも部屋の模様替えと同時にCPUを載せ替え、無事4.1へのアップグレードが完了しま &#8230;<p class="read-more"><a href="http://www.witkitty.com/wordpress/2010/07/28/update2esxi41-completely/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://www.witkitty.com/wordpress/2010/07/28/update2esxi41-completely/" title="ESXi 4.1へのアップグレード完了"></a><div style="padding-left: 30px;">
<p style="text-indent:1em;">
<a href="http://www.witkitty.com/wordpress/2010/07/15/esxi_update40to41/" target="_blank">7/15</a>に一部のESXiをバージョン4.1へアップグレードしたことを書きましたが、CPUの関係でアップグレードからはぐれていたDELLマシンも部屋の模様替えと同時にCPUを載せ替え、無事4.1へのアップグレードが完了しました。<br />
やり方は、既に他の方が詳しく書いているのでメモ程度に記しておきます。<br />
前提ですが、VMwareアカウントを持っていて、既に4.0.xを導入済みの方です。</p>
<ol>
<li>VMware vSphere CLI 4.1をダウンロードしインストールします。（ActivePerlが自動的にインストールされます）</li>
<li>アップグレードファイル（upgrade-from-ESXi4.0-to-4.1.0-0.0.260247-release.zip-7/15現在）をダウンロードしておきます。</li>
<li>アップグレードするホストの全てのクライアントをシャットダウンします。</li>
<li>アップグレードするホストをメンテナンスモードにします。</li>
<li>CLIコマンドプロンプトを開き（スタートメニューから辿れます）、配下のbinディレクトリに移動します。</li>
<li>以下のコマンドを実行します。
<pre>ihostupdate.pl --server [ホスト名もしくはIPアドレス] -i -b [アップグレードファイルのフルパス] -B ESXi410-GA-esxupdate</pre>
<p>ユーザ名とパスワードを聞いてくるので入力します。</li>
<li>以下のコマンドを実行します。
<pre>ihostupdate.pl --server [ホスト名もしくはIPアドレス] -i -b [アップグレードファイルのファイルのフルパス] -B ESXi410-GA</pre>
<p>ユーザ名とパスワードを聞いてくるので入力します。</li>
<li>以下のコマンドを実行します。
<pre>ihostupdate.pl --server [ホスト名もしくはIPアドレス] --query</pre>
<p>ユーザ名とパスワードを聞いてくるので入力します。</li>
<li>2項目が4.1になっていればアップグレードは成功です。</li>
<li>VMware vSphere Client 4.1をダウンロードしインストールします。ここで古い4.0は削除します。</li>
<li>VMware vSphere Clientを開き、アップグレードしたホストのバージョンを確認してみましょう。</li>
</ol>
<p>後は「VMware GO」の確認を残すのみとなりましたが、datastoreがまだ複数あるので、後日時間があったときに試して見たいと思います。
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.witkitty.com/wordpress/2010/07/28/update2esxi41-completely/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.witkitty.com/wordpress/2010/07/28/update2esxi41-completely/" />
	</item>
		<item>
		<title>まもなくESXi 4.1 にアップデート予定（with VMware Go）</title>
		<link>http://www.witkitty.com/wordpress/2010/07/15/esxi_update40to41/</link>
		<comments>http://www.witkitty.com/wordpress/2010/07/15/esxi_update40to41/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 08:18:37 +0000</pubDate>
		<dc:creator>hiro</dc:creator>
				<category><![CDATA[VMware ESXi]]></category>

		<guid isPermaLink="false">http://www.witkitty.com/wordpress/?p=262</guid>
		<description><![CDATA[<a href="http://www.witkitty.com/wordpress/2010/07/15/esxi_update40to41/" title="まもなくESXi 4.1 にアップデート予定（with VMware Go）"></a>VMware ESXiの4.1がリリースされた。 現在当方環境ではVMware ESXiが3台稼働しているのだが、その中の2台はさくさくと4.1へのアップデートが完了した。 残る1台は、唯一メーカー製マシンの「DELL  &#8230;<p class="read-more"><a href="http://www.witkitty.com/wordpress/2010/07/15/esxi_update40to41/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://www.witkitty.com/wordpress/2010/07/15/esxi_update40to41/" title="まもなくESXi 4.1 にアップデート予定（with VMware Go）"></a><p style="padding-left: 30px; text-indent:1em;">
VMware ESXiの4.1がリリースされた。<br />
現在当方環境ではVMware ESXiが3台稼働しているのだが、その中の2台はさくさくと4.1へのアップデートが完了した。<br />
残る1台は、唯一メーカー製マシンの「DELL PowerEdge T100」。近い将来 64bit ゲストOSをインストールすることも考えなければならないのだが、このESXi4.0で 64bit ゲストOSを追加しようとすると、vSphereから「<strong><span style="color: #dd0000; font-size:16px;">対応CPUじゃね～よ、ぼげぇ～</span></strong>」となじられて追加できない。<br />
まぁ、このマシン、本来はECC対応のメモリーを積まなきゃならないのだが、人柱でnon-ECCメモリを8GB積んでいる。なので、もうこの時点でDELLのサポートは受けられないということで、CPUも載せ替えを画策中なのである。<br />
CPUを載せ替えたら4.1へアップデートする予定なのだが、1つ難点が。それは、「VMware Go」（Web管理インターフェースとでも言いましょうか）は、複数台のdatastoreを許可しないのである。そこでグーグル先生に聞いたところ同じような質問をしている方がいて、VMware内部の人が、「ESXiをUSBブートすればいいんじゃね？」と発言しておる。<br />
当方のESXiは全てdatastoreが2台（ESXi OSとホストデータに分かれている）なので、今のESXi OSブートディスク使用を止めてUSBブートすれば、datastoreが1台ということになり、「VMware Go」で認識するか人柱になってみようかと検討中。<br />
ただ、今年末以降に複数台のdatastoreに対応する「予定」らしいので、それまで待とうかなぁ～とも思ってみたり。<br />
まぁ、1台だけ人柱してみて、「VMware Go」の機能を一通りチェックして、必須かどうか検討しよう。<br />
続報はまた書くと思うのでしばらくお待ちを・・・って、誰も待っとらんわい。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.witkitty.com/wordpress/2010/07/15/esxi_update40to41/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.witkitty.com/wordpress/2010/07/15/esxi_update40to41/" />
	</item>
		<item>
		<title>仮想ゲストOSバックアップ～cron登録～</title>
		<link>http://www.witkitty.com/wordpress/2009/07/11/esxi-backup-part3/</link>
		<comments>http://www.witkitty.com/wordpress/2009/07/11/esxi-backup-part3/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 16:51:45 +0000</pubDate>
		<dc:creator>hiro</dc:creator>
				<category><![CDATA[VMware ESXi]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[cron]]></category>
		<category><![CDATA[バックアップ]]></category>

		<guid isPermaLink="false">http://www.witkitty.com/wordpress/?p=136</guid>
		<description><![CDATA[<a href="http://www.witkitty.com/wordpress/2009/07/11/esxi-backup-part3/" title=" 仮想ゲストOSバックアップ～cron登録～"></a>以前「仮想ゲストOSバックアップ～スクリプト編～」で、ゲストOSをバックアップするためのスクリプトを稚拙ながら書きましたが、今回はそのスクリプトをESXiのcronに登録してみます。 やっていることは、 スクリプトをパス &#8230;<p class="read-more"><a href="http://www.witkitty.com/wordpress/2009/07/11/esxi-backup-part3/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://www.witkitty.com/wordpress/2009/07/11/esxi-backup-part3/" title=" 仮想ゲストOSバックアップ～cron登録～"></a><p style="padding-left: 30px;">以前「<a rel="nofollow" href="http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/">仮想ゲストOSバックアップ～スクリプト編～</a>」で、ゲストOSをバックアップするためのスクリプトを稚拙ながら書きましたが、今回はそのスクリプトをESXiのcronに登録してみます。<br />
やっていることは、</p>
<ul style="padding-left: 30px;">
<li>スクリプトをパスの通ったところにリンクを張る</li>
<li>cron設定ファイルに登録する</li>
</ul>
<p style="padding-left: 30px;">の２点です。どちらもrc.localに書き込むのですが、これは/sbinに実際のスクリプトファイルを置いても、ESXiサーバを再起動すると、デフォルトのファイルに戻されるため、せっかく置いたファイルが消えてしまいます。また、cron設定ファイルも同様に、再起動するとデフォルト設定に戻るので、どちらとも起動時に再配置・再設定するようにするわけです。では、rc.localはというと、</p>
<div style="padding-left: 30px;">
<pre>
#! /bin/ash
export PATH=/sbin:/bin

log() {
echo &quot;$1&quot;
logger init &quot;$1&quot;
}

#execute all service retgistered in /etc/rc.local.d
if [ -d /etc/rc.local.d ]; then
for filename in `find /etc/rc.local.d/`
do
if [ -f $filename ] &amp;&amp; [ -x $filename ]; then
log &quot;running $filename&quot;
$filename
fi
done
fi
### ここまでがデフォルト内容です
### 今回以下に追加しました
### スクリプト実体のシンボリックリンクを/sbinに作ります
ln -s /vmfs/volumes/datastore1/hotbackup.sh /sbin/hotbackup.sh

### cron設定ファイルに書き込み、cronデーモンを再起動します
cat&lt;&lt;_EOT_&gt;&gt;/var/spool/cron/crontabs/root
0 3 * * * /sbin/hotbackup.sh witkitty &gt; /dev/null
_EOT_
kill -sigterm `ps|awk &#039;/[c]rond/ {print $1;}&#039;`
crond
</pre>
</div>
<p style="padding-left: 30px;">cronの再設定にはヒア・ドキュメントを使うと、ファイルに直接書き込むようなイメージで仕込むことが出来るので便利です。再起動をまだしませんよ～という方は、リンク作成とcron設定ファイルを直接編集して、cronデーモンを再起動してください。<br />
さぁ、これでESXiサーバ時間の午前3時にこのサイトのゲストOSのホットバックアップが開始されるはずです。ちなみに当方のESXiの時間は米国中部のままの設定なので、日本からだと-15時間の時差があります。よって、時間だけで言えば、いきなり日本時間の昼の12時に開始されるわけです。</p>
<p style="padding-left: 60px;">
<strong>注記：</strong><span style="color: #888888;">バックアップスクリプトのGIDチェック部分で取得GIDが正常でも直前の実行ステータスが０で帰ってくるため、バックアップ処理が中断される現象が出ました。よってスクリプト側の修正も施されていますので、<a rel="nofollow" href="http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/">過去記事</a>を参照してくださいな。</span></p>
<p style="padding-left: 30px;">
さて、これで無事上書き自動バックアップが出来るようになりましたとさ。<br />
あとは、リストア用のスクリプトと、バックアップローテーションをどうするかですな・・・ポツポツ合間を見つけて書いてみます。<br />
ではでは。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.witkitty.com/wordpress/2009/07/11/esxi-backup-part3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.witkitty.com/wordpress/2009/07/11/esxi-backup-part3/" />
	</item>
		<item>
		<title>仮想ゲストOSバックアップ～スクリプト編～</title>
		<link>http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/</link>
		<comments>http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/#comments</comments>
		<pubDate>Sat, 04 Jul 2009 22:23:53 +0000</pubDate>
		<dc:creator>hiro</dc:creator>
				<category><![CDATA[VMware ESXi]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[monosparse]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[vmkfstools]]></category>
		<category><![CDATA[スクリプト]]></category>
		<category><![CDATA[バックアップ]]></category>

		<guid isPermaLink="false">http://www.witkitty.com/wordpress/?p=128</guid>
		<description><![CDATA[<a href="http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/" title="仮想ゲストOSバックアップ～スクリプト編～"></a>以前、仮想ゲストOSのバックアップについて、簡単に書きましたが、当方の環境もここまでESXi密度が高いと、「もしも・・・」の時に涙ちょちょ切れ～ってことになるので、スナップショットとクローン作成を利用したバックアップ作成 &#8230;<p class="read-more"><a href="http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/" title="仮想ゲストOSバックアップ～スクリプト編～"></a><p style="padding-left: 30px;">以前、<a rel="nofollow" href="http://www.witkitty.com/wordpress/2009/06/16/computer-esxi-backup/">仮想ゲストOSのバックアップ</a>について、簡単に書きましたが、当方の環境もここまでESXi密度が高いと、「もしも・・・」の時に涙ちょちょ切れ～ってことになるので、スナップショットとクローン作成を利用したバックアップ作成スクリプトを作ってみました。お役に立てれば・・・<br />
当方の環境は、バックアップ用ボリュームがESXi上にnfsマウントされており、以下のスクリプトはそこに作成されるような仕組みになっていますので、環境に合わせて変数内容を変えてください。尚、このスクリプトを作成するにあたり、「<a href="http://akionweb.com/archives/2009/04/esxi.shtml">AKIONWEB</a>」さんのところを参考に作ってみましたが、動作結果については自己責任と言うことで。<br />
では、まず環境条件から・・・といっても上に書いたように、</p>
<div style="padding-left: 30px;">
<ul>
<li> ESXiからバックアップボリュームが見えていること</li>
<li>引数としてはゲスト名だけを使用する</li>
<li>バックアップは上書きでも良しとすること</li>
</ul>
</div>
<p style="padding-left: 30px;">
だけです。<br />
では、続きと簡単な解説は、続きでどうぞ。（かなり長いです・・・が、やっていることは大したことないです）<br />
追記：07/11 追加・修正部分あり
</p>
<p><span id="more-128"></span></p>
<div style="padding-left: 30px;">
<pre>
#!/bin/ash

###	But I'm sorry, follows comments are Japanese-English, you may not understand it.
###	This script does backup without rotate.

###
#	Input
#	$1 : Guest name
#
#	Internal variable
#	$gname	: Guest name
#	$gid	: Guest ID
#	$store	: Gust datastore name
#	$gdir	: Gust datastore directory
#	$bdate	: Backup date
#	$bbase	: Backup base directory(/vmfs/volumes/esx01-backup/)
#	$bdir	: Backup directory
#
#	07/05/2009 by hiro
#	07/07/2009 add and fix by hiro
###

###-----
#	wait current snapshot creation work
#
check_running_task (){
for i in `vim-cmd vimsvc/task_list | grep vim.Task:haTask-$1 | grep $2 | sed -e 's/.*vim.Task://' -e "s/[', ]//g"`; do
if [ "`vim-cmd vimsvc/task_info $i | grep running`" != "" ] ; then
	return 0
fi
done
return 1
}
#
###-----

###=======================
#
#	Start main
#
###=======================

# the backup root directory
bbase="/vmfs/volumes/esx01-backup/"

#bdate=`date +%Y%m%d`
#echo $bdate

# the Guest name and get the Guest ID
# -------------------------------------------------------- 07/07/2009 added by hiro
#   Check parameter
if test -z $1
then
        exit 1
fi
gname=$1
gid=`vim-cmd vmsvc/getallvms | grep $gname | awk '{ print $1 }'`
# -------------------------------------------------------- 07/07/2009 fixed by hiro
#   Changed how to check GID
# if [ $? -eq 0 ]; then
if test -z $gid
then
	echo "Error : Guest - "$gname" did not exist."
	exit 0
fi

# take store location of the Guest and set full directory path of the Guest VM files
store=`vim-cmd vmsvc/getallvms | grep $gname | sed -e 's/\[//g' -e 's/\]//g' | awk '{ print $3 }'`
gdir="/vmfs/volumes/"$store"/"$gname"/"

# set backup directory path
bdir=$bbase$gname"/"
if test ! -d $bdir
then
	mkdir $bdir
else
	echo "Already exist backup file."
fi

###-----
#	Start backup
#
#---(Part.1)	copy VM managed information files, you have to copy these informations before make a clone.
#
cp $gdir$gname".vmx" $bdir
cp $gdir$gname".vmxf" $bdir
cp $gdir$gname".vmsd" $bdir
#
#---(Part.2)	take a snapshot
#
vim-cmd vmsvc/snapshot.create $gid $gname
if [ $? -ne 0 ]; then
	echo Snapshot create error.;
	exit;
fi
while check_running_task $gid createSnapshot; do sleep 1; done
#
#---(Part.3)	cloning with monosparse, if you want flat image, remove option.
#
vmkfstools -i $gdir$gname".vmdk" -d monosparse $bdir$gname".vmdk"
if [ $? -ne 0 ]; then
	echo "Error : cloning failed. your backup process did not complete."
	exit 0
fi
#
#---(Part.4)	remove a snapshot
#
vim-cmd vmsvc/snapshot.removeall $gid
#
#	Backup finished

echo "Congratulations!  Guest-"$gname" : backup completely successed."
exit 0
#
###-----
</pre>
</div>
<div style="padding-left: 30px;">
<ol>
<li>まず、23～30行目の関数について<br />
ここは、このスクリプトを何度も叩くと、スナップショット（や解放）がその回数分叩かれることになり、あまりESXiに優しくないので、もし前の処理が残っていたのならば、まだ終わっていない事を関知し、通知する関数です。</li>
<li>41行目の変数について<br />
この変数は、バックアップが保存される親のディレクトリを指します。このディレクトリの後に、ゲスト名がついたディレクトリが実際のバックアップ先（59行目）になります。</li>
<li>47～52行目<br />
ここでは、引数で渡されたゲスト名を保存し、またこのゲスト名を利用してIDリストから該当のID番号を取得しています。コマンド「vim-cmd vmsvc/getallvms」を叩くと、登録されているゲストの一覧が出力されます。以下が実際の出力例。</p>
<pre>
# vim-cmd vmsvc/getallvms
Vmid      Name                       File                          Guest OS          Version   Annotation
528    witkitty     [datastore1] witkitty/witkitty.vmx       otherLinuxGuest         vmx-04
544    VpnSrv       [datastore1] VpnSrv/VpnSrv.vmx           otherLinuxGuest         vmx-04
592    clone        [datastore1] clone/clone.vmx             otherLinuxGuest         vmx-04
</pre>
<p>この中に該当するゲストのIDが先頭にありますので、ゲスト名でgrepし、IDをawkコマンドで引っぱがします。（次の項でに3番目にあるFile項の中のdatastore?も引っぱがすことになります）ここで、該当ゲスト名が無ければエラーでスクリプトが終了します。</li>
<li>55～57行目<br />
ここでは、ゲストファイルの配置情報を取得します。当方のESXiは、ディスクドライブが複数あり、そのうちのいくつかがdatastoreとして登録されています。よって、ゲストによっては同一ESXi上であっても配置されているdatastoreが異なります。1つしかない環境の場合は、後で示すバックアップ元ディレクトリ変数の中で固定していいと思います。</li>
<li>59～65行目<br />
ここで、バックアップ先ロケーションを決定しています。決定されたディレクトリがあるかチェックしていますが、必要無いような気もしますが、後でバックアップの世代管理もやってみようと画策しているので、その時のためのものです。</li>
<li>72～74行目<br />
ここから実際のバックアップ処理（クローン作成）が始まります。まず、ゲストの管理ファイルをコピーします。<a href="http://akionweb.com/archives/2009/04/esxi.shtml">AKIONWEB</a>が仰るには、これを先にしておかないと、後でファイルを編集する必要があるとのことでしたので、そのまま掲載させてもらいました。</li>
<li>78～83行目<br />
ここでスナップショットを取得します。この処理で後述の仮想実体ファイルへのアクセスが可能になります。で、ここで指定のスナップショットが行われたかどうかを冒頭の関数でチェックし、スナップショットが始まったら、実体ファイルの処理に移ります。</li>
<li>87～91行目<br />
ここで、vmkfstoolsコマンドを利用して実体ファイルをクローニングします。当方はmonosparseオプションを利用してバックアップ先のファイルを小さくしていますが、ボリュームサイズが潤沢の方は素のままでもいいのではないかと思います。これはリストアの時に関係していて、小さくした場合、ESXiはその小さいままのファイルを扱うことが出来ず、元の大きなファイルに戻してあげる作業が必要になります。</li>
<li>95行目<br />
さて、そろそろ終わりですね。クローニングが完了したら、スナップショットを解放してあげます。</li>
</ol>
</div>
<p style="padding-left: 30px;">これで、晴れて半自動でのゲストOSのバックアップが可能になりました。あとは、cronに任せることと、バックアップの世代管理機能、リストアスクリプトを組み込めれば安心して眠れます。この辺はまた後で書ければいいかなと・・・（何かいつも最後に自分で宿題作っているような・・・）<br />
試しにこのスクリプトでバックアップし、手動でリストアを行ってみましたが、無事ゲストOSがバックアップ前の状態で稼働しました。（何度も言いますが自己責任で・・・しつこいって）<br />
ではでは。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.witkitty.com/wordpress/2009/07/05/esxi-backup-part2/" />
	</item>
		<item>
		<title>物理マシンのお引っ越し to ESXi (P2V)</title>
		<link>http://www.witkitty.com/wordpress/2009/07/03/vmware-p2v/</link>
		<comments>http://www.witkitty.com/wordpress/2009/07/03/vmware-p2v/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 10:06:23 +0000</pubDate>
		<dc:creator>hiro</dc:creator>
				<category><![CDATA[VMware ESXi]]></category>
		<category><![CDATA[P2V]]></category>
		<category><![CDATA[PtoV]]></category>
		<category><![CDATA[VMware vCenter Converter]]></category>

		<guid isPermaLink="false">http://www.witkitty.com/wordpress/?p=122</guid>
		<description><![CDATA[<a href="http://www.witkitty.com/wordpress/2009/07/03/vmware-p2v/" title="物理マシンのお引っ越し to ESXi (P2V)"></a>我が家のマシンたちは、ほぼESXi上で動いているのだが、残っていたのがドメインコントローラ（ActiveDirectory）。このADは仕事用でサーバ系アプリの試験用に必須なため最後まで物理サーバとして鎮座していた。物理 &#8230;<p class="read-more"><a href="http://www.witkitty.com/wordpress/2009/07/03/vmware-p2v/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://www.witkitty.com/wordpress/2009/07/03/vmware-p2v/" title="物理マシンのお引っ越し to ESXi (P2V)"></a><p style="padding-left: 30px;">我が家のマシンたちは、ほぼESXi上で動いているのだが、残っていたのがドメインコントローラ（ActiveDirectory）。このADは仕事用でサーバ系アプリの試験用に必須なため最後まで物理サーバとして鎮座していた。物理マシンである必要性もないため、今回VMware ESXiのゲストとして移行することにあいなりました。</p>
<p style="padding-left: 30px;">物理（Physical）から仮想（Virtual）へ移行するにあたり使用するアプリケーションは、「<a href="http://www.vmware.com/jp/products/converter/">VMware vCenter Converter</a>」なる代物だけ。使い方は至って簡単。まず、</p>
<div style="padding-left: 30px;">
<ol>
<li>上記リンクへアクセスし、アクティベーション後Windows用なりLinux用なりのインストーラをダウンロードしてきます。<br />今回はWindows用です。</li>
<li>このアプリケーションを移行元の物理マシンにインストールします。</li>
<li>「Convert Machine」ボタンをポチッとクリックします。</li>
<li>コンバート元（今回はこのアプリケーションをインストールしたマシン）とゲスト名を選択／入力します。</li>
<li>作成される仮想イメージの転送先（今回はESXiサーバ）を指定します。<br />途中オプションで、VMware Toolのインストール可否とイメージの自動起動等の設定が出来ます。</li>
<li>ウィザードで設定を完了します。</li>
</ol>
</div>
<p style="padding-left: 30px;">後は勝手にごにょごにょ処理が開始されます。で、こいつの偉いところは、元についているディスクの空き領域は勝手にスキップします。なので、使用量が少なければ少ないほどコンバート時間が短くなります。コンバートコンプリートとなったら、無事ESXi上に転送されたゲストOSがあるはずです。これで、コンバート処理は終わりです。</p>
<p style="padding-left: 30px;">次は物理マシンを落とし、コンバートされたゲストOSを起動（コンバート時自動起動選択可）すると、バックグランドでごそごそなんか動いていますが、指示に従います。あとは、ネットワーク設定（初期はDHCPのようです）を行えば晴れて移行は終了です。</p>
<p style="padding-left: 30px;">
<p style="padding-left: 30px;">さぁ、これでだいぶ電気代の節約に貢献しているはずなんだが、今年の夏、この仕事部屋からエアコンの音が聞こえてくることはあるのだろうか・・・</p>
<h3 style="padding-left: 30px;">「<span style="color: #ff0000;">ほほぉ～、エアコンを動かしたいってか、何のために仮想化したのかな、君は</span>」</h3>
<p>
<p style="padding-left: 30px;">と聞こえてきそうである・・・＿|￣|O</p>
]]></content:encoded>
			<wfw:commentRss>http://www.witkitty.com/wordpress/2009/07/03/vmware-p2v/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.witkitty.com/wordpress/2009/07/03/vmware-p2v/" />
	</item>
		<item>
		<title>仮想ゲストOSのバックアップ</title>
		<link>http://www.witkitty.com/wordpress/2009/06/16/computer-esxi-backup/</link>
		<comments>http://www.witkitty.com/wordpress/2009/06/16/computer-esxi-backup/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 04:52:51 +0000</pubDate>
		<dc:creator>hiro</dc:creator>
				<category><![CDATA[VMware ESXi]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[バックアップ]]></category>

		<guid isPermaLink="false">http://witkitty.com/wordpress/?p=79</guid>
		<description><![CDATA[<a href="http://www.witkitty.com/wordpress/2009/06/16/computer-esxi-backup/" title="仮想ゲストOSのバックアップ"></a>このサイトが動いているサーバはVMware ESXi上のLinux OSで動いている。 仕事柄、ある製品のサポートもしているのだが、再現確認が必要な場合、今までは実機を使用して動作確認・解析を行っていた。この場合、複数の &#8230;<p class="read-more"><a href="http://www.witkitty.com/wordpress/2009/06/16/computer-esxi-backup/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://www.witkitty.com/wordpress/2009/06/16/computer-esxi-backup/" title="仮想ゲストOSのバックアップ"></a><p style="padding-left: 30px;">このサイトが動いているサーバは<a href="http://www.vmware.com/jp/products/esxi/">VMware ESXi</a>上のLinux OSで動いている。<br />
仕事柄、ある製品のサポートもしているのだが、再現確認が必要な場合、今までは実機を使用して動作確認・解析を行っていた。この場合、複数のお客さんの疑似環境を作る必要に迫られたときが大変。当然スケジュールを組んで進めていくのだが、OSが異なったりすると毎回実機にOSをインストールする羽目に。一部、クライアントで動くVMwareも使用していたのだが、何せサーバ関連のサポートなので、必ず複数台必要となり、クライアントを圧迫。そんな矢先、これが出てきたので飛びついた。しかも、ESXiは無償！なのでSOHOな当方には助かる。（当然企業ユースには高機能版が販売されています）<br />
前置きが長くなったが、ESXiを使っていて一番困るのが、「ゲストOSのバックアップ」である。ゲストOSを止めてバックアップ（コールドバックアップ）するのであれば、別段問題は無いのだが、サーバ絡みなので動作中でもバックアップを取る必要がある。しかし、VMware Consolidated Backup（VCB）は有償・・・。ならば、コマンドで何とかしてしまえと言うことで、以下に手順を。</p>
<div style="padding-left: 30px;">
<ul>
<li>ゲストOSのIDを取得
<pre>~ # vim-cmd vmsvc/getallvms</pre>
</li>
<li>バックアップしたいゲストOSのスナップショットを採取
<pre>~ # vim-cmd vmsvc/snapshot.create [ゲストOSのID] [スナップショット名]</pre>
<p>このスナップショットを取ることにより、本来読み込みまでロックされている.vmdkファイルのコピーが可能になります。</li>
<li>ファイルのコピー<br />
コピー方法は、環境によりけりなので、いくつか例を。</p>
<li>ESXiサーバに外部ディスクを直接アタッチしている場合は、そのマウントしているボリュームにコピーすればOK。ちなみに当方は、別のLinuxサーバボリュームをネットワークマウントしているので、そこにコピーしています。</li>
<li>外部のWindowsやNASに転送する場合は、<a href="http://www.tab2.jp/~winscp/">WinSCP（日本語版）</a>なんかを使ってネットワークコピーすればOK。</li>
<li>コピーが終わったら、スナップショットを解放。
<pre>~ # vim-cmd vmsvc/snapshot.removeall [ゲストOSのID]</pre>
</li>
</ul>
</div>
<p style="padding-left: 30px;">もし、元が壊れてこのバックアップから起動したい場合は、ゲストOS名-xxxxx.vmdkの「-xxxxx」を取り除いて起動してあげれば立ち上がります。</p>
<p style="padding-left: 30px;">まぁ、あくまで私の環境での覚え書き程度ですので、先人の方々のサイトを見た方がためになると思い・・・(ry</p>
]]></content:encoded>
			<wfw:commentRss>http://www.witkitty.com/wordpress/2009/06/16/computer-esxi-backup/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.witkitty.com/wordpress/2009/06/16/computer-esxi-backup/" />
	</item>
	</channel>
</rss>

