IBM クラウド事例から考える OSS による企業向けクラウドの可能性 日本アイ ビー エム株式会社 Linux/OSS エバンジェリスト中井悦司 Feb. 27, 2010
目次 クラウドとは? IBM クラウド事例に見るクラウド構成技術 クラウドを作る / 使う技術としての OSS 参考資料 2
クラウドとは? 3
仮想化された IT リソースのライフサイクル管理を自動化するのが IBM のクラウド技術です システムを 作る から 使う の発想へ転換 IBM クラウド コンピューティング + + 仮想化標準化 物理リソースを仮想化することで 管理を下位レイヤー内に分離します サーバー構築等のサービスをメニュー化することでユーザーの利便性 IT 部門の管理性を向上させます 自動化 = サービス申請から提供までを自動化してスピードアップし 同時に省力化を図ります 利便性向上コスト削減 4
IT リソースの 自動販売機 を実現する IBM のクラウド技術 IBM 社内のソフトウェア開発 検証プロジェクトで活用中のプライベート クラウド環境 ~ RC2 / Research Compute Cloud ~ Web ポータルでリクエストすると 承認プロセスとプロビジョニングを自動で実行 マルチプラットホームの仮想サーバー イメージを即座に提供 開発に必要なミドルウェアをセットで提供 飲み終わった缶はきちんとリサイクル! 5
自動販売機の 利用者 と 販売商品 でクラウドを分類 企業内のユーザーのみが利用 Private クラウド 複数企業のユーザーが共同利用 Public クラウド アプリケーション環境を提供 = SaaS ( エンドユーザーがすぐに使えるアプリケーション サービス ) SalesForce.com IBM LotusLive (*2) IBM RC2 IBM CloudBurst (*1) OS + Middleware 環境を提供 = PaaS ( プログラマがアプリケーションを開発できる環境 ) OS 環境を提供 = IaaS ( 管理者がシステムを構築 運用できる環境 ) Google App Engine Amazon EC2 IBM CoD Service (*3) (*1) http://www-06.ibm.com/software/jp/tivoli/products/cloudburst/ (*2) http://www.youtube.com/watch?v=no5r74cnegg (*3) http://www-06.ibm.com/itsolutions/jp/deepcomputing/dccod/ 6
IBM クラウド事例に見るクラウド構成技術 7
九州大学様 ~ 学内クラウド構築事例 次世代の分散コンピューティング環境の教育および研究や検証を行うことができるクラウド コンピューティング環境を 大学院システム情報科学研究院に構築 Apahce Hadoop を中心とした分散コンピューティングの研究環境を提供する Private PaaS を学内に構築 教育研究機関として 標準技術としての OSS を活用したクラウドシステムの構築が目標 Apache Apache Hadoop Hadoop 仮想仮想仮想仮想マシンマシンマシンマシンクラウド コンピューティングマネジメント サービス 教育向けのクラウド コンピューティング環境を構築 http://www-06.ibm.com/jp/press/2008/12/0201.html クラウド コンピューティングなどの最新技術を スマート なキャンパス 社会づくりに活用 http://www-06.ibm.com/jp/provision/no64/customer_interview1.html IBM BladeCenter HS21 / HS12 8
本事例でのクラウドを構成する技術要素 サーバー ハードウェア IBM BladeCenter (x86_64 サーバー ) を採用 サーバー仮想化技術 OSS の仮想化技術を採用 オープンソース アプリケーション実行環境 Linux + Apache Hadoop による分散コンピューティング環境を提供 オープンソース クラウド管理システム ( オペレーションサポートシステム ) 商用製品 + 独自開発 IBM RC2 の技術を利用して 商用 SW 製品 (IBM Tivoli Provisioning Manager) で構築 9
クラウド作る / 使う技術としての OSS 10
Linux は 企業向けクラウドサービスの標準技術 企業向けクラウド戦略を成功させるための 5 つの鍵 Five Keys to Sucsess for Enterprise Cloud Strategy Five Keys 柔軟なサービス適切なサービスレベル可搬性のある環境セキュリティとコンプライアンスパートナーエコシステム 内容 お客様の必要に応じて自由にリソースの追加 変更ができる環境を提供 お客様が必要とするサービスレベルとそれに見合った価格のサービスを提供 お客様のビジネス要件に応じて 様々なクラウドサービスの選択 移行が可能な環境を実現 社内データセンターと同等の安全で管理された環境を実現 複数の企業が連携してクラウドサービスを提供する環境を確立 Linux の優位性 Linux は ライセンスの制約に縛られずにリソースの追加が可能 Linux ベースの製品ソリューションによるサービス管理機能の実装が可能 Linux に関連する様々なオープンスタンダード技術が活用可能 Linux は 企業システムに求められるセキュリティ品質を満たす OS Linux は クラウドサービス提供企業の共通基盤技術としてのデファクト スタンダード Linux は 5 つの鍵の全てに該当する OS Linux and Commercial Software: Combining to Support the Cloud Environment http://www.dbta.com/downloads/hurwitz-ibm_linux_cloud.pdf 11
Linux 標準仮想化技術となった KVM KVM (Kernel-based Virtual Machine) とは? Qumranet( 現在は Red Hat が買収 ) の Avi Kivity が 2006 年 10 月に開発をスタート 2ヶ月後に Linux カーネルのソースコード取り込まれ Linux 標準の仮想化機能となる カーネル開発コミュニティのメンバーとして IBM のエンジニアも KVM の開発に貢献 KVM の特徴 Linux カーネルに仮想化機能を統合 Linux カーネルの優れたプロセス管理 I/O 管理などの機能を有効活用 Linux のインターフェースを利用した仮想化管理が可能 さまざまな管理ツールが容易に作成可能 Linux と KVM は一緒に進化を続ける CPU の仮想化支援機能を利用した完全仮想化を提供 既存の OS を無修正でゲスト OS として実行可能 コンパクトかつ自然な実装で 効率のよい仮想化機能を実現 Linux カーネルとのスムーズな統合を実現 12
KVM の開発に関わる主な企業 # cd linux/kernel/git/stable/linux-2.6-stable # git log -p -M virt/kvm arch/x86/kvm arch/s390/kvm arch/powerpc/kvm arch/ia64/kvm drivers/s390/kvm gitdm -d -u -s -a Linux カーネルのソースコードに含まれる KVM 関連部分のプログラマー名を抽出して 所属企業別に集計 企業名 変更数 全体割合 企業名 変更行数 全体割合 Red Hat 352 31.8% Qumranet 18948 29.5% Intel 155 14.0% Intel 18041 28.1% IBM 149 13.5% IBM 11528 18.0% Qumranet 143 12.9% Red Hat 9384 14.6% AMD 97 8.8% AMD 1815 2.8% Red Hat / Qumranet / IBM の 3 社で KVM のソースコードの 50% 以上を開発 (2009/09/17 の集計結果 ) 13
Hadoop とは Hadoop は Google が提唱した分散データ処理を実装するフレームワークを OSS として提供します HDFS (Hadoop Distributed File System) 複数のノードのローカルファイルシステムを論理的に結合して 1 つの共有ファイルシステムを作成します Hadoop MapReduce MapReduce と呼ばれる分散コンピューティングモデルに基づくプログラムを Java で作成するためのフレームワークを提供します MapReduce の仕組みは実は単純なものですが Google が実際に大規模なデータ解析を実現し その有用性を証明したことが データ解析の研究における画期的な出来事だと言えます Hadoop の導入は以外と簡単です まずは 一度 試してください ネットワークサービス企業以外の一般企業での活用の期待が高まっています クレジットカードの使用履歴の分析 ( 金融機関 ) や証券取引履歴の分析 ( 証券会社 ) での Hadoop の利用が既に始まっています 14
クラウドを使う技術としての Hadoop 企業システムでの Hadoop 活用に向けた IBM の取り組み クラウド環境で Hadoop を活用するための Know-How の提供 Hadoop を含む Mass Scale Computing 技術のコミュティ貢献 Hadoop を基盤としたより高度な情報分析アプリケーションの開発 クラウドインフラを利用することで 大規模なサーバー環境の維持管理が難しい一般企業でも Hadoop の活用が広がると期待されます ちなみに Google では (*) 次のようなデータ処理を MapReduce モデルで実装しています Web サイト内の文字列検索 / 大規模なソート処理 URL 毎のアクセスカウント (Web サーバーのアクセスログの解析 ) 特定の URL にリンクを貼っている Web サイトのリストの作成 Web サイト毎の単語の出現回数のリストの作成 特定の単語が含まれる Web ページのリストの作成 平均的に次のような規模の MapReduce 処理を実装しています 使用ノード数 2,000 / map 処理の分割数 200,000 / reduce 処理の分割数 5,000 (*) MapReduce: Simplified Data Processing on Large Clusters - http://labs.google.com/papers/mapreduce.html 15
OSS によるクラウド管理システムの実現に向けて 次のようなクラウド管理機能の提供が OSS クラウドのこれからの課題です オペレーションサポートシステム メータリング モニタリング プロビジョニング セキュリティなど ビジネスサポートシステム 課金 ID 管理 レポーティング SLA 管理など 例えば 企業システムでの利用においては クラウドサービス ポータル の提供が必要となります ( 参考 ) IBM Tivoli Service Automation Manager のクラウドサービス ポータル画面 16
まとめ サーバー ハードウェア IBM BladeCenter (x86_64 サーバー ) を採用 サーバー仮想化技術 OSS の仮想化技術を採用 本格化を迎える コミュティモデルによる x86 仮想化技術の発展 オープンソース アプリケーション実行環境 Linux + Apache Hadoop による分散コンピューティング環境を提供 オープンソース Hadoop のような新しい大規模分散コンピューティング (Mass Scale Computing) を一般企業が利用する上でもクラウドの価値が発揮される クラウド管理システム ( オペレーションサポートシステム ) 商用製品 + 独自開発 IBM RC2 の技術を利用して 商用 SW 製品 (IBM Tivoli Provisioning Manager) で構築 本格的なクラウド管理システムの実装には 商用製品の活用が必要 17
参考資料 18
今日から始める KVM ~ IBM 技術情報サイト http://ibm.com/jp/linux/ ~ Linux at IBM ~ RHEL5.4 で KVM を利用する際は 必読のガイドです 19
ありがとうございました 20