OSSのDockerコンテナ環境管理ソフト 注目の5製品紹介 2016年版:実際に検証済み!OSS徹底比較(7)Dockerコンテナ環境管理編(4/7 ページ)
Dockerコンテナ環境をGUIを利用して管理を行いたいニーズは大きく、各社よりDockerコンテナの起動制御やスケジューリングをGUIから行える管理ソフトが提供されている。今回は、GUIに対応したDocker環境の管理ツールの内の5つのOSSをピックアップ。特徴やメリット、デメリットなどを解説する。
Rancherのプロフィール
RancherはRancher Labs社が開発したDocker環境のオーケストレーションツールである。Docker環境のクラスタリング、オーバーレイネットワークの構成、リソース監視、コンテナのデプロイ、プライベートDockerリポジトリの管理、利用ユーザーごとの環境の分離など、Docker環境をマルチユーザーで効率的に利用するための多くの機能を提供している。Rancher Labs社はDocker専用の軽量OSのRancherOSも提供している。
ライセンスはApache License 2.0。2014年12月3日にv0.2.0がリリースされ、2016年8月時点の最新バージョンは、2016年8月19日にリリースされたv1.1.3である。Rancherも2年弱の間に細かい改修も含めて400回を超えるリリースが行われており、非常に活発に開発が行われている。
機能概要
RancherはRHEL/CentOS/Ubuntuなどの各種LinuxおよびCoreOS、RancherOSなどのDocker専用OS上で利用をすることが可能である。Linuxを使用する場合は事前にDocker 1.10.3より新しいバージョンをインストールしておく必要がある。
今回の評価は前述のRancherOS上にRancherのコンテナを実行で構築を行っている。最小構成は管理用のサーバ兼ノード×1台で構成できるが、今回は別途、ノード×1台を追加した2台構成で行っている。
Rancherのインストール手順は公式ガイドにまとめられている。RancherOSはAmazon Web Services(AWS)、Google Compute Engine(GCE)など、各種クラウド上でインストール済みOSイメージを起動させることが可能である。物理サーバへのインストール手順についても公式ガイド上で公開されている。
インストール後のRancherOSは鍵認証のSSH接続しか行えないため、事前にSSH接続用の公開鍵と秘密鍵を生成しておき、インストールに使用するcloud-config.yamlに組み込んでおくことが必須である。RancherOSのOSイメージもインストールの都度、Rancherのサイトからダウンロードするため、インターネットに接続しない状態ではインストールできない点にも注意が必要である。検証に使用した環境の構築手順は、以下の弊社技術ブログで公開しているので参考にしていただきたい。
参考リンク:RancherOS上でRancherのクラスタを構成してみた (Tech Sketch/TIS)
RancherOS起動後は、SSHで接続し、サーバ側にはrancher/serverとrancher/agent、ノード側にはrancher/agentのコンテナを起動するだけで、クラスタ構成やオーバーレイネットワークの接続、管理GUIの起動など、全ての設定が完了する。
ブラウザでRancherサーバの8080ポートにアクセスするとダッシュボードが表示される。初期設定はGUIから行える。
「CATALOG」を参照すると、標準インストールで、各アプリケーションの実行環境を複数のDockerコンテナで構成し、1コマンドで実行できるPodのサンプルが多数提供されていることが確認できる。
「Hosts」を確認すると、サーバ、ノードの2台がクラスタ構成されており、実行されているコンテナの状態を確認できる。下図は前述のPodの中からWordPressを選択し、実行した状態となる。WordPressのアプリケーションサーバとDBサーバが別の物理サーバに分散配置され、1つのサービスとして起動していることが確認できる。
Docker HubのコンテナもGUIから起動することが可能である。
優位性と劣位性
優位性
- LinuxやDocker専用OSやパブリッククラウドなど、利用できる範囲が広い
- Dockerコンテナを起動するだけで基本的なインストールが行える
- 初期設定や運用がほぼGUIのみで行える
- サンプルのPodが充実しており、いろいろな機能を簡単に評価できる
- マルチユーザーに対応しており、設定などの分離が行える
劣位性
- 日本語の文献や情報が少なく、公式ガイドの情報が中心となる
- ログなどがあまり出力されないため、問題発生時に追跡が少し難しい
利用シチュエーション
- 複数プロジェクト、複数名などで共用する開発、テスト環境
- 定型のサービスを複数利用者に提供する環境
マルチユーザーに対応しており、ユーザーごとに設定を分離できるメリットは大きい。ただし、システムリソースやネットワーク的に完全に分離できているか否かは確認できなかった。本当にセキュリティの担保が必要なマルチテナントに対して提供するには十分な確認が必要だろう。
複数のコンテナを組み合わせて1つのサービスとして提供できるPodの機能は非常に利便性が高く、デプロイもボタン1つであるため、運用負荷も軽減されるだろう。最小1台から利用開始でき、ノードの追加も容易であるため、スモールスタートから拡張していくのに適している。
2016年よりRancher社も日本国内でのサポートサービスの展開を開始しており、今後は国内でも利用が進むだろう。
Copyright © ITmedia, Inc. All Rights Reserved.