日経クラウドファースト編集長 中山秀夫
日経クラウドファースト編集長 中山秀夫

 高可用性システムでは、稼働系サーバーに障害が起こったら待機系に素早く切り換える「フェイルオーバー」の仕組みを整えるのが一般的だ。こうした冗長化が、コンテナ技術で不要になる可能性が出てきた。

 理由は単純だ。コンテナは障害が起こると素早く再起動する。この時間がフェイルオーバーにかかる時間と同程度かそれ以下になれば、コンテナを使った本番系だけで高可用性を実現でき、待機系は不要になるというわけだ。

ポータビリティーとアジリティーに続く新たなメリット

 コンテナはこれまで、オンプレミス(自社所有)かクラウドかを問わず動作する「ポータビリティー」に加え、素早く起動する「アジリティー」という利点ばかりに注目が集まっていた。しかし、ゼンアーキテクツの岡大勝代表取締役CEO アーキテクトによると、ここにきて「レジリエンス(回復性)」がコンテナの利点として叫ばれるようになってきたという。

 コンテナのレジリエンスとは簡単にいえば、前述のように素早く再起動することである。それによって冗長化が不要になれば、待機系のないシンプルなアーキテクチャーにできる。待機系がなければ、システム運用の負担が大幅に減る。こうしたロジックで、システムの構築・運用の両面で革新をもたらす可能性がある。

 ただし、コンテナによって冗長化が不要な高可用性システムを実現するうえで課題もある。ソフトウエアの軽量化である。

 アジリティーを高めるため、既にOSやミドルウエアの軽量化が進んできている。そこでの目的はマイクロサービスアークテクチャーに適した基盤を作るため。すなわち、アプリケーションを小さな機能の単位で細切れにしておき(マイクロサービス化)、機能が必要になった時点でコンテナとして起動し動作させるためだ。コンテナの起動時にはOSやミドルウエアを読み込むので、それらが軽量なほど素早くなる。