education and research on open cloud 2013.3.12 国立情報学研究所 (NII) 横山重俊 1
本日の内容 教育 研究 手段 1. クラウド上での教育 3. クラウド上での研究 対象 2. クラウドに関する教育 4. クラウドに関する研究 2
はじめに 3
自己紹介 国立情報学研究所 (NII) において, 教育クラウド と 研究クラウド の運用を担当 本日の内容 education and research on open cloud に関する NII の事例を紹介 Open Cloud Technology Academic Ready! 4
国立情報学研究所について 大学共同利用機関法人情報 システム研究機構国立情報学研究所 (National Institute of Informatics) http://www.nii.ac.jp/ 情報学研究の他, 大学共同利用サービスの提供を行っています コンテンツ クラウド 認証連携 ネットワーク 5
教育クラウド 研究クラウドの開発と運用 教育クラウド [Eucalyptus 改 ] 研究クラウド [OpenStack 改 ] 6
運用中の寒い体験 教育クラウド上で負荷試験を実施中の事故でした... Grinder Grinder Grinder HAProxy Exam Beyohn Exam Exam Beyohn Exam Beyohn Exam Exam Beyohn Beyohn Beyohn DB Terra Grinder Exam Beyohn それは, あるプロジェクトの中間発表会直前の深夜 2 時のことでした. プロジェクトメンバは学校あるいは家から教育クラウドを使って共同で負荷実験を行っていました. ところが, 実験の最中 ゆっくりとまるで氷が融けるようにすべての仮想マシンが消滅していったのです. 時間にして約 10 分 それは, それは寒い体験でした. 評価データなしで中間報告会に臨まなければならなかったという, 悲しい出来事でした. 7
NASA Nebula Cloud & edubase Cloud 2010 年 2 月 NASA Ames 訪問 immediate The 1 st collaboration candidate The easier, the better. Work together in Eucalyptus open source community. (Eucalyptus in launchpad) Joshua s Branch merge together yoko s Branch Main Branch merge with Steve in Eucalyptus Systems Inc. NASA Neba Naranu (Japanese Old Saying) = No Success without trial 8
NASA Ames NII 共同実験 Collaboration between NASA Ames and NII (2010.3-2010.6) @ Mountain view NII Applications on Nebula Cloud Nebula running Hadoop system developed at NII Open interface Program cooperation Program portability Open data Interoperable Data Open source Quality with community @ Chiba NASA Applications on edubase Cloud WorldWide Telescope NII Application on Nebula: Hadoop System developed at NII NASA Application on edubase Cloud: WorldWide Telescope 9
OpenStack コミュニティでの活動 Nova Nebula 2010.7 Cloud Storage HaaS nova-deployment-tool Deployment Tool http://wiki.openstack.org/novainstall/novadeploymenttool https://github.com/nii-cloud/dodai CaaS Cluster as a service http://wiki.openstack.org/caas dodai ( ベアメタル nova) colony ( 広域分散 swift) 10
Design Summit@San Antonio NII Session 11
OpenStack 参加 http://www.openstack.org/foundation/companies/ 12
日本 OpenStack ユーザ会参加 http://openstack.jp/pressrelease/pressrelease-2010_10_22.html 13
1. クラウド上での教育 - 教育クラウド edubase Cloud - 14
edubase Cloud とは 研究 教育のための実験 演習環境の提供 1 専有性 他への影響を恐れずのびのび実験 2 改変性 基盤からアプリまですべてを改良可能 外部クラウド 3 連携性 他のクラウドとの連携 http://grace-center.jp/prj_educloud.html 4 保存性 学術コミュニティ内で環境を検索 利活用 15
活用事例 (PBL) 東京大学 実践工房 Beyohn プロジェクト 既存の Java アプリをクラウドへ移行するための基盤 Terracotta に自動スケーリング機能を組み合わせて開発 プロジェクトの進行に必要なリポジトリおよび開発環境などの情報環境を edubase Cloud 上に実現 大規模な負荷試験を実施 Users Load balancer Automatic scale out Web service Web service Web Service cache Beyo hn cache Beyo hn cache Beyo hn Auto scaling Cache server Data DB 16
活用事例 ( 講義 ) 講義で利用する実行環境準備ツール 実装モデル検証の講義で用いる Java プログラム向け検証ツール Java Pathfinder が入ったデスクトップを事前準備 受講生ごとに専用ボリュームを接続したインスタンスを提供 17
edubase Cloud の構成 ミニクラウドとアーカイブ Cloud#15 Cluster Controller Cloud#14 Cluster Controller Cloud#02 Cluster Controller Cloud#01 Cluster Controller アーカイブ申請により管理者が保存 アーカイブ S3 EBS Projects B S3 EBS S3 EBS S3 EBS 必要に応じ利用者がリストア Cluster Controller Shared Cloud for Project B and Project C Cluster Controller Project C Cluster Controller Dedicated Cloud for Project A Cluster Controller Project A LDAP によるユーザ管理 18
教育クラウドのアーキテクチャ 仮想マシン 教育クラウド (edubase Cloud) ミニクラウド #1-#15 物理マシン /NW ミニクラウド共有アーカイブ 2010 年 5 月より運用 仮想マシン 研究クラウド (gunnii + tinii) OpenStack #16 Hadoop dodai 物理マシン /NW クラスタ共有オブジェクトストア tinii 2012 年 7 月より運用 インタークラウド基盤 研究クラスタ 研究クラスタ dodai @west 研究クラスタ 研究クラスタ dodai @east 2012 年 10 月より実験 colony 19
教育クラウドデモンストレーション 20
2. クラウドに関する教育 ~ トップエスイークラウドコース ~ 21
トップエスイークラウドコース トップエスイー http://www.topse.jp/ IT 技術者対象の教育プログラム 産学連合による実践教育 ソフトウェア開発現場に最新の研究成果を導入 要求工学 アーキテクチャ モデル検査 形式仕様記述 クラウド 超上流要求分析ゴール指向要求分析 要求獲得 アスペクト指向開発ソフトウェアパターンコンポーネントベース開発 並行システムの検証と実装性能モデル検証 設計モデル検証 ( 応用編 ) 形式仕様記述 ( セキュリティ編 ) 形式仕様記述 (Bメソッド編) 形式仕様記述 ( 基礎 VDM 編 ) 分散処理アプリ演習クラウド基盤構築演習クラウド実践演習 共通科目 ソフトウェアメトリクス 基礎理論 テスティング ( 基礎 ) ソフトウェア工学入門 テスティング ( 応用 ) セキュリティ概論 22
クラウド基盤構築演習 Eucalyptus プライベートクラウド構築体験 23
クラウド実践演習 クラウドアプリケーション運用業務体験 クラウドに対応できる監視システム 3 障害検知 仕組みを構築する 2 監視する 4 連携する Web システム (edubase Cloud を活用 ) Web Server 障害 (Apache2) Application Server (Tomcat) 受講生 1 発生 Application 5 復旧する Load Balancer (nginx) Web Server (Apache2) Application Server (Tomcat) Application Database Server (MySQL) 自動でサーバーの障害を復旧するプログラム Web Server (Apache2) Application Server (Tomcat) Application 演習課題 プログラムを作成する 24
実践的情報教育での利用 25
3. クラウド上の研究 ~ 研究クラウド gunnii ~ 26
研究クラウド構築の背景 幹部側の要求 : 投資対効果向上 ( より大きな研究成果 ) 研究者側の要求 : 研究効率アップ ( より早く より簡単 ) リソース共有化による利用率向上 運用集中化による効率化 大規模研究環境構築の迅速化 運用作業の軽減 クラウドの導入により一挙解決!! いいえ, 次の課題があります 物理マシン相当の安定的性能確保 既存計算機リソースと接続 27
研究環境の現状 1 物理マシンクラスタ提供 研究環境 -C 研究環境 -A 研究環境 -B 物理スイッチ 物理マシン 物理ストレージ 物理スイッチ 物理マシン 物理ストレージ 物理スイッチ 物理マシン 物理ストレージ 2 仮想マシンクラスタ提供 研究環境 -A 研究環境 -B 研究環境 -C (VM : 仮想マシン ) VM VM VM VM VM VM VM VM VM IaaS 物理スイッチ 物理マシン 物理ストレージ 28
研究環境構築時の課題 1. リソース共有化による利用率向上 2. 運用集中化による工数削減 物理スイッチ 物理マシン物理ストレージ 物理スイッチ物理マシン物理ストレージ 3. 計算機リソースへの投資削減物理スイッチ物理マシン物理ストレージ 4. 大規模実験環境構築 / 運用の作業軽減 5. 物理マシン相当の安定的性能確保 VM VM VM VM VM VM VM 6. 既存計算機リソースとの融合 VM VM IaaS 物理スイッチ 物理マシン 物理ストレージ 29
Cluster as a Service(CaaS) の導入 1. ソフトウェア構成設定機能 物理マシンクラスタ -A 物理マシンクラスタ -B 物理マシンクラスタ -C 2. ソフトウェアインストール機能 貸出 Cluster as a Service (CaaS) 返却 3. クラスタ構築機能 4. リソースプール管理 物理サーバプール 30
CaaS の原理 Deploy インタフェースを使ったクラウド基盤構築 IaaS の Compute インタフェースを使ったクラスタ構築 PaaS VM Cluster Applications VM Cluster Cluster as a Service の Deploy インタフェースを使ったクラウド基盤構築 Cluster as a Service の Compute インタフェースを使ったクラスタ構築 既に標準化されたインタフェース (IPMI, PXE boot など ) を活用 IaaS IaaS PaaS Bare-metal Cluster Bare-metal Cluster CaaS Hardware/Network Bare-metal Cluster 31
Cluster as a Service CaaS の実装例 - dodai Elastic Private Cloud on demand on demand on demand Based on Deployment Tool generalized dodai-deploy Compute bare metal supported dodai-compute https://github.com/nii-cloud/dodai 32
研究クラウド - gunnii+tinii - 物理マシンも扱え, 既存資産を活用できるクラウド - 既存クラスタ研究クラウド 既存クラスタの VLAN_ID とクラウド内クラスタ ID をマッピング グニー (gunniii) っと伸縮 クラスタ共有 Object Store Service tinii 貸出 既存クラスタ -A クラウド内クラスタ -A 返却 既存クラスタ -B クラウド内クラスタ -B 物理マシンプール あたかもプロジェクトセグメントにクラスタが追加されたごとく あたかも仮想マシンのごとく GUI/CLI でクラスタ構築 33
研究クラウドの特徴 (1) 仮想マシン単位ではなく, 物理マシンを占有 (2) 研究グループ VLAN に直接接続 (3) クラスタ共有 Object Store Service 研究グループ A VLAN Object Store Service tinii (6) 学認連携 研究グループ B VLAN (5) 教育クラウドの拡張が可能 edubase Cloud #16., #17, Machine(Physical/Virtual) Software(OS, Apps, ) 研究クラウド共用 VLAN (4)Cluster Installer(dodai) によりグループ内 IaaSなどの計算環境が構築が容易 34
研究クラウドのアーキテクチャ 仮想マシン 教育クラウド (edubase Cloud) ミニクラウド #1-#15 物理マシン /NW ミニクラウド共有アーカイブ 2010 年 5 月より運用 仮想マシン 研究クラウド (gunnii + tinii) OpenStack #16 Hadoop dodai 物理マシン /NW クラスタ共有オブジェクトストア tinii 2012 年 7 月より運用 インタークラウド基盤 研究クラスタ 研究クラスタ dodai @west 研究クラスタ 研究クラスタ dodai @east 2012 年 10 月より実験 colony 35
研究クラウドデモンストレーション Install as a Serviceを使ったOpenStackの研究クラウドへのデプロイメント 対応済 36 36
4. クラウドに関する研究 ~ インタークラウド基盤 ~ 37
アカデミックコミュニティクラウド 地域クラウド 海外アカデミッククラウド 関西クラウド 北陸クラウド 北海道クラウド 東北クラウド インタークラウド基盤 パブリッククラウド 九州クラウド 東海クラウド四国クラウド 関東クラウド 地域クラウドが普及 インタークラウド基盤により連携 38
アカデミックコミュニティクラウドの現状 海外アカデミッククラウド 九州大学クラウド 大阪大学クラウド 北海道大学クラウド パブリッククラウド NII クラウド 大学毎のクラウド構築が進行 パブリッククラウドの SINET 接続開始 クラウド連携実験開始 39
オンデマンドクラウド構築でクラウド連携 既存アプローチ クラウド連携は, クラウド運用者が運用している異種のクラウドをネットワーク機能とそれに付随する Glue 機能によって結びつけることにより作りだしたリソースを使って実現する. サービス実行用クラスタ - α クラウド -A ハードウェア -1 サービス実行用クラスタ -β Network with Glue software クラウド -B ハードウェア -2 サービス実行用クラスタ -γ クラウド -A 運用者 クラウド -B 運用者 提案アプローチ サービス実行用クラスタ - α サービス実行用クラスタ -β サービス実行用クラスタ - γ クラウド運用者とクラウド基盤を支えるハードウェアの運用者を分離する. クラウド -A クラウド -B クラウド -C クラウド連携は, 複数のハードウェア運用者から確保したリソースを SINET で繋ぎその上にクラウドを作りだすことで実現する. クラウド -A 運用者 ハードウェア -1 ハードウェア -1 運用者 クラウド -B 運用者 SINET クラウド -C 運用者 ハードウェア -2 ハードウェア -2 運用者 分離 40
インタークラウド基盤 - アカデミックコミュニティクラウドの Hub - 大学クラウド 大学側クラスタの VLAN_ID 等とクラウド内クラスタ ID をマッピング インタークラウド基盤 (compute) インタークラウド基盤内クラスタ -A インタークラウド基盤 (storage) 大学内クラスタ -A 大学内クラスタ -B 連携 インタークラウド基盤内クラスタ-B 連携 インタークラウド基盤内クラスタ-C 物理マシンプール インタークラウド Object Store Service colony 大学内クラスタ -C 大学内クラスタ -D あたかも大学側クラスタにクラスタが追加されたごとく 連携 インタークラウド基盤内クラスタ -D 物理マシンプール あたかも大学間が同一データ内で直結されるがごとく あたかもローカルと同一オブジェクトストアのごとく 41
広域分散オブジェクトストレージ Swift 広域分散オブジェクトストレージと地域オブジェクトストレージのシームレスな連携 Swift for inter-cloud Storage-I の地域分散による障害対応, アクセス性能向上 Swift Swift for inter-cloud Swift Swift for inter-cloud Storage-A Storage-B Storage-C Storage-I 地域オブジェクトストレージ 広域分散オブジェクトストレージ 42
全体アーキテクチャ VMI: Virtual Machine Image VM: Virtual Machines VMI コンテンツ colony VMI 地域分散クラウド基盤上で起動するマシンイメージ等を保存するサービス 広域分散オブジェクトストレージ Virtual Machines VM VM IaaS Cluster Launch machine images VM VM VM VM VM VM 必要なクラウド基盤を IaaS, 必要 IaaS Cluster な場所に, 必要な構成で Cluster, 構築するサービス dodai IaaS Cluster Cluster as a Service Physical Machines SINET 43
インタークラウド基盤のアーキテクチャ 仮想マシン 教育クラウド (edubase Cloud) ミニクラウド #1-#15 物理マシン /NW ミニクラウド共有アーカイブ 2010 年 5 月より運用 仮想マシン 研究クラウド (gunnii + tinii) OpenStack Hadoop #16 dodai 物理マシン /NW クラスタ共有オブジェクトストア tinii 2012 年 7 月より運用 インタークラウド基盤 研究クラスタ 研究クラスタ dodai @west 研究クラスタ 研究クラスタ dodai @east 2012 年 10 月より実験 colony 44
4 インタークラウド基盤デモンストレーション - クラウドマイグレーション - OpenStack@ 研究クラウド ( 先 ) OpenStack@ 北大 ( 元 ) L2VPN 接続 DBs Proposals Objects colony volumes snapshots
おわりに 46
OpenStack への期待 47
Open Cloud Eucalyptus and CloudStack are products, but OpenStack is not. Open = Open Source, Open Design, Open Development, Open Community * Chris Kemp keynote@openstack Folsom Summit *Chris Kemp keynote@openstack Grizzly Summit 48
OpenStack Everywhere VMI: Virtual Machine Image VM: Virtual Machines 広域オブジェクトストレージ colony VMI VMI Launch machine images Virtual Machines VM VM VM VM VM VM VM VM IaaS IaaS IaaS IaaS Cluster Cluster Cluster Cluster Cluster (Cluster as a Service - dodai) Physical Machines Network 49
Cloud OS Shigetoshi.Yokoyama @jxta 12 Mar #Dodai and #Colony are 2 the cloud what #fork and #exec are 2 the personal computer, but I m nobody! github.com/nii-cloud 50
まとめ Almost ready is ready in academic Open Cloud has been almost ready Open is important in academic Use academic community power more Academic community uses Open Cloud more Open new frontier together with Open Cloud Does OpenStack need a Linus Torvalds?? Bill Joy? 51
蛇足 :Data Center Kernel (DCK) dck_shell クラウド管理ツール shell VM インスタンス アプリケーションコード VMインスタンス fork/ fork&exec アプリケーションコード libdck application libdck libdck dck_fork /exec/malloc/ library dck_fork /exec/malloc/ Data Center Kernel クラウド基盤 kernel hardware 52
リンク情報 教育クラウド edubase Cloud Open Cloud Architecture for Academia Forum (OpenCarf) OpenStack コミュニティ活動 http://edubase.jp/cloud/ http://www.opencarf.org/ dodai https://github.com/nii-cloud/dodai colony https://github.com/nii-cloud/colony 53
詳細は, アカデミッククラウド調査報告書 2012 発行 : 株式会社インプレス R&D 発売 : 株式会社インプレスコミュニケーションズ http://r.impressrd.jp/iil/academic_cloud2012 Thank you 54