Dockerをより良く使うための3つの周辺技術
Core OS
開発元 | CoreOS.inc |
---|---|
公式サイト | https://coreos.com/ |
ライセンス | Apache License 2.0 |
提供開始 | 2013/06 |
最新バージョン | 557.0.0 |
CoreOSは、コンテナの稼働を目的とした超軽量のLinuxディストリビューションである。CoreOSの構成要素はLinuxカーネル、systemd、コンテナ技術、そしてコンテナの動作に必要なパッケージのみであり、仮想マシンを複数立ち上げるのが困難な低リソースのサーバであっても、CoreOSとDockerであれば十分に運用出来る。導入にはノウハウが必要な箇所が存在するので、実際のインストール手順も含めて紹介する。
メリット
現在の一般的なLinuxディストリビューションは、ことDockerを運用していく専用OSとして利用するにはいささか冗長である。例えばコードの管理やnginxの稼働、RDBの運用等は、全てDockerコンテナで実現出来る。そのため、他のディストリビューションで広く利用されているパッケージマネージャは不要となる。CoreOSは、そういった「Dockerで出来ること」を可能な限り排除して軽量化を図り、主要な機能をコンテナ技術に任せることを前提に制作されている。そのためDockerと組み合わせると、重複する不要なプロセスやプロダクトにリソースを消費することなく、セキュリティホールになりうるリスクも最小限に、Dockerを運用できることだろう。
デメリット
CoreOSの最大のデメリットは、利用方法が一般的な他のディストリビューションと大きく違う点だろう。CoreOSには通常のLinuxディストリビューションには存在する一般的なコマンドがインストールされていない。パッケージ管理のyumもapt-getも存在せず、コマンドも必要最低限しか実装されていない。
CoreOSを導入してみる
今回インストールするのはCoreOS 472.0.0、稼働させる環境はVMWare ESXi 5.5.0上の仮想マシンである。公式ドキュメントを参考にした。
導入の時に登場するマシンは、全部で以下の3つだ。
- CoreOSをインストールするVM(以降CoreOSVM)
- CoreOSをダウンロードしたり変換したりするLinux端末(以降Linux端末)
- VMware ESXiにアクセスするWindows端末(以降Win端末)
ダウンロード
まずLinux端末より、CoreOSのイメージをダウンロードする。
解凍
Linux端末よりダウンロードしたCoreOSのイメージを解凍する。
解凍後、作成されたディレクトリへ移動しておく。
OVFツールの導入
Win端末からVMwareの公式サイトにアクセスし、OVFツールをダウンロードする。
VMware Open Virtualization Format Tool
ダウンロードが完了したら、Linux端末へファイルを送、Linux端末上でOVFツールをインストールする。OVFツールのファイル名は「VMware-ovftool-3.5.2-1880279-lin.x86_64.bundle」であるとする。
OVFへ変換
Linux端末上でダウンロード・解凍したCoreOSのイメージを、OVFツールを用いて変換する。
VMWareESXi上でデプロイ
Win端末よりESXiへアクセスして「ファイル→OVFをデプロイ」を選択し、OVF形式に変換したCoreOSイメージファイルを指定してデプロイする。
初回ログインの手順
CoreOSではコンソールからのログインは出来ないので、CoreOSをダウンロードしてきたディレクトリの中にある「insecure_ssh_key」をアクセスするLinux端末へ配置し、以下のコマンドでログインする。
ログインに成功すると、以下のメッセージが表示される。
CoreOSではDockerがインストール済みなので、後は利用するだけである。
CoreOSの評価
CoreOSは2014年の7月に正式版がリリースされ、大きな不具合も報告されていない。2014年の12月にDockerと決別する意向を表明したのは残念だが、それでも現状Dockerを低リソースで活用するのであれば、CoreOSはおすすめできる選択肢だろう。
筆者は、CoreOSを利用する価値があると考えている。だがパッケージ管理方法や、普段使っているOSコマンドや設定ファイルがないことが多々あるので、利用には若干の慣れが必要である。
次回は、KubernetesとPanamaxを紹介する予定だ。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- 注目すべきDockerの周辺技術 PanamaxとKubernetes
- OpenStack、Docker、Hadoop、SDN、.NET…、2014年のOSS動向をまとめて振り返る
- Docker向けの軽量Linux OS 主要3種を比較する
- Dockerの導入前に知っておくべきこと
- Red HatがCoreOSを買収へ
- Dockerが注目されている理由を探る
- Dockerを理解するための8つの軸
- CoreOS、Linuxコンテナ実行エンジン「rkt 1.3」リリース
- KubernetesのマニフェストをMagnumで実行する
- クラスキャット、OpenStack Kiloベースのプライベートクラウドソリューションを提供開始