2. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 2
Agenda
• Apache CloudStack概要
• CloudStack 4.1を使ってみよう〜~DevCloud2
• ⽇日本CloudStackユーザー会の紹介
• OCDETの紹介
3. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 3
Self-introduction
• @MayumiK0 オーじゃなくてゼロです
⽇日本CloudStackユーザー会 会⻑⾧長
⼀一般社団法⼈人クラウド利利⽤用促進機構 技術アドバイザー
• 主にCloudStackをさわってますが、何でも屋
• どちらかというと実はネットワークのが好き
• 家に19inchのフルラックがあるけど、殆どただの棚と
化している
• とにかくビール重要
8. • IaaS(Infrastructure as a Service)を構築するた
めのクラウド基盤ソフトウェア
• 元はCloud.com社の商⽤用プロダクト
⇒Citrix社に買収され、オープンソース化
• 2012年年4⽉月にApache Software Foundation(ASF)
に寄贈される
• 2013年年3⽉月ASFの正式プロジェクトに昇格
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 8
Apache CloudStackとは
9. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 9
特徴-マルチハイパーバイザー
• ハイパーバイザーの違いによる操作の差異異をなくす
CloudStack
KVM XenServer
VMware
vSphere
ESX/ESXi
Oracle VM
10. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 10
特徴-マルチテナント
• テナント間のセキュリティを確保する仕組みを持つ
• ドメイン、アカウント、ユーザという階層構造を持ち
クラウドサービスに適した管理理体系
ROOT
Domain01
Account11
User111 User112
Account12
User121
Domain02
Account21
User211
Account22
User221 User222
11. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 11
特徴-セルフポータルサービス
• 直感的で簡単なユーザーインターフェース
• 管理理者がサービスやリソース割当定義を⾏行行い、VMの操
作はユーザーが⾃自分で⾏行行える
管理者
ドメイン管理者
ユーザー
表示される内容は権限によって異なる
12. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 12
特徴-豊富なネットワークサービス
• 基本ネットワーク
• 拡張ネットワーク
– 仮想Firewall
– 仮想LoadBalancer
– 仮想ルーター
• 外部ネットワーク機器との連携
13. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 13
特徴-他管理ツールとの連携
• CloudStack API
• EC2 Quary API
15. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 15
アーキテクチャ
管理サーバーセルフサービスポータル
XenServer
VM VM VM
KVM
VM VM VM
vSphere
VM VM VM
agent
PrimaryStorage
(NFS, iSCSI, FC SAN, Local)
ネットワーク機器
(LB, FW, SDN/OpenFlow)
SecondaryStorage
(NFS, Swift)
16. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 16
コンポーネント
GUI、リソース管理理
イベント管理理etc
管理理サーバー
仮想マシンを実⾏行行
CPU/メモリ提供
仮想マシンの
ディスク領領域
ホストと
Primary Storage
で構成
Clusterの集合
Podと
Secondary
Storageで構成
テンプレートやス
ナップショット、
ISO⽤用のディスク
領領域
17. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 17
Apache CloudStack 4.1
• 4.0と4.1の違い(超ざっくり)
– 内部アーキテクチャの変更更
– 20の新機能
– 24の改善
– 155 bug fixes
Design Documentよりはずいぶん
機能実装が削られてしまいました
18. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 18
Apache CloudStack 4.1
Design Documents
Apache CloudStack UIX
Autoscaling
Javelin
EC2 -‐‑‒ Functional Spec for Query API support
Reset SSH key Functional Spec
Network inline mode functional spec
UI -‐‑‒ Dynamic Tooltip
CloudStack API refactoring
API Request Throttling
AWS-‐‑‒Style Regions
Event Notification with
message oriented middleware Proposal
Raise cluster size limit to 16 on VMware
Support non-‐‑‒contiguous VLAN ranges
Site-‐‑‒to-‐‑‒Site VPN 2.0
Persistent Networks
CPU and Memory OverCommit
S3-‐‑‒based secondary Storage
Cluster Tags
Resize Data Volumes
FS Investigate and add back KVM
snapshot support
Add Remove Networks to VMs
IPv6 support
API Discovery Service
Egress firewall rules for guest network
■Reference : http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.0/html/
Release_Notes/version-4.1.html#what-new-in-4.1
Release Notes
▼API, UI and Integration Options:
Added Region Support
Support for EC2 Query API
Auto-‐‑‒Completing Shell for CloudStack
(CloudMonkey)
API Discovery Service
Events Framework
API Request Throttling
User and Domain Admin Can Create API Key
and Secret
▼Networking:
L3 Router Functionality in Nicira NVP Plugin
Persistent Networks without Running VM
Autoscale
Support Inline Mode for F5 and SRX
Egress Firewall Rules for Guest Networks
▼Compute:
Add/Remove Network on VM(★Unresolved Fix
Version/s:4.2.0)
Reset SSH Key to Access VM
▼Storage:
Resize Volumes Feature
S3 Backed Secondary Storage(★Unresolved Fix
Version/s:4.2.0)
19. • アーキテクチャの変更更
– Custum Injection FrameworkをSpring
Frameworkに変換
– パッケージの変更更
• cloud-‐‑‒という名前がcloudstack-‐‑‒に
– リファクタリング
• Storage plugin model
• Network plugin model
• API implementation(互換あり)
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 19
Apache CloudStack 4.1
今後、より柔軟に拡張可能
22. • DevCloud2
– CloudStackの開発やテストに使える
仮想アプライアンス
– VirtualBox上で動くOVAイメージ
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 22
DevCloud2って?
■参考:https://cwiki.apache.org/confluence/display/CLOUDSTACK/DevCloud
23. • Mac Book Air
• OS X 10.8.4
• メモリ 8GB
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 23
使用した環境
24. • DevCloud2のダウンロード
• VirtualBoxのインストール
• DevCloud2をVirtualBoxにimport
• VirtualBoxの設定
• DevCloud2内でCloudStack構築
• CloudStack設定
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 24
ざっくり手順
46. apt-‐‑‒get install sudo
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 46
sudoの導入
root@devcloud:~#
apt-get
install
sudo
Reading
package
lists...
Done
Building
dependency
tree
Reading
state
information...
Done
The
following
NEW
packages
will
be
installed:
sudo
0
upgraded,
1
newly
installed,
0
to
remove
and
221
not
upgraded.
Need
to
get
851
kB
of
archives.
After
this
operation,
1,885
kB
of
additional
disk
space
will
be
used.
Get:1
http://debian.lcs.mit.edu/debian/
wheezy/main
sudo
i386
1.8.5p2-1+nmu1
[851
kB]
Fetched
851
kB
in
21s
(40.4
kB/s)
Selecting
previously
unselected
package
sudo.
(Reading
database
...
52154
files
and
directories
currently
installed.)
Unpacking
sudo
(from
.../sudo_1.8.5p2-1+nmu1_i386.deb)
...
Processing
triggers
for
man-db
...
Setting
up
sudo
(1.8.5p2-1+nmu1)
...
47. git clone https://git-‐‑‒wip-‐‑‒us.apache.org/repos/
asf/cloudstack.git
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 47
git-hubから最新のコードを取得
root@devcloud:~#
git
clone
https://git-wip-us.apache.org/repos/asf/cloudstack.git
Cloning
into
'cloudstack'...
remote:
Counting
objects:
332343,
done.
remote:
Compressing
objects:
100%
(62368/62368),
done.
Receiving
objects:
100%
(332343/332343),
330.63
MiB
|
59
KiB/s,
done.
remote:
Total
332343
(delta
226246),
reused
328211
(delta
223640)
Resolving
deltas:
100%
(226246/226246),
done.
Checking
out
files:
100%
(7654/7654),
done.
48. git-‐‑‒hubから取得したものは最新のコードになります。
現在(8/2時点)は4.2.0が最新です。
今回は4.1.0をビルドしたいので、4.1.0をcheckoutし
ます。
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 48
ビルドするバージョンをcheckout
root@devcloud:~#
cd
cloudstack/
root@devcloud:~/cloudstack#
pwd
/root/cloudstack
root@devcloud:~/cloudstack#
git
tag
-l
4.0.0-incubating
4.0.1-incubating
4.0.2
4.1.0 ⇒今回の対象はこれ
4.1.1
root@devcloud:~/cloudstack#
git
checkout
-b
version4.1.0
refs/tags/4.1.0
Switched
to
a
new
branch
'version4.1.0'
49. mvn -‐‑‒P developer,systemvm clean install
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 49
管理サーバーをビルド
root@devcloud:~/cloudstack#
mvn
-P
developer,systemvm
clean
install
[INFO]
Scanning
for
projects...
Downloading:
http://repo.maven.apache.org/maven2/org/apache/apache/11/apache-11.pom
Downloaded:
http://repo.maven.apache.org/maven2/org/apache/apache/11/apache-11.pom
(15
KB
at
24.3
KB/sec)
[INFO]
------------------------------------------------------------------------
[INFO]
Reactor
Build
Order:
[INFO]
[INFO]
Apache
CloudStack
(略)
[INFO]
------------------------------------------------------------------------
[INFO]
Building
Apache
CloudStack
4.1.0
[INFO]
------------------------------------------------------------------------
(略)
[INFO]
Apache
CloudStack
Developer
Tools:
marvin
.........
SUCCESS
[3.187s]
[INFO]
Apache
CloudStack
Developer
Tools:
cloudmonkey
cli
SUCCESS
[0.471s]
[INFO]
------------------------------------------------------------------------
[INFO]
BUILD
SUCCESS
[INFO]
------------------------------------------------------------------------
[INFO]
Total
time:
12:37.537s
[INFO]
Finished
at:
Thu
Aug
01
06:16:09
UTC
2013
[INFO]
Final
Memory:
36M/93M
[INFO]
------------------------------------------------------------------------
かなり時間がかかります
50. mvn -‐‑‒P developer -‐‑‒pl developer,tools/devcloud -‐‑‒
Ddeploydb
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 50
DBをDeploy
root@devcloud:~/cloudstack#
mvn
-P
developer
-pl
developer,tools/devcloud
-Ddeploydb
[INFO]
Scanning
for
projects...
[INFO]
------------------------------------------------------------------------
[INFO]
Reactor
Build
Order:
[INFO]
[INFO]
Apache
CloudStack
Developer
Tools
[INFO]
Apache
CloudStack
DevCloud
(略)
[INFO]
Apache
CloudStack
Developer
Tools
.................
SUCCESS
[11.948s]
[INFO]
Apache
CloudStack
DevCloud
........................
SUCCESS
[4.220s]
[INFO]
------------------------------------------------------------------------
[INFO]
BUILD
SUCCESS
[INFO]
------------------------------------------------------------------------
[INFO]
Total
time:
17.165s
[INFO]
Finished
at:
Thu
Aug
01
06:20:56
UTC
2013
[INFO]
Final
Memory:
23M/56M
[INFO]
------------------------------------------------------------------------
root@devcloud:~/cloudstack#
ナニゴトもなければ
さっくり終わります
51. mvn -‐‑‒pl :cloud-‐‑‒client-‐‑‒ui jetty:run
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 51
管理サーバーを起動
root@devcloud:~/cloudstack#
export
MAVEN_OPTS="-Xms512m
-Xmx1024m
-XX:PermSize=256m
-
XX:MaxPermSize=512m
-Xdebug
-Xnoagent
-Djava.compiler=NONE
-
Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=n"
root@devcloud:~/cloudstack#
mvn
-pl
:cloud-client-ui
jetty:run
INFO
[utils.component.ComponentContext]
(Timer-2:)
Starting
com.cloud.server.ManagementServerImpl_EnhancerByCloudStack_90378b46
INFO
[cloud.server.ManagementServerImpl]
(Timer-2:)
Startup
CloudStack
management
server...
INFO
[cloud.cluster.ClusterServiceServletContainer]
(Thread-16:)
Cluster
service
servlet
container
listening
on
port
9090
INFO
[cloud.cluster.ClusterManagerImpl]
(Cluster-Heartbeat-1:)
We
are
good,
no
orphan
management
server
msid
in
host
table
is
found
INFO
[cloud.cluster.ClusterManagerImpl]
(Cluster-Heartbeat-1:)
No
inactive
management
server
node
found
WARN
[cloud.cluster.ClusterManagerImpl]
(Cluster-Notification-1:)
Notifying
management
server
join
event
took
16
ms
コマンド実⾏行行すると
メッセージが流流れっぱなしになります
52. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 52
管理サーバーGUIにアクセス
ユーザ名:admin
パスワード:password
http://192.168.56.10:8080/client/
53. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 53
初期設定画面
初期設定ウィザードが表⽰示されますが「スキップ」し
ちゃいます
57. 先ほどのターミナルに戻って「Ctrl + C」で停⽌止
再度度「mvn -‐‑‒pl :cloud-‐‑‒client-‐‑‒ui jetty:run」を実⾏行行
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 57
管理サーバーを再起動
rs,dhcpProviders,networkGurus,networkElements,org.springframework.context.annotation.Configurat
ionClassPostProcessor$ImportAwareBeanPostProcessor#0];
root
of
factory
hierarchy
2013-08-02
05:29:50.089:INFO:/client:Shutting
down
log4j
2013-08-02
05:29:50.102:INFO::Shutdown
hook
complete
[INFO]
Jetty
server
exiting.
[INFO]
------------------------------------------------------------------------
[INFO]
BUILD
SUCCESS
[INFO]
------------------------------------------------------------------------
[INFO]
Total
time:
59.102s
[INFO]
Finished
at:
Fri
Aug
02
05:29:50
UTC
2013
[INFO]
Final
Memory:
70M/495M
[INFO]
------------------------------------------------------------------------
root@devcloud:~/cloudstack#
root@devcloud:~/cloudstack#
mvn
-pl
:cloud-client-ui
jetty:run
INFO
[cloud.cluster.ClusterManagerImpl]
(Cluster-Heartbeat-1:)
We
are
good,
no
orphan
management
server
msid
in
host
table
is
found
INFO
[cloud.cluster.ClusterManagerImpl]
(Cluster-Heartbeat-1:)
No
inactive
management
server
node
found
WARN
[cloud.cluster.ClusterManagerImpl]
(Cluster-Notification-1:)
Notifying
management
server
join
event
took
16
ms
83. Apache CloudStack collaboration conference
jun 23-‐‑‒25, 2013 | santa clara, ca
のKeyNoteでも紹介されました!
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 83
JCSUG
http://www.slideshare.net/chipchilders/cloudstack-collab-2013-keynote
84. • Apache Project への貢献
– 翻訳&⽇日本語化
– Wiki 整備
• 技術ノウハウ蓄積・発信
– 深堀り会
– OCDET参加
• 普及啓蒙、コミュニティ活性化
– 広報
– イベント企画・運営
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 84
プロジェクト活動
85. • もうすぐApache CloudStack4.2も出ます
• 4.1で実装が⾒見見送られた機能もたくさんあり
4.2は更更にHotと思われます
• 新機能を深堀りするメンバーを募集しております!
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 85
深堀りメンバー募集
深堀りの先生です
87. • OpenIaaS研究会でCloudStack採⽤用
– Apache CloudStack 4.0を利利⽤用
– 拡張ネットワーク構成
– Proxy,AP,DB,LVSを冗⻑⾧長化
– Management ServerはAPとDBを分けた構成
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 87
OCDETでの活動
・OpenStack基盤とどのように連携するか
・OpenStorage研で構築しているSwiftとの連携
・データセンター間ネットワーク(OpenNetwork研)
・オーケストレーション
88. • 本格的な環境のApache CloudStackでさわれます!
• リモートでのアクセスが可能!
• Meetingもリモート参加可能!
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 88
OCDET活動メンバー絶賛募集中