© 2012 IBM Corporation
1
OpenStack Folsom を使った
クラウド環境構築実践
⽇本IBM 株式会社
Linux /OSS & Cloud Support Center
⻘⼭ 桜⼦
2012/12/16 OSC2012.Cloud
© 2012 IBM Corporation 2
OpenStack とは
⽇本OpenStackユーザー会による”OpenStack”とは
OpenStackは、汎⽤的なPCサーバやネットワーク機器などの標準的なハードウェアを⽤いて
IaaS(Infrastructure as a Service)型のクラウドコンピューティング環境を構築可能なOSSで
す。
OpenStackは、OpenStack Compute (Nova)とOpenStack Object Storage (Swift)の2つから
構成されます。
OpenStack Computeは、計算機資源の⾃動的な管理を⾏い、ユーザやグループに対して仮想的
プライベートサーバ群を提供することができます。
OpenStack Object Storageは、ペタバイトクラスの冗⻑化され、かつ、規模拡張性に優れた
データストレージを提供します。
出典:⽇本OpenStackユーザー会 http://openstack.jp/community.htmlIBMはこう考えています
OpenStack はグローバルな開発者の協業のもとに成り⽴っており、パブリック・クラウド、プ
ライベート・クラウドのためのオープンソースでユビキタスなIaaSクラウドコンピューティング
プラットフォームを実現するテクノロジーです。
© 2012 IBM Corporation 3
OpenStack の機能
1CPU8GBメモリ
のWebサーバー
OpenStack
OSはLinux
Webショッピング
サイトを始めたい
ディスク必要
200GBOpenStackには
IaaSの構築提供に必要な分散ソフトウェア・パッケージが揃っています
多数のユーザーと管理者が
サーバーを使うために必要なコンポーネントが揃っています
Nova Glance Cinder Swift Quantum
Horizon
Keystone
Server
Storage
Network
ハード ウェア層 IaaS OpenStack
エンドユーザーの要件に合った
IaaS機能をOpenStackが提供します
WebサーバーとDB
サーバーが必要
ユーザが考える部分© 2012 IBM Corporation 4
OpenStack をEnterprise環境で安定稼働させるためには
OpenStack においてもEnterprise環境では⾮機能要件が必要です
セルフポータル
VM⾃動デプロイ
マルチテナント
可⽤性
パフォーマンス
セキュリティ
キャパシティ
スケーラビリティ
機能要件
⾮機能要件
ストレージサービス
ネットワーク管理
© 2012 IBM Corporation 5
「可⽤性」に注⽬しました
可⽤性を⾼めるためにできること
ホストHA
仮想マシンのHA
NW冗⻑化
デプロイされた
仮想マシンが停⽌しない
データロストしない
ポータルは常に
ログイン可能
HWとの組み合わせで今できる可⽤性の底上げを考えてみました
対応すべき事象
デプロイされた仮想マシン
へのアクセスが停⽌しない
・ ・
・
コントローラ障害時も
仮想マシンが停⽌しない
バックエンドDB
冗⻑化
ロードバランサー
⽬標とするサービスレベル
サーバー障害
(コントローラー障害)NW障害
SW障害
ディスク障害
RAID
とれる対応策
・ ・
・
過負荷
・ ・
・
ストレージHW
コントローラー冗⻑化
OpenStack⾃体にも可⽤性向上機能が期待されます
© 2012 IBM Corporation 6
ストレージでカバーできる可⽤性
OpenStack対応済みストレージでカバーできるサービスのレベルと障害要因
ホストHA
仮想マシンのHA
NW冗⻑化
デプロイされた
仮想マシンが停⽌しない
データロストしない
ポータルは常に
ログイン可能
ストレージと組み合わせることで可⽤性の底上げができます
デプロイされた仮想マシン
へのアクセスが停⽌しない
・ ・
・
コントローラ障害時も
仮想マシンが停⽌しない
バックエンドDB
冗⻑化
ロードバランサー
サーバー障害
(コントローラー障害)NW障害
SW障害
ディスク障害
RAID
・ ・
・
過負荷
・ ・
・
ストレージHW
コントローラー冗⻑化
対処すべき事象
⽬標とするサービスレベル
とれる対応策
OpenStack⾃体にも可⽤性向上機能が期待されます
© 2012 IBM Corporation 7
専⽤のストレージ装置がない場合のOpenStack Folsom環境例①
folsom-center1
folsom-compute1
folsom-compute2
folsom-computep
folsom-client1
folsom-horizon1
OpenStack Mgmt NW (LAB-LAN)OpenStack
VM Conf Network
10.7.20.XXX
10.7.20.XXX
10.7.20.XXX
10.7.20.XXX
10.7.10.XXX
Public
cinder
glance
keystone
nova
DB
nova-compute
nova-compute
PowerVM(IVM)
horizon
192.168.1.0/24
Public
Public
10.7.20.XXX
MQ
ボリュームプール
(VG)
© 2012 IBM Corporation 8
ボリュームプール
(VG)
専⽤のストレージ装置がない場合のOpenStack Folsom環境例②
folsom-center1
folsom-compute1
folsom-compute2
folsom-computep
folsom-volume1
folsom-client1
folsom-horizon1
OpenStack Mgmt NW (LAB-LAN)OpenStack
VM Conf Network
10.7.20.XXX
10.7.20.XXX
10.7.20.XXX
10.7.20.XXX
10.7.10.XXX
10.7.20.XXX
Public
cinder
glance
keystone
nova
DB
nova-compute
nova-compute
PowerVM(IVM)
horizon
192.168.1.0/24
Public
Public
10.7.20.XXX
MQ
cinder
© 2012 IBM Corporation 9
今回のOpenStack Folsom検証環境デザイン
folsom-center1
folsom-compute1
folsom-compute2
folsom-computep
IBM Storwize
V7000
folsom-client1
folsom-horizon1
OpenStack Mgmt NW (LAB-LAN)OpenStack
VM Conf Network
10.7.20.XXX
10.7.20.XXX
10.7.20.XXX
10.7.20.XXX
10.7.10.XXX
10.7.20.XX (iSCSI-A)
10.7.20.XX (iSCSI-B)
10.7.20.XX (mgmt)
Public
cinder
glance
keystone
nova
DB
nova-compute
nova-compute
PowerVM(IVM)
SSH/iSCSI
horizon
192.168.1.0/24
Public
Public
10.7.20.XXX
MQ
ストレージハードウェア
(専⽤機)を
使⽤しています
© 2012 IBM Corporation 10
OpenStack がボリュームを作成する流れ
①ポータルに
ログイン
ボリューム操作
(作成)
③V7000を操作
ボリューム操作
(接続)
④サーバーに
ボリューム接続指⽰
⑤サーバーからV7000
にiSCSI接続確⽴
②ポータルから
ボリューム操作リク
エストを送信受付
© 2012 IBM Corporation 11
今回使った IBM Storwize V7000とは
コンパクトな
2Uフォーム
最新SASアーキテクチャ採⽤
省エネ2.5型ドライブ対応
電源遮断時もキャッシュ上の
データを保護する機構
業務に合わせた各種ドライブの対応
(SSD、SAS、NL_SAS)
8Gbps FCポート
1Gbps iSCSIポート
冗⻑化された
電源機構
10Gbps iSCSI接続
「Active/Active」
デュアル・コントローラ
6Gbps SAS接続
(拡張筐体接続)
3.5型ドライブ・モデル
最新のストレージ・テクノロジーを採⽤したストレージハードウェアです
© 2012 IBM Corporation
12
OpenStack環境でV7000を使うステップ
/etc/cinder/cinder.conf の書き換えでV7000が使⽤できます
#for IBM Storwize V7000
volume_driver = cinder.volume.storwize_svc.StorwizeSVCDriver
san_ip = 10.7.20.167
#san_ssh_port = 22
san_login = superuser
san_password = *******
#san_private_key =
storwize_svc_volpool_name = mdiskgrp0
#storwize_svc_vol_type =
#storwize_svc_vol_warning =
#storwize_svc_vol_autoexpand = True
/etc/cinder/cinder.conf (抜粋)
/etc/cinder/
cinder.conf を
編集する
V7000を
⽤意する
OpenStack を
導⼊する
© 2012 IBM Corporation 13
<参考>OpenStack Volumeプールの概念⽐較
ストレージプール
PV
HDD
VG
Linux LVMで
ボリュームサービスを作る場合
ボリュームサービスを作る場合
V7000で
RAID
LV
LUN
(VDISK)
[ iSCSI でエクスポート ]
[ iSCSI でエクスポート ]
MDISK
HDD
OpenStack の
ボリュームプール
RAID
V7000 外の
ディスク装置
© 2012 IBM Corporation 14
ストレージでカバーできる可⽤性
OpenStack対応済みストレージでカバーできるサービスのレベルと障害要因
ホストHA
仮想マシンのHA
NW冗⻑化
デプロイされた
仮想マシンが停⽌しない
データロストしない
ポータルは常に
ログイン可能
ストレージと組み合わせることで可⽤性の底上げができます
デプロイされた仮想マシン
へのアクセスが停⽌しない
・ ・
・
コントローラ障害時も
OSが停⽌しない
バックエンドDB
冗⻑化
ロードバランサー
サーバー障害
(コントローラー障害)NW障害
SW障害
ディスク障害
RAID
・ ・
・
過負荷
・ ・
・
ストレージHW
コントローラー冗⻑化
対応すべき事象
⽬標とするサービスレベル
とれる対応策
※ OpenStack⾃体にも可⽤性向上機能が期待されます
© 2012 IBM Corporation
15
今後の更なる可⽤性に向けて
root@folsom-compute1:~# virsh domblklist 1
Target Source
---vda
/var/lib/nova/instances/instance-0000000c/disk
vdb
/var/lib/nova/instances/instance-0000000c/disk.local
vdc
/dev/disk/by-path/ip-10.7.20.176:3260-iscsi-iqn.1986-03.com.ibm:2145.storwizev7000.node2-lun-0
vdd
/dev/disk/by-path/ip-10.7.20.175:3260-iscsi-iqn.1986-03.com.ibm:2145.storwizev7000.node1-lun-2
vde
/dev/disk/by-path/ip-10.7.20.176:3260-iscsi-iqn.1986-03.com.ibm:2145.storwizev7000.node2-lun-3
vdc
/dev/disk/
by-id/dm-uuid-mpath-36005076802808446680000000000002e
vdd
/dev/disk/
by-id/dm-uuid-mpath-360050768028084466800000000000033
vde
/dev/disk/
by-id/dm-uuid-mpath-360050768028084466800000000000032
multipath対応すると、可⽤性を底上げできる範囲が広がります
現在コミュニティでmultipath対応が提案されています
https://blueprints.launchpad.net/nova/+spec/libvirt-volume-multipath-iscsi
マルチパス対応できたら・・・・
現時点ではシングルパス接続として認識されています
通常のLinuxではマルチパス使⽤時このように認識されるので、OpenStackでも以下のように認識されるとパス障害にも対応で
きるようになります
© 2012 IBM Corporation
16
デモンストレーション
© 2012 IBM Corporation 17
エンドユーザーとして管理ポータルにアクセス
エンドユーザー
ブラウザから
http://10.7.20.178/horizon/
にアクセス
© 2012 IBM Corporation
18
OpenStack
Dashboad
© 2012 IBM Corporation 19
150種類以上の
装置をサポート
ストレージ仮想化機能で既存の資産も有効活⽤
ベンダーやモデルの異なる既存ストレージも含めて仮想化統合する
ことが可能です。サーバー稼動中もアプリケーションから意識させ
ることなく、異なるディスク装置間のデータ移⾏ができるため、ダ
イナミックに最適なデータ再配置が可能です。また、既存のスト
レージ資産を継続して⼆次的ストレージ等として活⽤することも可
能になります。
内蔵SSD
内蔵HDD
EasyTierにより
ホットなデータを
⾃動最適配置
システム稼動中に
データの
移送が可能
仮想ディスク
イメージ
⽇⽴
富⼠通
NEC
External
Virtualization
EMC
IBM
HP
Storwize V7000
仮想OS
イメージ
他のFCストレージを認識
V7000配下で継続して
利⽤することが可能
占有ストレージの⽤意が難しいときに既存のストレージが使えます
様々なストレージベンダー製ディスク装置を含む
ストレージ仮想化機能
© 2012 IBM Corporation
20
パフォーマンスが必要なボリュームのデータを⾃動でSSDに再配置します
© 2012 IBM Corporation
21
コントローラーの可⽤性の底上げ案
1ブレードシャーシで統合すると以下のように構成できます
IBM Flex System
Flex System Manager
9
ケーブル結線不要なため障害ポイントを削減
9
サーバー障害時には予備筐体に⾃動切り替え
© 2012 IBM Corporation
22
様々な組織がOpenStackの開発に取り組んでいます
Contributing developers by Company (Nova)
IBM による開発貢献企業情報グラフです
2012年11⽉時点のOpenStack次期バージョンGrizzly開発貢献
2012年4⽉のOpenStack Foundation 設⽴以降の開発貢献企業
次期バージョンの2013年4⽉リリースにむけて継続的な開発貢献
•
コード変更:Rackspace社、Red Hat社に次ぐ第3位の貢献
IBM全体で141changeset。うち107はIBM LTCによるもの。
•
コードレビュー:Rackspace社、Red Hat社、Nebula社に次ぐ第4位の貢献
IBM全体で406 code review。うち376はIBM LTCによるもの。
© 2012 IBM Corporation 23
OpenStackの価値をお届けするために開発貢献しています
9
定款制定に向けた法的⽀援
9
安定性と品質の向上
9
IBM開発者“core
contributors”
9
IBM社内で様々な事業に所属す
る124名のIBM社員が開発貢献
9
定款制定に向けた法的⽀援
9
安定性と品質の向上
9
IBM開発者“core
contributors”
9
IBM社内で様々な事業に所属す
る124名のIBM社員が開発貢献
IBM Storwise V7000
IBM XIV
9
PowerVM driver
9
Dynamic hypervisor
support
9
オープンクラウドスタンダードの導⼊
9
Membership Services from HSLT
9
グローバライゼーションとローカライゼーションの実現
IBM Power Systems
9
Drivers for IBM SVC & XIV
© 2012 IBM Corporation 24
本⽇のまとめ
▪ OpenStackをEnterprise環境で使うために⼒を合わせて取り組んでいます
▪ OpenStack にストレージハードウェアを組み込んで直接操作することができま
す
▪ OpenStackとストレージハードウェアを組み合わせることでEnterprise環境で
必要となる可⽤性の底上げができます
よりよいOpenStack環境を作って⾏きましょう!
© 2012 IBM Corporation
25
© 2012 IBM Corporation
26
© IBM Corporation 2012. All Rights Reserved.
ワークショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独⾃の⾒解を反映したものです。それらは情報 提供の⽬的のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助⾔を意図したものではなく、またそのような結果を⽣む ものでもありません。本プレゼンテーションに含まれている情報については、完全性と正確性を帰するよう努⼒しましたが、「現状のまま」提供され、 明⽰または暗⽰にかかわらずいかなる保証も伴わないものとします。本プレゼンテーションまたはその他の資料の使⽤によって、あるいはその他の関 連によって、いかなる損害が⽣じた場合も、IBMは責任を負わないものとします。 本プレゼンテーションに含まれている内容は、IBMまたはそのサプ ライヤーやライセンス交付者からいかなる保証または表明を引きだすことを意図したものでも、IBMソフトウェアの使⽤を規定する適⽤ライセンス契約 の条項を変更することを意図したものでもなく、またそのような結果を⽣むものでもありません。 本プレゼンテーションでIBM製品、プログラム、またはサービスに⾔及していても、IBMが営業活動を⾏っているすべての国でそれらが使⽤可能である ことを暗⽰するものではありません。本プレゼンテーションで⾔及している製品リリース⽇付や製品機能は、市場機会またはその他の要因に基づいて IBM独⾃の決定権をもっていつでも変更できるものとし、いかなる⽅法においても将来の製品または機能が使⽤可能になると確約することを意図したも のではありません。本資料に含まれている内容は、参加者が開始する活動によって特定の販売、売上⾼の向上、またはその他の結果が⽣カると述べる、 または暗⽰することを意図したものでも、またそのような結果を⽣むものでもありません。 パフォーマンスは、管理された環境において標準的なIBMベンチマークを使⽤した測定と予測に基づいています。ユーザーが経験する実際のスループッ トやパフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラミングの量、⼊出⼒構成、ストレージ構成、および処理されるワーク ロードなどの考慮事項を含む、数多くの要因に応じて変化します。したがって、個々のユーザーがここで述べられているものと同様の結果を得られる と確約するものではありません。 記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使⽤したか、またそれらのお客様が達成した結果の実例として⽰された ものです。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。
IBM、IBM ロゴ、ibm.com、Flex System、Flex System Manager は、世界の多くの国で登録されたInternational Business Machines Corporation の商標です。
他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。
現時点での IBM の商標リストについては、www.ibm.com/legal/copytrade.shtmlをご覧ください。 Linuxは、Linus Torvaldsの⽶国およびその他の国における登録商標です。