従来の仮想マシンと比較して軽量な仮想環境としてコンテナが注目されている。コンテナによる仮想環境での特徴としてコンテナで同じカーネルを共有している点があげられる。 また、コンテナで実際のサービスを提供する場合、アプリケーションがほかにカーネルの提供する機能も必要となる。そこで今回はコンテナ環境下でのカーネルの機能の利用について実際に試してみた。 コンテナ上でのカーネルの機能の利用 コンテナではapacheやmysqlといったプロセスはそれぞれの名前空間で実行されている カーネルはすべてのコンテナでホストのカーネルを利用している。 ipvsやiptablesはカーネル側の機能 コンテナではホストのカーネルを共有しそれぞれのコンテナごとに独立した名前空間を作成して、その上でユーザプロセスを実行することによって仮想環境を実現している。 しかし、実際のサービスなどにおいてはhttpサーバやデータベー
![コンテナ上でのipvsおよびiptablesの利用](https://cdn-ak-scissors.b.st-hatena.com/image/square/3389eabc168557531f01390781c636752c05e076/height=288;version=1;width=512/https%3A%2F%2Fblogger.googleusercontent.com%2Fimg%2Fb%2FR29vZ2xl%2FAVvXsEhlltQdzsUJCSHSSQbIlOaBNmIYqPUZeaLKORnbyUYdrHunMzXbEU39UsdLRax5XQ5Ko54xlHpIBVb_THW3Kp5yb3joSOKTfsk0nG5dHOgUF3Keoj7OGQwGI0SYgWHHx7XEv9trP19AB0E%2Fw1200-h630-p-k-no-nu%2Fcontainer.png)