GMOクラウドALTUS lxcの利用

前回、GMOクラウドにてcentos6もcentos7も作れるようになったので、今度はその仮想サーバ上でlxcが使えるか検証してみた。rpmでinstallしてlxcコンテナを作成、問題は外部との通信が行えるかどうかだ。GMOクラウドでは、申請すればホストと同じセグメントのprivate IPをもらう事ができる。理想は追加したIPをブリッジ接続した内部コンテナにアサインして外部と通信させる事。

結論から言うと、内部コンテナが外部と通信する事は不可能だった。vethだけでなくmacvlanを試してみたり、centos7でなくcentos6で試してみたり。改善する気配がないので、真面目に調べようと思ってguestでtcpdumpしてみた。ブリッジ接続なので、guestにはhostと同じgatewayを設定しているんだけど、そのdefault gatewayに対して延々とarp requestを送っている。



外部接続するには、まずdefault gatewayのmac addressを覚える必要があるんだけど、guestのarp requestに対してクラウド環境側のgateway機器がarpを返してくれない。これはもう設定云々の問題ではなく、クラウド側の仕様としてNGと判断するしかない。因みにhost側にてvirtual ipやらvirtual nic(任意のmac address)を設定した場合はきちんとarpを返してくれるので、ブリッジ接続のみ不可ということだろう。

ブリッジ接続が出来ないとhostのportにguestのportをNATするような格好になる。そうするとchefの構造が複雑化するので、コンテナ運用は諦めるつもりだ。dockerであればhost networkingが使えるので、外部通信も問題ないと想像している。host networkingとか誰得と思っていたんだけど、使える場面がちゃんとあるもんなんだね。

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)