CentOS6とLXCのメモ書き
最近LXCとCentOS6の組み合わせを検証しているのですが、いろいろと忘れそうなのでキーワードをメモ書きしておきます。
できればキーワードを細かく解説したいけど、まずはざっくりと。
環境は以下のような感じ。
-
- VMWarePlayer
- CentOS6.3(Host,Guest),minimal
前提条件。
-
- コンテナはシステムコンテナのみ(アプリケーションコンテナは使わない)
コンテナ作成時の以下メモ書き。
-
- コンテナの操作はlxc-***というCLIで行う(作成、開始、停止、破棄、モニタリングetc)
- コンテナ作成用のtemplateが各種LinuxOS向けに用意されているがCentOS向けは無い
- Fedora向けのtemplateを改造してCentOS向けにする
- コンテナのinit処理を改造して、ハードウェア関連の処理をやらないようにする
- kernelに依存の強い機能はコンテナでは使えないことがある(NFSなど)
- cgroupのパラメータにechoすると、コンテナ稼働中でもリソース設定を変更できる
- ネットワーク設定は各コンテナのlxc.confで設定する(ifcfg-ethxなファイルを使わない)
- Host(eth)→Host(Bridge)→Guest(eth)なルーティングになる(Host-Guest間はlxc.confで設定)
- 設定で困ったら「man lxc.conf」をよく読む
コンテナでとりあえず動いたもの。
コンテナで試して動かなかったもの。
今後の課題。
-
- NFSが駄目だったので、lib系が絡んだ時にはまりそうな気がする
- modprobeがHostの設定ファイルを見てるっぽいので、bindでmountしたらうまく動く気もする
2012/09/11追記
modprobeがホストの設定ファイルを見ているというよりは、kernelバージョン(uname -r)を元に設定ファイルを探しに行っている、というのが正しかった(man modprobeより)。調べてみたらHostとGuestでkernelのバージョンが変わっていたので、NFSは再度検証してみる必要がありそう。