Crossbow VNIC の消失
もしかしなくても、再起動すると VNIC 達が見えなくなる、そんな OpenSolaris 2009.06。
VNIC が見えなくなったら、まずは dladm vnic-up だ!
仮想スイッチと仮想 NIC の作成
基本的に「OpenSolaris 3分クッキング ☆レシピ 第 10 巻☆ Zone のクローンニング(複製)」と同じことをしています。
root@opensolaris001:~# dladm create-etherstub etherstub0 root@opensolaris001:~# dladm create-vnic -l etherstub0 vnic100 root@opensolaris001:~# dladm create-vnic -l etherstub0 vnic101 root@opensolaris001:~# dladm create-vnic -l etherstub0 vnic102 root@opensolaris001:~# dladm create-vnic -l etherstub0 vnic103 root@opensolaris001:~# dladm create-vnic -l etherstub0 vnic104 root@opensolaris001:~# dladm show-link LINK CLASS MTU STATE OVER e1000g0 phys 1500 up -- etherstub0 etherstub 9000 unknown -- vnic100 vnic 9000 up etherstub0 vnic101 vnic 9000 up etherstub0 vnic102 vnic 9000 up etherstub0 vnic103 vnic 9000 up etherstub0 vnic104 vnic 9000 up etherstub0
Zone のための NAT 設定
vnic100 経由で外に出られるようにします。
root@opensolaris001:~# ifconfig vnic100 plumb root@opensolaris001:~# ifconfig vnic100 10.11.161.101/16 up root@opensolaris001:~# routeadm -u -e ipv4-forwarding root@opensolaris001:~# cd /etc/ipf root@opensolaris001:~# vim ipnat.conf map rge0 10.11.0.0/16 -> 0/32 portmap tcp/udp auto map rge0 10.11.0.0/16 -> 0/32 root@opensolaris001:~# svcadm enable svc:/network/ipfilter:default
VNIC の消失
このあとすぐに Zone の作成に入ると気がつかなかったけれど、念のためここでスナップショットをとってから作業を進めて再起動してみたら。
ここから twitter。
あれ…? 仮想 NIC 全部吹っ飛んでる。再起動しちゃだめってオチじゃないよね…?
.@saria もしかしなくても VNIC 全部吹っ飛ぶみたい。いやいやいや。
@satokaz さんより救いの手入る。
@saria /etc/dladm/datalink.conf に残骸残っていないようなら吹っ飛んでますね。。。あるいは、違う BE で起動してしまったとか・・・Crossbow vWire demo tool 入れてしまったとか・・・
ちょうど /etc/dladm/ とかあるんじゃないのと勘で読んでいたところ。
設定は残ってました。
@saria 2009.06 でしたっけ?
@satokaz /etc/dladm/datalink.conf に設定は残っているんですが、dladm show-vnic や dladm show-link で見えなくなっちゃいました。作業ミスなのか再起動で消えるものなのか、スナップショットで戻って試行錯誤してみますー。
@satokaz 2009.06 です。やってることは3分クッキングと全く同じ。今再度作って再起動してどうなるか見てみるとこです。 http://jp.sun.com/developers/events/nightSeminar/PDF/cookbook_zones.pdf
スナップショットで環境を戻してから確認。
!?
再起動直後に消えていること、間違いなし。
root@opensolaris001:~# dladm show-link LINK CLASS MTU STATE OVER e1000g0 phys 1500 up --
仮想 NIC 作成直後 http://bit.ly/c9xfXs 作成のみして即再起動後 http://bit.ly/afJDnQ
@saria nwam (network auto magic) 使ってたりしますか?
@satokaz nwam 設定は特にしていないので、おそらくデフォルト (on) っぽいです。VNIC は自動認識されず見えなくなるってことですかねー。
これがうわさにきく nwam …!
いやでも自動化されてなくても dladm で up するコマンドとかあるんじゃないの?
でもヘルプにも man dladm にも、それっぽいものないんですけど。
VNIC の復活
@saria その状態で dladm up-vnic たたいてから show-link するとどうなります?
@saria だとすると、/lib/svc/method/net-nwam に dladm up-vnic が入ってないという bug? かなと
すごく魅力的な単語が含まれたコマンドが!
そしてなぜ man にいないの;
root@opensolaris001:~# dladm up-vnic root@opensolaris001:~# dladm show-link LINK CLASS MTU STATE OVER e1000g0 phys 1500 up -- etherstub0 etherstub 9000 unknown -- vnic100 vnic 9000 up etherstub0 vnic101 vnic 9000 up etherstub0 vnic102 vnic 9000 up etherstub0 vnic103 vnic 9000 up etherstub0 vnic104 vnic 9000 up etherstub0
dladm up-vlink; dladm show-link http://bit.ly/cnrVpt
@satokaz できましたー!
@saria nwam つかう場合は、こんな感じで net-nwam を修正してください http://tinyurl.com/ygc487p
nwam が up-vnic してくれていないみたい。手動で追記。
@saria でも、vnic たくさんあると、すべてが nwam 配下に入るので注意です。 – crossbow を自在に使いたいなら、nwam は disable だろ- http://tinyurl.com/yfksm7c
@satokaz その記事はいまでも覚えているのですが、まさか自分がお世話になる日がくるとは思わなかった程度の Linux ユーザ。助かりましたー!
一人で解けた気がしないあたり、大変ありがとうございました。
その後
そろそろ「よくある tweet の単語」で Solaris のが Linux を上回り兼ねない。@satokaz 神に感謝しつつメモメモ。 http://tinyurl.com/yfksm7c
そうか、まだ試してないけど、zone 用の VNIC 全部 up なんてされたら、「ちょ、おまっ…!」どころじゃないよね;
まったく…「crossbow を自在に使いたいなら、nwam は disable だろ」。
@saria いや、nwam はまだ phase 1 という段階でヨチヨチ歩きみたいなものなのでこれからに期待!程度に思って貰えれば作ってる人のはげみにもなるかと思います。必要な人には必要な機能なので。。。
@satokaz なるほど。歴史を知らないとつい軽はずみな発言を。まだ新しい機能なんですね。
nwam、まだ新しい子らしかった。



