こんにちは。日本ヒューレット・パッカードのオープンソース・Linuxテクノロジーエバンジェリストの古賀政純です。前回は、ハドソンアルファ・バイオテクノロジー研究所におけるコンポーザブルインフラストラクチャーの導入に至る状況について紹介しました。今回は、同研究所のIT基盤における課題やコンテナーを利用したコンポーザブルインフラストラクチャーの仕組み、導入メリットについて解説します。
デジタルトランスフォーメーションに苦しんでいた研究所
コンポーザブルインフラストラクチャーを導入する以前、同研究所では、ブレード型のサーバーを導入していました。その理由の1つが、ラックマウント型のサーバーに比べてケーブルの結線管理が容易なことと、サーバー増設時のハードウェアメンテナスが簡素なことでした。
確かに、物理的なメンテナンスは簡素化したものの、部門ごとに異なる研究用のサーバーハードウェア、OS・アプリケーション環境の切り替えなどを手作業で行っていたため、ユーザーのさまざまな用途に応じたITサービスを迅速に提供できていませんでした。
このような諸問題に対して、ハードウェアリソースのプール化、ビッグデータ活用の促進、解析用アプリケーションの迅速な展開、サーバー集約率の向上や初期導入コストの見直し、仮想化ソフトウェアが引き起こす性能劣化問題の回避など、IT基盤の見直しが待ったなしの状況だったのです。
図1.ハドソンアルファ・バイオテクノロジー研究所のIT基盤における主な問題点
コンポーザブルインフラストラクチャー導入の目的と課題
このような状況を踏まえ、同研究所のIT統括部門は、新規導入の目的の明確化と課題の洗い出しを行いました。まずは、コンポーザブルインフラによる抜本的なITの見直しです。同研究所におけるコンポーザブルインフラの導入目的は、研究データを最大限に活用するため効率的なIT基盤を実装することです。この導入目的を定義した上で、その目的を果たすために、以下の課題が洗い出されました。
- 38カ所の施設全てにおいて、数千に上る研究用のウェブアプリケーションの迅速な配備と利用効率の劇的な向上
- コンポーザブルインフラストラクチャーとパブリッククラウドを併用したハイブリッドクラウドIT環境におけるユーザーアプリケーションの高い可搬性
- IDやアプリケーションのセキュリティ要件への準拠
- ハイパーバイザー型仮想化ソフトウェアのライセンス費用の抑制
- アプリケーションのビルド作業時の環境依存の問題の解消
Dockerとコンポーザブルインフラストラクチャーを組み合わせたソリューション
目的と課題が明確になり、それに対応するソリューションが研究所とハードウェアベンダーの両方で検討されました。先述の課題に対しては、コンテナー技術をベースにしたコンポーザブルインフラストラクチャーを導入しました。ハードウェア配備の工数削減を目的としたコンポーザブルインフラストラクチャー対応サーバーと、アプリケーションの迅速な展開と実行、セキュリティ確保のためのコンテナー管理ソフトウェア(コンテナーエンジン)の導入です。以下では、このソリューションがもたらすメリットを見ていきます。
共有リソースプールの実現
マルチテナント環境において、アプリケーションの要求に応じて共有リソースプールを割り当てます。具体的には、ユーザー部門の要求に応じて、CPU、メモリー、ディスク、NICのリソースを切り出します。各部門に別々のハードウェアを固定的に割り当てるのではなく、共有リソースをしかるべきユーザーに与え、IT基盤の利用効率を高めます。
ストレージ効率化の実現
同研究所におけるビッグデータ集約型の業務ワークロードにおいては、コンポーザブルインフラストラクチャー対応のサーバーと直接接続型のストレージ(DAS)を使用した非常にシンプルなストレージ構成となっています。ストレージには、コンテナーの元となるイメージやカスタマイズ済みのイメージの圧縮済みアーカイブファイルなどが格納されます。
ストレージはサーバーの筐体に格納されており、ストレージ結線が簡素化されています。また、各サーバーから単純に外付けのストレージ機器として認識され、ディスクの追加も容易に行えます。物理結線を管理する負担を大きく減らすメリットもあります。
さらに、ストレージに格納されるコンテナーの元となるアプリケーション入りのコンテナーイメージも、従来のハイパーバイザー型の仮想化基盤のOSイメージに比べてサイズが圧倒的に小さくて済むため、ストレージの利用効率も大幅に向上します。
迅速なアプリケーション配備、可搬性の確保、開発の高効率化
外部ストレージに依存しないステートレスなマイクロサービス(軽量なアプリ環境)を配備するため、コンテナーエンジンを採用しています。また、コンテナーエンジンのクラスター環境を構築することで、複数のサーバーで複数のコンテナーが連係して稼働できます。特に、コンテナー同士の連係動作を実現するコンテナーオーケストレーション機能によって、アプリケーション環境の障害への耐性の確保やアプリケーションの実行環境へのリソース配分の自動化を実現します。これにより、IT部門は、コンテナーのメンテナンス工数を削減できます。
図2.自動化を主体としたデジタルトランスフォーメーション
コンポーザブルインフラストラクチャーの特徴と導入メリット
同研究所の科学者らは、世界中の何千人もの研究者と共同で研究を行っています。共通基盤環境を使用しますが、研究におけるワークロードのほとんどがユーザー固有の特性を持ちます。そのため、ユーザー利用の初期段階では、他人によって利用されていない素の状態のOS環境も求められます。
コンポーザブルインフラストラクチャーでは、ハードウェアリソースプールの柔軟な切り出しとOS、アプリの自動配備を行いますが、その仕組みは、以下の3点で実現します。
- テンプレート(ひな型)を使ったハードウェアの自動設定
- コンテナーエンジン入りOSイメージの高速起動
- オープンソースソフトウェアの管理ツールとAPIを使った自動化
ひな型を使ったハードウェアの自動設定
1つ目のひな型を使ったハードウェアの自動設定は、まず、ハードウェア設定用のひな型(テンプレート)を配布する専用ハードウェアが利用されます。ひな形の配布を行う専用ハードウェアは、コンポーザブルインフラストラクチャー対応のサーバーに組み込まれています。そのひな形配布用の専用ハードウェア上では、ハードウェアにまつわる各種設定(BIOS、RAIDなどの基本的な設定)が記述されたひな型をIT管理者が作成します。
ひな型が作成できたら、それを専用ハードウェアの配布機能を使って、対象となるサーバーマシン群に一斉適用します。これにより、従来人間が行っていた日常の煩雑なハードウェアの設定作業を自動化します。
このハードウェア設定のひな型自動配布の仕組みにより、コンピューティング(高速計算と大規模メモリーの使用)、ストレージ、ネットワーク機器は、エンドユーザー(研究者やデータサイエンティストなど)の需要に応じたリソース分割を実現します。
すなわち、物理オンプレミス環境のITリソース配布サービスをクラウド基盤のように実現できるわけです。物理リソースは、論理的にプールされているため、例えば、特定のアプリケーションを提供するために、IT部門がハードウェアを物理的に移動させる、結線をやり直すといった作業は一切ありません。ハードウェア設定も自動化されているため業務ワークロードに合わせてIT基盤の新規増設や既存の構成の変更などを迅速に行えます。
図3.コンテナー基盤で必要とされるハードウェア設定の自動化
ひな型を使ったDocker入りOSイメージの高速起動
2つ目のひな型を使ったDocker入りOSイメージの高速起動は、ひな型のOSイメージを配布するための専用のハードウェアが利用されます。このOS配布用の専用ハードウェア上では、複数のサーバーマシンに素早くOSを起動できる仕組みが搭載されています。
従来のブレード型サーバーなどでは、複数のサーバーマシンにOSを自動インストールするといった方法が主流でしたが、コンポーザブルインフラストラクチャーでは、OSを複数のサーバーマシンに自動インストールするのはなく、スナップショット技術とiSCSIブートと呼ばれるストレージ技術の仕組みを駆使し、複数のサーバーでOSを高速起動できます。
従来であれば、複数のブレード型サーバーにOSをインストールし、そのあとにコンテナーエンジンのインストールを行っていたため、配備に非常に時間がかかっていましたが、コンポーザブルインフラストラクチャーでは、コンテナーエンジン入りのOSイメージを高速起動するため、サーバーを追加した後でも、コンテナーが稼働できるOS環境をユーザーに迅速に提供できます。
図4.OSの自動インストールではなく、複数サーバーでコンテナーエンジン入りOSを迅速起動
APIを使った実行環境の自動構築
3つ目のAPIを使った実行環境の自動構築では、ソフトウェアの開発者がサービスに関するひな型(サービスプロファイルと呼ばれます)を使用して、アプリケーションの実行における物理基盤のシステム要件を定義します。
これにより、開発者が作成したアプリケーションから、APIを通じて、物理サーバー上にソフトウェアの実行環境がコンテナーとして自動構築されます。バージョンやアプリケーションの種類などをサービスプロファイルの中身に定義できるため、バージョン番号やアプリケーションの種類を少し変更するだけで、すぐにそのアプリケーションの実行環境を配備できます。
今回は、同研究所における課題やコンテナーを利用したコンポーザブルインフラストラクチャーの仕組み、導入メリットについて紹介しました。次回は、導入された実際のシステムコンポーネントと、デジタルトランスフォーメーションによって得られた成果について紹介します。
- 古賀政純(こが・まさずみ)
- 日本ヒューレットパッカード オープンソース・Linuxテクノロジーエバンジェリスト
- 兵庫県伊丹市出身。1996年頃からオープンソースに携わる。2000年よりUNIXサーバのSE及びスーパーコンピュータの並列計算プログラミング講師、SIを経験。2006年、米国ヒューレットパッカードからLinux技術の伝道師として「OpenSource and Linux Ambassador Hall of Fame」を2年連続受賞。プリセールスMVPを4度受賞。現在は、日本ヒューレットパッカードにて、Linux、FreeBSD、Hadoop、Dockerなどのサーバ基盤のプリセールスSE、文書執筆を担当。Red Hat Certified Virtualization Administrator、Novell Certified Linux Professional、Red Hat Certified System Administrator in Red Hat OpenStack、Cloudera Certified Administrator for Apache Hadoopなどの技術者認定資格を保有。著書に『Docker実践ガイド』『CentOS 7実践ガイド』『Ubuntu Server実践入門』などがある。趣味はレーシングカートとビリヤード。