メニュー 閉じる

日: 2009年5月9日

Solarisゾーニング

Solarisの素敵な機能、ゾーニング(Solarisコンテナ)の学習中。

今日はとりあえず「ゾーン」と呼ばれる、同一サーバなのに別サーバみたいなものを作ってみました。

 

まずはリソースプールの定義から。

# pooladm -e
# pooladm –s
# poolcfg -c ‘create pool pool_zone1’
# poolcfg -c ‘create pset pset_zone1 (uint pset.min = 1; uint pset.max = 2)’
# poolcfg -c ‘associate pool pool_zone1 (pset pset_zone1)’

 

ゾーン作成開始!

# zonecfg -z zone1
zone1: そのような構成済みゾーンはありません
‘create’ を使用して、新しいゾーンの構成を開始してください。
zonecfg:zone1> create
zonecfg:zone1> set zonepath=/export/zones/zone1
zonecfg:zone1> set autoboot=true
zonecfg:zone1> set pool=pool_zone1
zonecfg:zone1> add net
zonecfg:zone1:net> set physical=pcn0
zonecfg:zone1:net> set address=192.168.0.98
zonecfg:zone1:net> end
zonecfg:zone1>
zonecfg:zone1> add attr
zonecfg:zone1:attr> set name=comment
zonecfg:zone1:attr> set type=string
zonecfg:zone1:attr> set value="Test Zone 1"
zonecfg:zone1:attr> end
zonecfg:zone1> verify
zonecfg:zone1> commit
zonecfg:zone1> exit
#

ここまでは難なく終了。

(エラーっぽいのは、新規ゾーンを作ろうとしてるから正常なはず。)

肝心かなめのインストールを開始すると…

# zoneadm -z zone1 install
zoneadm: zone ‘zone1’: 警告: プール ‘pool_zone1’ が見つかりません。デフォルトのプールを使用します
Preparing to install zone <zone1>.
Creating list of files to copy from the global zone.
Copying <12961> files to the zone.
Initializing zone product registry.
Determining zone package initialization order.
Preparing to initialize <1701> packages on the zone.
Initialized <1701> packages on zone.
Zone <zone1> is initialized.
Installation of these packages generated errors: <SUNWtpm>
The file </export/zones/zone1/root/var/sadm/system/logs/install_log> contains a log of the zone installation.
#

ありゃ?

リソースプールが見つかりません。
なんでだろー???

 

…と思いつつ、まあデフォルトプール使ってくれたようなのでreadyにしてみる。

# zoneadm -z zone1 ready
zoneadm: zone ‘zone1’: 警告: プール ‘pool_zone1’ が見つかりません。デフォルトのプールを使用します
zone ‘zone1’: WARNING: Pool not found; using default pool
#

やっぱりデフォルトプール。
まあいいや。実験だし。

 

つーことで、ゾーン(仮想コンテナ)起動!!!

# zoneadm -z zone1 boot
zoneadm: zone ‘zone1’: 警告: プール ‘pool_zone1’ が見つかりません。デフォルトのプールを使用します
#

またデフォルトプール(笑)

なんでじゃーーーー。

 

とりあえず、

# zlogin -C zone1

で、ポストインストール?(ゾーンの初期化)を実行、これで別マシンみたいなやつが動くようになりました。

わっほいわっほい。

 

…よくわからない方、すみません(^^;

 

※テスト環境: SXCE(Solaris Express, Commuinity Edition)/x86 (snv_112)