UbuntuシステムでLXCコンテナを使用するチュートリアル
「コンテナ」を使用してホスト環境のセキュリティを保証するという概念は、10年前から存在していた(例えばFreeBSDのjail仮想化技術)が、最近になってクラウドアーキテクチャの導入のニーズが高まるにつれて、LXCやDockerのようなLinuxのコンテナが注目されている。もちろん、主流メーカー(アマゾンのAWS、マイクロソフトのAzure、赤い帽子、Ubuntuなど)からなる強力な頼りになっているため、Dockerはメディアのスポットライトの下に置かれているが、実際にはDockerの中のいわゆる「容器」技術はLXCが提供している。
あなたはただのLinuxユーザーですが、Docker/LXCはあなたにどんなメリットをもたらすことができますか?コンテナは、異なるLinuxリリース間でアプリケーションを移行できます。このシーンを想像してみてください:あなたが使っているリリース版はDebianで、あなたはその安定性が好きで、同時にあなたはまた最新のUbuntuゲームを游びたいです。あなたはパソコンにデュアルシステムをインストールしてUbuntuに再起動する必要はありません。Debianの上でリソースを消費するUbuntuの仮想マシンを走る必要もありません。あなたは簡単にUbuntu容器を生成するだけで十分です。
Dockerのメリットはともかく、LXCコンテナのメリットについてお話ししましょう。libvirtが提供するインタフェースを使用してLXCを管理することができます。これらのインタフェースはDockerとは何の関係もありません。libvirtライブラリベースの管理ツール(virt-managerやvirshなど)を使用している場合は、LXCコンテナを管理できます。
UbuntuでLXCをインストールする以下のコマンドを使用して、LXCのユーザー状態のツールをインストールします。
コードのコピー次に、現在のカーネルがLXCをサポートしているかどうかを確認します。すべての結果が「enable」の場合、カーネルサポートについて説明します。
コードのコピー指定した環境(Debian Wheezy 64ビットなど)でLXCコンテナを作成するには、対応するLXCテンプレートが必要です。幸いなことに、LXCが提供するツールには、既存のLXCテンプレートが統合されており、/usr/share/lxc/templatesディレクトリの下で見つけることができます。
コードのコピーLXCテンプレートは、指定した環境でコンテナを作成するためのスクリプトです。LXCコンテナを作成する場合は、それらを使用する必要があります。
たとえばUbuntuコンテナを新規作成するには、次のコマンドを使用します。
コードのコピー