1. OSC 2011 Tokyo/Fall
CloudStackによるクラウドサービス
Joe'sが手がけたCloudstackによるクラウドサービスの提供について
Copyright ?2011 J oe’s Web Hosting, Inc. All rights reserved.
2. 01 会社紹介
株式会社J oe’sウェブホスティング
設立 2002年7月
資本金 1000万円
オフィス 大阪:梅田(本社)
東京:銀座/青山
従業員 17名
事業内容 クラウド?ホスティング事業
情報セキュリティ事業
経営支援事業
http://jwh.jp/
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
3. 02 事業内容
クラウド?ホスティング事業
クラウド?専用サーバ(マネージド/root)?VPS?共用サーバ
ハウジング?HAクラスタ?ドメイン
コントロールパネル(cPanel/Plesk)※cPanelと言えば
J oe’s
情報セキュリティ事業
主要7ブランドを網羅したSSL証明書サービス
40~70%OFF等圧倒的な低価格で提供 ※SSLと言えばJ oe’s
SSL証明書はどこで買っても品質に差はありません
経営支援事業
J oe’sビジネスセンター → バーチャルオフィス
サーバだけでなく、オフィスも仮想化
東京?大阪の一等地を登記住所として利用可能
会議室?電話、郵便物転送?テレビ会議
月額4,200円から
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
4. 03 自己紹介
山本 政秀
(やまもとまさひで)
1976年生まれ(34歳)
兵庫県姫路市出身
小学2年生の時MSX(Z80A)と出会う。小学生だった
が、BASIC?アセンブラにハマる。その後ずっとコ
ンピュータと付き合ってきて現在に至る。
2003年5月 入社
2007年1月 取締役CTO就任
弊社LXC-VPS、CloudStackの開発を担当
※写真は今年10月に米国でcPanelの面々と
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
5. 04 アジェンダ
クラウドとは?(パブリック/プライベート)
『CloudStack』のご紹介(特徴、構成)
インスタンス生成、仮想ルータ操作デモ
J oe'sのサービスと工夫
まとめ
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
7. 06 クラウドの階層
IaaS(Infrastructure as a service、イアースまたはアイアス)
PaaS(Platform as a Service、パースまたはパーズ)
SaaS(Software as a Service、サース)
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
8. 07 クラウドの分類(特にIaaSにおいて)
パブリッククラウド
プライベートクラウド
ハイブリッドクラウド
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
9. 08 クラウド(仮想化)のメリット
スケールメリット
事業者側はデータセンターのリソースを束ね多数のユーザーで
共有させる事でリソースの利用率?稼働率の向上が図れ、ユー
ザは結果的により安くサービス利用できる。
コスト?リスクの削減
ユーザは自前の設備等を保有?設計?開発したり、更に保守?
管理する必要が無くなる。またディザスタリカバリ系技術によ
り災害時でも被害を最小限にできる。
高い効率
事業者側は設計?開発?運用の標準化?共通化や、仮想化によ
るシンプロビジョニングが可能になり効率を飛躍的に高められ
る。
高い拡張性
事業者側は複雑な手続き無くリソースの追加が可能となり、
ユーザは必要な時に必要なだけリソースが得られる。
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
10. 09 クラウド基盤ソフト『CloudStack』
米シトリックス?システムズ社がオープンソースで提供しているIaaSクラ
ウド構築?運用ソフトウェア(2011年8月 完全OSS化?完全無償化を発表)
採用事例急増中(北大?IDCフロンティア)
IaaS(Infrastructure as a service)
「コンピュータシステムを構築および稼動させるための基盤(仮想マシンやネット
ワークなどのインフラ)そのものを、インターネット経由のサービスとして提供す
る」(Wikipedia)
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
11. 10 CloudStackの特徴
オープンソース(GPL3)?Javaベース
マルチテナント(複数の組織で使える)
マルチハイパバイザサポート(KVM?XenServer(XCP1.0まで)?
VMware vSphere(4.1まで)?Oracle VM)
直感的でわかりやすいWebインターフェイス
スケーラブルアーキテクチャ(数千台構成)
※ 米国メディア配信企業で5000台の事例あり
仮想ルータ?ロードバランサ?ファイアウォール
VLANによるネットワーク分割?仮想化
自動フェイルオーバ(HA:High Availability)
信頼性の高いAPI?しっかりとした実装
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
12. 11 できることの例
Public Network
Private Network
こういう構成を丸ごと… 仮想化!
自分だけの『仮想データセンター』が持てる
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
13. 12 CloudStackの物理構成
Management Server
管理者?ユーザーに対して管理I/FやAPIを提供
Secondary Storage
仮想サーバ作成に使用するデータを管理
テンプレート?ISOイメージ
スナップショットデータの保存先
Computing Node
コンピューティングリソースを提供
ここで実際に仮想サーバが動作する
台数を増やすことで拡張できる
Primary Storage
仮想サーバの仮想ディスクデータを保存する
iSCSI?NFS等で接続する
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
14. 13 CloudStackの論理構成(システムVM)
Public Network Console Proxy VM
仮想サーバのコンソール画面をユーザーに提供
する機能を持つ仮想サーバ
Virtual Router VM
CloudStack内でルータ機能を提供
Guest Network Secondary Storage VM
Secondary Storageの処理を行う仮想サーバ
ユーザ VM(インスタンス)
Computing Node上に作成される仮想サーバ
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
15. 14 CloudStackの階層型アーキテクチャ(ネームスペース)
Zone 1
Pod 1
Cluster 1 Cluster 2 Zone
データセンタに相当し、複数のPodと1つの
Secondary Storageを持つ
Pod 2 Pod
Cluster 1 ラックに相当し、複数のClusterを持つ
Computing Node (Host)
Cluster
同じタイプのハイパーバイザを持つ複数の物理ホ
ストと1つ以上のプライマリストレージを持つ。
Zone 2 仮想マシンインスタンスのライブマイグレーショ
Pod 1 ンは同一Clusterの中でしか行えない
Cluster 1
Computing Node(Host)
特定のハイパバイザがインストールされた物理ホ
ストで、ユーザは各ホストに1つ以上の仮想マシ
Pod 2 ンインスタンスを生成できる
Cluster 1 Cluster 2
Virtual Machine Instance
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
16. 15 CloudStackのネットワーク構成
Advancedモード(Virtual?Direct Networking)?VLAN
Basicモード(Direct Networking)
Internet Internet
仮想ルータ
Direct Network Mode Virtual Network Mode
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
17. 16 CloudStackの実装
既存のOSS Cloudソフトウェアの中でも最も本格的で美しい実装
End User Browser Javascript, etc
API Call
Tomcat(Java)
CloudStack API
CloudStack Business Logic
CloudStack Orchestration Engine
API Call
Agent Daemon Process
Compute Network Storage (Java and Helper script call
Controller Controller Controller (Python, Bash, etc))
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
18. 17 インスタンス生成、仮想ルータ設定デモ
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
19. 18 J oe’s プライベートクラウド 画面例
ダッシュボード(リソース状況表示)
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
20. 19 J oe’s プライベートクラウド 画面例
インスタンス(仮想サーバ)一覧
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
21. 20 J oe’s プライベートクラウド 画面例
仮想サーバ画面参照
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
22. 21 CloudStackの既知の問題点
まだ粗め
?簡単な操作でインストールできる所まで磨かれていない
?ハイパバイザに固有の設定等が多くとっつきにくい
?バグがまだ多い
-> コミュニティによる開発が活発なので今後に期待
-> 弊社も開発に参加し貢献していく予定
効率が重視されていない向きがある
-> 例えばKVMだけを例にとっても、
プライマリストレージは多くの制約があり、
効率を追求できない
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
23. 22 CloudStackの既知の問題点(続き)
以下 http://docs.cloud.com/CloudStack_Documentation/Installing_CloudStack/KVM_Installationより抜粋
それぞれのKVMホストは同じマウントポイントにNFSか
OCFS2の様な共有FSの何れかをマウントしなければならない
例えば、/mnt/primary
管理者は事前に自分でそれらの共有FSを構成しマウント/ア
ンマウント等の管理をしなければならない
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
24. 23 CloudStackの既知の問題点(続き)
これらの制約の何が嫌なのか?(以下私の独断と偏見が多分に入っていますが...)
ローカルHDDに性能で勝る構成はない
?現状そのためには、ローカルFSをローカルに
NFSマウントするという不毛な対応が必要になる
HDDは3Tも安く入手でき各ホストで6Tや12Tも普通に持てる時代
→ CPUやメモリ量に対してHDD量は潤沢でネックにならない
OCFS2やGFS2は非常に遅い(過去にベンチマークを何度も取り
ました...)
各KVMホストが自分のローカルHDDを使う事で何ら問題は生じ
ないと思われる(常時ではなく、「必要に応じて」NFSを併用
すれば...)
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
25. 24 CloudStackの既知の問題点(続き)
もっと柔軟に各KVMホスト毎にストレージを管理したい
(マウントポイントや利用FSを統一しなければならない本
質的な理由が見当たらない)
これらは単にCloudStackの設計や流儀に起因する
制約ではないのか。
後、そもそもKVMのqemu-imgフォーマットqcow2はオーバ
ヘッドが大きい(動的伸長が特に)等々
じゃあどうすればいいのか?
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
26. 25 CloudStackの既知の問題点(続き)
弊社の取り組み
LXCコンピューティングノードのサポート
ハイパバイザ(まずはKVM)->LXCコンテナ変換機能
KVM等->LXCコンテナ変換機能は何が嬉しいのか?
ユーザはKVMを用いて任意のOSをインストール後
自身のアプリケーションを設定
変換機能でワンタッチでLXCコンテナ化!
LXCインスタンスで運用開始
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.
27. 26 LXC の簡単な紹介
LXC(Linux Container)とは
コンテナ型(OSレベル)の仮想化技術
IBM Daniel Lezcano氏(仏)他数名でプロジェクトを創
始(2008年8月頃)
カーネルに『標準』で入っている
l
カーネル2.6.29より取り込まれた
パッチを当てる必要も、費用も要らない
Ubuntu?RHELでも採用されている
Copyright ? 2011 Joe’s Web Hosting, Inc. All rights reserved.