BT

New Relicが自社Docker展開ツールのCenturionをオープンソースに

| 作者: Carlos Sanchez フォローする 0 人のフォロワー , 翻訳者 吉田 英人 フォローする 0 人のフォロワー 投稿日 2014年6月29日. 推定読書時間: 2 分 |

原文(投稿日:2014/06/17)へのリンク

New Relicは,社内で開発インフラストラクチャ運用に使用しているDocker用展開ツールのCenturionを,オープンソースとして公開した。Centurionは,Dockerレジストリから取得したコンテナに,適切な環境変数とホストボリュームマッピング,ポートマッピングなどを設定して,ホストグループ上で実行するツールだ。特別な設定を必要とせず,ローリングデプロイメントをサポートする。

同社のサイトエンジニアリングマネージャであるKarl Matthias氏が,CenturionのMITライセンスによる提供を発表したのはDockerConの期間中だった。このプロジェクトはRuby gemとして提供される。設定ファイルはRakeタスク文法で記述された内蔵DSLを読み込む形式だが,近日中にetcdからの設定読み込みがサポートされる予定だ。DSLにはデプロイするイメージの定義方法,デプロイ対象のDockerサーバ,環境変数,コンテナ毎のボリュームとポートなどが記述されている。ステージングやプロダクションといった複数の環境定義もサポートする。

Centurionには,分散コンテナで動作するタスクもいくつか含まれている。

  • Dockerサーバ群にローリングデプロイを行うrolling_deploy: 各コンテナをひとつずつ停止および起動することで,ロードバランサから見たアプリケーションの可用性継続を保証する。デプロイ実行時には各コンテナに対するヘルスチェックを行い,アプリケーションの正常起動を確認する。既定ではアプリケーションのルートパスにGET要求を発行して,200ステータス範囲内にエンドポイントが有効な応答が発行されることを期待する。

  • Dockerサーバ群へのデプロイを行うdeploy: ハードストップ実行後,指定されたすべてのホストでコンテナを起動する。ひとつのエンドポイントの常時稼働が必要なアプリケーションには推奨されない。

  • ホストにbashコンソールを展開するdeploy_console: コンテナに渡された既存の環境でコマンドラインシェルを起動する。ホストリストにある先頭のホストを使用して,DockerfileのCMDを/bin/bashに置き換える仕組みである。

  • 特定のプロジェクト用サーバで実行されているタグをすべて一覧表示するlist:running_container_tags: 現在のすべてのタグと,それが稼働しているマシンの一覧が返される。全ホスト上のタグのユニークリストも取得できるので,デプロイ中に何らかの問題が発生した場合,デプロイ状況を確認するためにも有効だ。

  • 指定したプロジェクトを実行中の全コンテナをリストするlist:running_containers: 各Dockerサーバ上にある,プロジェクトのすべてのコンテナの一覧を設定情報から返す。

  • レジストリイメージをリストするlist: レジストリ上にある,指定したプロジェクトのイメージすべての一覧を返す。

同プロジェクトでは設定や検出手段としてのetcd統合,証明書認証,サーバプールへの動的ホストアロケーションなど,さらなる機能の追加を検討中だ。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT