日本企業がシステム基盤に「コンテナ」技術を活用するケースが増えている。アプリケーションの開発とデプロイのスピードを上げたいというニーズが高まってきたからだ。一方で、「コンテナを導入して本当にスピードアップできるのか」「コンテナ運用は難しくないのか」など課題を感じ、コンテナ導入に二の足を踏んでいる企業は少なくない。

 ぐるなびの活用事例で課題を検証していこう。

仮想マシンからコンテナに移行

 現在、ぐるなびのサイトで提供するコンテンツのいくつかはDockerコンテナ上で稼働している。従来は仮想マシンで運用していたが、2017年にコンテナに移行した。コンテナ管理ツールには当初、米Rancher Labsが開発した「Rancher」を採用。その後、米レッドハットの「OpenShift」、オープンソースソフトウエア(OSS)の「Kubernetes(クーバネティス)」と乗り継いできた。

Kubernetesを活用した、ぐるなびの開発・運用環境
(出所:ぐるなび)
[画像のクリックで拡大表示]

 「サーバーサイドとフロントエンドのアプリを切り離し、個別に開発できるようにして開発スピードを上げたかった」。ぐるなび 開発部 Engineeringセクションの岩本俊明 副セクション長はコンテナ導入のきっかけをこう振り返る。従来、仮想マシン上にPHPで開発したアプリはサーバーサイドとフロントエンドが一体になっていた。両者を分離し、フロントエンド部分をコンテナ化してアプリを改変しやすくするのが狙いだった。

 仮想マシンによる運用ではアプリの本番移行は1カ月に1回の割合だったが、コンテナに変えて更新頻度が高められた。「機能のリリース直後は1日に1回、落ち着いてきたら1週間に1回程度の頻度でアプリを更新している」(開発部 開発第10グループの楠本忠嗣氏)。

この先は日経クロステック Active会員の登録が必要です

日経クロステック Activeは、IT/製造/建設各分野にかかわる企業向け製品・サービスについて、選択や導入を支援する情報サイトです。製品・サービス情報、導入事例などのコンテンツを多数掲載しています。初めてご覧になる際には、会員登録(無料)をお願いいたします。