Page 1
クラウド(インフラ)技術講座ITE 室 ミドルウエア技術部
次世代のアプリケーション基盤技術課井澤 信悦
社外向け講習会用候補非公開の技術情報が含まれていないことをチェックしてあります
Powered by TSCTechnical Solution Center
TSC 主催TSC 主催
新しいシステム基盤 / 雲の向こうのペンギン
日野さん、編集お願いします。私としては社名や組織名のみで個人名は表示しないほうがいいと思います。
ただ TSC とミドルウエア技術部の名前の出し方などについて、河合課長とご相談ください。
Page 2
アジェンダ
16:00 – 16:20 ご挨拶と検証センターご見学( 20 分)16:20 – 16:50 クラウド技術体系と IaaS 概要( 30 分)16:50 – 17:00 休憩(10分)17:00 – 17:20 Amazon Web Service / Eucalyptus のご紹介( 20分)17:20 – 17:50 Eucalyptus デモ(3 0 分)17:50 – 18:00 Q&A / まとめ( 10 分)
藤澤さん、日野さんこんなもんでいかがでしょうか?
Page 3
「クラウド・コンピューティング」( cloud computing )
2006 年 8 月Search Engine Strategies ConferenceGoogle 社 CEO エリック・シュミット博士
利用者から見ればインターネット「雲」が OS である(オンラインソフト)企業組織としてのクラウド利用 サービス
開発技術者から見れば( Google 系)Web API やマッシュアップといった技術の活用の延長線上に「雲」がある
サーバー提供者から見れば( Amazon 系)仮想 OS ・サーバクラスタの実装とその管理インターフェイスの提供
インターネットを基本にした新しいコンピュータの利用形態アンブレラ ( マーケッティング)用語(ユーティリティ、オンデマンド、グリッ
ド、 SaaS )
料金は Pay as you go
1) 概要編1) 概要編
Page 4
サービスの利用スタイル☆ システム基盤:(インフラストラクチャ: IaaS :イァース )OS レベルでの自由なシステム構築、実環境を比較的簡単に仮想化へ移行できるサーバを借りるのではない → サーバ運用のインフラを借りる仕組みAmazon EC2 (Elastic Compute Cloud) 、 Eucalyptus (UC サンタバーバラ)
☆ 開発フレームワーク /SDK (プラットフォーム: PaaS :パース)特定の開発言語とフレームワークにロックされてしまう。負荷分散、クラスタリング、データのリプリケーションなどはおまかせGoogle App Engine for Java Windows Azure Force.com
☆ アプリケーション・プラグイン(ソフトウェア: SaaS:サース )ブラウザさえあればどこでも利用できるGoogle Apps (管理された企業向けアプリ)など
Page 5
Google データセンターは非常識なものへと進化構築にかかる費用よりも運用費(電気・冷却代)を節約
• PC は故障するもの最低でも3年間に1回クラッシュ(365*3= 1095)グーグル、自社設計のサーバ 2 U:普及版のマザーボード: UPS(12 Vバッテリー)内臓
• スケールメリット大規模データセンター(5万台以上)は小規模( 1000台未満)に比べて 7倍効率がよいコンテナーベースデータセンター :超大型トレーラーに牽引されるようなコンテナ 1つのコンテナには 1160台のサーバが搭載電力消費は 250KW
• プロジェクト経費と条件$600M(600億円)平均年収500万円*200人継続的に契約可能な大容量で安価な電気、税の優遇水冷エコノマイザー (冷房を使わない自然冷却):冷却用の大量の水源(川あるいは湖)広い土地(プライバシーとセキュリティの確保)、データセンター間の広帯域ネットワーク US:19 欧州12 ロシア1 南米1 アジア3 2008春 建設中も含む
• ダイナミックな運用(月を追いかける)データセンターごと切り替え(温度上昇対策):夜間の冷気・安価な電気代を使用Water-Based Data Center 波力・風力・潮力発電、水で冷却
Page 6
IaaS 特徴
• 仮想化を使えばクラウド?(ホスティング)マルチアドミンユーザ : ゲスト OS( VM)を自分で用意・運用シングルクラウドアドミン インフラ提供のみ
• クラウドとグリッドは同じか?(クラスタリング)グリッド:APIレベルで実装したグリッド相互の連合体少数のユーザが多くのリソースを使う。リソース待ちが多いクラウド:オンデマンド・リソース割り当て多数のユーザのリソース変化や予測できない状態に対応
• クラウドは無限にスケールするか?大規模なパブリッククラウドでは各ユーザ的に事実上無限スタンダード制限、ゴールド優遇などのメンバー差別化小規模なプライベートクラウドでは制限的プライベートであふれた時はパブリックを利用
Page 7
仮想化システムとの違い
クラウドアドミニストレータ
クラウド利用者
(IaaS 利用者 )
仮想化環境管理者
クラウド利用者
(IaaS 利用者 )
Web から利用者が登録 Web から利用者が登録
Windows
Linux
Linux
OS 管理者
Windows
Linux
Linux
OS 管理者
Windows
Linux
Linux
OS 管理者
Windows
Linux
Linux
OS 管理者
イ ン ス タ ン ス
作 成 ・ 停 止
イ ン ス タ ン ス
作 成 ・ 停 止
VM 作成起動・停止
VM 作成起動・停止
IaaS 仮想化
Page 8
インフラストラクチャの提供
フロント( Web サービス API )
クライアントクライアン
トクライアント 指示
消費ベースで課金
料金
電力
冷却
Amazon Machine Imageゲスト OS 等のイメージ
Elastic 数E
last
ic サ
イズ
実行中のサーバインスタンス
管理例利用例
HTTP
SSH
リソース
IP アドレス
サードバーティクラスタリング構成サービ
ス
セキュリティ
Page 9
IaaS の代表例• Amazon EC2/S3 (パブリック:商用サービス)
– http://aws.amazon.com/ec2/– EC2 は “ Elastic Compute Cloud” の略– S3 は “ Simple Storage Service” の略– 従量課金制– クレジットカード 1 枚ですぐに利用可能
• Eucalyptus (プライベート: OSS )– http://open.eucalyptus.com/– “Elastic Utility Computing Architecture Linking Your Programs To Useful S
ystems” の略– カリフォルニア大学サンタバーバラ校で開発されたオープンソースプ
ロダクト– Amazon EC2/S3 クラウドと API 互換– Walrus(S3 相当)の可用性は未実装Amazonで提供されているマシンイメージの種類が多いがEucalyptusでは自らイメージを作成しなければならない。
2) 紹介編2) 紹介編
Page 10
Web サービス インターフェイス互換
on-premise cloud computing
public cloud computing
社内外で共通の運用・管理オンプレミスとパブリッククラウド(ハイブリッド・クラウ
ド)
SLAService Level Agreement
Elastic Compute Cloud ( EC2 )
Page 11
仮想マシンを Web サービスとして提供
Amazon Web Services• Scalable 伸縮性[弾力]のある → Elastic
ショッピングサイトとして実績のあるスケーラブルなサーバー群を提供
• Pay as you go 使った分だけの支払サービス契約不要(利用開始の手続きが非常に簡)
• Redundant 冗長性例えばストレージのバックアップ不要(自動レプリケート)
• Platform Agnostic プラットフォーム非依存Webサービスモデル: Java .NET PHP Ruby …
S3 Simple Storage Service ギガ / 月 $0.15 + 転送料 $0.10/ ギガEC2 Elastic Compute Cloud 1core/1.7Gmem/ 時間 $0.10 + 転送料
最大 64bit/4core/7G $0.5 Windows など商用 OS はライセンス料必要
Page 12
その他のサービス• SinpleDB
分散に適したキー・値方式の非リレーショナルなデーターベース、 API 毎の課金
• Simple Queue Serviceシステム間の非同期接続
• CloudFrontCDN: コンテンツ・デリバリー・ネットワーク:スカイキャッシュ(使用帯域で課金)
• AWS Management ConsoleGUI コンソール
• その他ロードバランサ、オートスケーリング、 MapReduce (分散データ処理)
Page 13
の特徴
1. Amazon EC2/S2 とのインターフェイス互換性(Web Services 、 Query/REST)
2. インストールが簡単 3. ほとんどの Linux ディストリビューションをサポート4. WS-Security を使用した安全な内部通信5. Linux に最小の修正を行い機能提供6. システム管理やユーザ管理のためのクラウドアドミニストレータ
ツール7. ひとつのクラウドの中で、それぞれのプライベートネットワーク
を持った複数のクラスターを設定可能※バージョン 1.6 時点
Elastic Utility Computing Architecture Linking Your Programs To Useful Systems
Page 14
Eucalyptus の構成
Windows
Linux
Linux
Node Controller
Windows
Linux
Linux
Node Controller
Windows
Linux
Linux
Node Controller
Windows
Linux
Linux
Node Controller
Cluster Controller
Cloud Controller
Cluster Controller
Fro
nt-e
ndC
ompu
te-n
ode
Walrus
Page 15
各コンポーネントの役割
1. Cloud Controller– EC2互換のインターフェイスを備えており、 EC2向けの各種ツール
を用いてユーザーから指示された内容に基づいて各種の制御を行う Amazonのストレージサービス S3と互換性のある、「 Walrus」もCloud Controller に同居
2. Cluster Controller– 上位からの指示で、インスタンス間、およびインスタンスとクラウ
ドの外部の間のネットワークの制御や、計算ノードのスケジューリング(インスタンスをどの計算ノードで実行するかの選択)などを行う。
3. Node Controller– 上位からの指示で、 Xenまたは KVM上の各インスタンスを制御
4. Walrus– アップロードされたイメージを格納
各インスタンスで永続的に保存するデータも格納
Page 16
Eucalyptus 構成要 素(オープンソース)
• Eucalyptus コントローラー( Cloud,Claster,Node )、ログ集約 gl
• Axis2 1.4 web サービスのコアエンジン(アパッチ)
• Rampart WS-Security ・ WS-Trust 用 Web サービス実装 ( アパッチ)
• Hibernate 3 O/R マッピングフレームワーク
• HSQLDB 1.8 リレーショナル DB ( Java )
• jetty6 Web サーバー( Java )
• Aoetools ATA over Ethernet Tools (iSCSI,FC-SAN などの代用 )
• Vblade Block storage over AoE
• libvirt Xen などの仮想マシン制御(抽象化されたライブラリ)
• JDK/JCE, ANT, Ruby
• DHCP, Xen(Kernel, Disk, Image)
Page 17
技術調査・検証としてのクラウド• モデル化
サービスのプロビジョニング , スケジューリングハイパーバイザ間でのポータビリティ ,SLA の公式化 ,各種機能強化など
• 本格稼動前の実験検証ローカルマシンでの「テックプレビュー」開発プラットフォーム、テスト・デバッグ
• チャレンジ内部 API 、外部 API ( EC2 )ネットワーク、セキュリティインストレーション、保守パッケージ…
Page 18
デモ環境3 ) デモ編
3 ) デモ編
Xen
ハイ
パー
バイ
ザ
ノードコントローラ
アプリサーバーユーザドメイン
( Linux )
クラウドコントローラ
クラスターコントローラ
NAT ルーター
euca コマンド
ドメイン0 ( Linux )
16CoreCPU/16GMem
TSC・ Kudan A-3-1 ラック 最上部6 U
Windows
SSH クライアント
EC2 ツール
講習会会場ノートPC
ブラウザ
10.212.153
10.212.150
DHCP Server
藤澤さん、このページから4枚必要なら編集を加えてください。
たぶんこの部分は削除したほうがいいかも。。。
Page 20
[root@ct54 ~]# cd .euca/[root@ct54 .euca]# lscloud-cert.pem euca2-admin-313caf46-cert.pem euca2-admin-313caf46-pk.pem eucarc[root@ct54 .euca]# more eucarc EUCA_KEY_DIR=$(dirname $(readlink -f ${BASH_SOURCE}))export S3_URL=http://192.168.122.1:8773/services/Walrusexport EC2_URL=http://192.168.122.1:8773/services/Eucalyptusexport EC2_PRIVATE_KEY=${EUCA_KEY_DIR}/euca2-admin-313caf46-pk.pemexport EC2_CERT=${EUCA_KEY_DIR}/euca2-admin-313caf46-cert.pemexport EUCALYPTUS_CERT=${EUCA_KEY_DIR}/cloud-cert.pemexport EC2_ACCESS_KEY='ISMvKXpXpadDiUoOSoAfww'export EC2_SECRET_KEY='wsDsuOfzpB6TRR6xETQy0WLdfVxDSc-QPdUH3A'export EC2_USER_ID='000100729354'alias ec2-bundle-image="ec2-bundle-image --cert ${EC2_CERT} ...alias ec2-upload-bundle="ec2-upload-bundle -a ${EC2_ACCESS_...[root@ct54 .euca]#
Page 21
[root@ct54 euca152]# euca-describe-imagesIMAGE eki-90041375 kernel-bucket/vmlinuz-2.6.16.33-xen.manifest.xml admin available public x86_64 kernelIMAGE emi-F473117A image-bucket/ttylinux.img.manifest.xml admin available public x86_64 machine[root@ct54 euca152]# euca-run-instances emi-F473117A --kernel eki-90041375RESERVATION r-49FC089F admin admin-defaultINSTANCE i-48980892 emi-F473117A 0.0.0.0 0.0.0.0 pending eki-90041375 None[root@ct54 euca152]# euca-describe-instancesRESERVATION r-49FC089F admin defaultINSTANCE i-48980892 emi-F473117A 0.0.0.0 0.0.0.0 running m1.small eki-90041375[root@ct54 euca152]# euca-describe-instancesRESERVATION r-49FC089F admin defaultINSTANCE i-48980892 emi-F473117A 192.168.11.12 192.168.11.12 running m1.small eki-90041375[root@ct54 euca152]# ssh 192.168.11.12The authenticity of host '192.168.11.12 (192.168.11.12)' can't be established.RSA key fingerprint is 93:e7:a9:8a:df:3d:4a:bc:9e:5c:45:23:17:b5:53:cd.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '192.168.11.12' (RSA) to the list of known [email protected] 's password: Permission denied, please try [email protected] 's password:XXXXX root@tiny ~ # df -kFilesystem 1k-blocks Used Available Use% Mounted on/dev/sda1 4955 4071 628 87% /root@tiny ~ # exit logoutConnection to 192.168.11.12 closed.[root@ct54 euca152]# euca-describe-instancesRESERVATION r-49FC089F admin defaultINSTANCE i-48980892 emi-F473117A 192.168.11.12 192.168.11.12 running m1.small eki-90041375[root@ct54 euca152]# euca-terminate-instances i-48980892INSTANCE i-48980892[root@ct54 euca152]# euca-describe-instancesRESERVATION r-49FC089F admin defaultINSTANCE i-48980892 emi-F473117A 192.168.11.12 192.168.11.12 terminated m1.small eki-90041375[root@ct54 euca152]#
一分後起動したが IP はまだ
もう一分後 IP が付いた
インスタンスにログイン
インスタンスは停止そして消滅
Page 22
TSC での取り組み• TSC にて藤澤さんとクラウドの検証、デモ環境の整備などを実施• TSC検証環境提供サービス ( 仮 ) への応用
– Eucalyptusを使用してプライベートクラウドができれば! TSCスタッフの介在無しで、社員が自由に OSを触れる検証環境を提供することが可能!
– 楽天様でも、社員向け開発環境提供 (ジャングル )というものを提供中 (似たコンセプト )!
4) まとめ編
4) まとめ編
日野さん、藤澤さんと相談してこのページは見学者への TSC アッピール文に書き換えてください