Cuturnの適当日記

徒然なるままに適当に駄文を吐き出しております

Dockerに触ってみて

Dockerにちょろちょろっと業務の合間や家で触ってみた感想を軽くメモしておきます。

利点

  • 軽く起動する

簡単にイメージが起動します。そのため、使い捨てが非常に容易です。止めるのも早い。

  • 依存関係からの開放

OSに色々とライブラリなど入れて動かしてみたらアレが動かなくなった…みたいな依存関係から解放されてすっきりです。

欠点

  • 冗長性を考える

冗長化をしようと思ったとき、例えばheartbeatなどのソフトウェアでDockerのイメージとDockerのイメージ間で通信を行う必要がありますが、こういうことをやろうと思うとだいぶややこしくなります。また可用性を上げるためにふつう別のハードウェアで動かしますが、ホストをまたいでDockerイメージどうして会話するのは現在の通常のDockerの構成ではできません。

  • 中身の修正の時に悩ましい

中の設定ファイルを少し書き換えるとかそういったことをしようと思ったときに少し難しくなります。まぁSSHを動かしておくというのならそれで解決ではありますが。イメージ作り直し、とかになると少し運用が複雑になります。

  • データ永続化の扱い

いまいちデータが永続化してるのかしてないのかよくわからない感じですので、DBを載せるには向いていません。

  • ログをどう扱おう

ログの扱い方がまだわかっていません。Dockerでのイメージのログを外に吐き出させたり、或いはリモートに出力する機能を付けるべきかはなからrsyslogとかfluentdを中に含めるべきか悩ましいです。

要望

Dockerホストとしてのクラスタを構築して、その中での統一的なDockerネットワークを持ち、ホスト停止時に自動的に別のホストでDockerイメージを起動しなおすような仕組みが欲しいです。

  • 各イメージのログの扱いの改善

何かログが出ないわけじゃないんですよね。標準出力か何かかな。ログを外から監視できる仕組みが必要です。そのために各イメージにsyslog入れるのは何かをダメにする感じがあります。