コンテナの利用拡大で浮上する問題点とは

 開発・改善スピードを高め、顧客のニーズを捉えたサービスをいかに素早くリリースするか。これがビジネスの成否を分けつつある。それを支える技術として、注目が高まっているのが「コンテナ型仮想化」だ。開発チームと運用チームが連携して開発・改善に取り組むDevOpsでも広く用いられている。

 コンテナ型仮想化は、ホストOS上で隔離されたアプリケーション実行環境(コンテナ)を稼働させる技術。OSも含めて分離するサーバー型仮想化と、ここが一番の違いとなる。OSの起動・停止プロセスが必要ないため、処理のオーバーヘッドが少なく、動作も軽快。リソース効率にも優れており、1つのホストOS上でいくつものコンテナを動かせる。

 コンテナ型仮想化を実現する技術としては「Docker」が広く利用されている。最近では多くのDocker環境の管理やデプロイを効率化するコンテナオーケストレーションツール「Kubernetes」が登場し、Amazon Web Services(AWS)、Microsoft Azure、Google Cloud Platformなどがそのマネージドサービスをリリースしている。パブリッククラウドでは本格的な普及期に入ったといえるコンテナ型仮想化だが、この技術をオンプレミスの環境でも活用したいというニーズが高まっている。

 ただし、ニーズの高まりとともに、新たな課題も顕在化しつつある。その最たるものが「ストレージ」に関する問題だ。コンテナはデプロイの都度、状態が初期化されるため、データベースなど、再デプロイ後も永続的にデータを利用したい場合、ストレージへの保存が必要となる。しかしコンテナが増えれば、ストレージへI/Oが集中し、処理する負荷も増大するため、ストレージI/O性能がネックとなってパフォーマンスが劣化しかねない。

 また、パブリッククラウドでは、共有ストレージサービスによって様々なコンテナのストレージニーズに対応しており、必要になればファイルでもブロックでもオブジェクトでも適切なストレージをデプロイできる。だが、従来型のオンプレミス・ストレージは、パブリッククラウドのストレージサービスのような柔軟性と拡張性を備えていない。こうした課題を解決するためにはどうすべきか。その具体的な方法を紹介したい。

この先は日経 xTECH Active会員の登録が必要です

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