使ってみよう CloudStack
- 1. 使ってみよう
CloudStack
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 1
⽇日本CloudStackユーザー会
Japan CloudStack User Group
2013年年09⽉月14⽇日
⽇日本CloudStackユーザー会
@MayumiK0
- 7. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 7
個⼈人でなくても
会社でもサーバを
たくさん⽤用意するのは
正直厳しいです(T_̲T)
(除:リッチな会社)
- 8. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 8
貧乏⼈人でも
サーバがなくても
CloudStackがしたい!
- 9. Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 9
そんなあなたに
DevCloud!
- 10. • DevCloud2
– CloudStackの開発やテストに使える
仮想アプライアンス
– VirtualBox上で動くOVAイメージ
DevCloud2って?
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 10
■参考:https://cwiki.apache.org/confluence/display/CLOUDSTACK/DevCloud
- 11. • Mac Book Air
• OS X 10.8.4
• メモリ 8GB
使用した環境
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 11
- 12. • DevCloud2のダウンロード
• VirtualBoxのインストール
• DevCloud2をVirtualBoxにimport
• VirtualBoxの設定
• DevCloud2内でCloudStack構築
• CloudStack設定
ざっくり手順
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 12
- 32. • ビルドに必要なパッケージを導⼊入
• git-‐‑‒hubから最新のコードを取得
• ビルドするバージョンをcheckout
• 管理理サーバーをビルド
• DBをDeploy
• 管理理サーバーを起動
• 管理理サーバーの設定(グローバル設定)
• 基本ネットワークのゾーンの作成
構築の流れ
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 32
- 33. apt-‐‑‒get update
パッケージの導入
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 33
root@devcloud:~#
apt-get
update
Ign
http://debian.lcs.mit.edu
wheezy
InRelease
Get:1
http://debian.lcs.mit.edu
wheezy
Release.gpg
[1,672
B]
Get:2
http://debian.lcs.mit.edu
wheezy
Release
[167
kB]
Get:3
http://security.debian.org
wheezy/updates
InRelease
[103
kB]
Get:4
http://debian.lcs.mit.edu
wheezy/main
Sources
[5,951
kB]
Get:5
http://security.debian.org
wheezy/updates/main
Sources
[46.4
kB]
Get:6
http://security.debian.org
wheezy/updates/contrib
Sources
[14
B]
Get:7
http://security.debian.org
wheezy/updates/non-free
Sources
[14
B]
Get:8
http://security.debian.org
wheezy/updates/main
i386
Packages
[95.0
kB]
Get:9
http://security.debian.org
wheezy/updates/contrib
i386
Packages
[14
B]
Get:10
http://security.debian.org
wheezy/updates/non-free
i386
Packages
[14
B]
Get:11
http://security.debian.org
wheezy/updates/contrib
Translation-en
[14
B]
Get:12
http://security.debian.org
wheezy/updates/main
Translation-en
[53.3
kB]
Get:13
http://security.debian.org
wheezy/updates/non-free
Translation-en
[14
B]
Get:14
http://debian.lcs.mit.edu
wheezy/non-free
Sources
[93.5
kB]
Get:15
http://debian.lcs.mit.edu
wheezy/contrib
Sources
[47.7
kB]
Get:16
http://debian.lcs.mit.edu
wheezy/main
i386
Packages
[5,864
kB]
Get:17
http://debian.lcs.mit.edu
wheezy/non-free
i386
Packages
[77.6
kB]
Get:18
http://debian.lcs.mit.edu
wheezy/contrib
i386
Packages
[42.3
kB]
Get:19
http://debian.lcs.mit.edu
wheezy/contrib
Translation-en
[34.8
kB]
Get:20
http://debian.lcs.mit.edu
wheezy/main
Translation-en
[3,852
kB]
Get:21
http://debian.lcs.mit.edu
wheezy/non-free
Translation-en
[66.1
kB]
Fetched
16.5
MB
in
8min
32s
(32.2
kB/s)
Reading
package
lists...
Done
- 34. apt-‐‑‒get install sudo
sudoの導入
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 34
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)
...
- 35. git clone https://git-‐‑‒wip-‐‑‒us.apache.org/repos/
asf/cloudstack.git
git-hubから最新のコードを取得
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 35
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.
- 37. mvn -‐‑‒P developer,systemvm clean install
管理サーバーをビルド
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 37
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]
------------------------------------------------------------------------
かなり時間がかかります
- 38. mvn -‐‑‒P developer -‐‑‒pl developer,tools/devcloud -‐‑‒
Ddeploydb
DBをDeploy
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 38
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#
ナニゴトもなければ
さっくり終わります
- 39. mvn -‐‑‒pl :cloud-‐‑‒client-‐‑‒ui jetty:run
管理サーバーを起動
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 39
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
コマンド実⾏行行すると
メッセージが流流れっぱなしになります
- 45. 先ほどのターミナルに戻って「Ctrl + C」で停⽌止
再度度「mvn -‐‑‒pl :cloud-‐‑‒client-‐‑‒ui jetty:run」を実⾏行行
管理サーバーを再起動
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 45
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
- 47. ゾーンを作成するために必要なパッケージを導⼊入
pip install mysql-‐‑‒connector-‐‑‒python
pip install requests
パッケージの導入
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 47
root@devcloud:~#
pip
install
mysql-connector-python
Requirement
already
satisfied
(use
--upgrade
to
upgrade):
mysql-connector-python
in
/usr/local/
lib/python2.7/dist-packages
Cleaning
up...
root@devcloud:~#
pip
install
requests
Downloading/unpacking
requests
Downloading
requests-1.2.3.tar.gz
(348Kb):
348Kb
downloaded
Running
setup.py
egg_info
for
package
requests
Installing
collected
packages:
requests
Running
setup.py
install
for
requests
Successfully
installed
requests
Cleaning
up...
- 48. mvn -‐‑‒P developer -‐‑‒pl tools/devcloud -‐‑‒
Ddeploysvr
基本ネットワークのゾーンの作成
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 48
root@devcloud:~/cloudstack#
mvn
-P
developer
-pl
tools/devcloud
-Ddeploysvr
[INFO]
Scanning
for
projects...
[INFO]
[INFO]
------------------------------------------------------------------------
[INFO]
Building
Apache
CloudStack
DevCloud
4.1.0
[INFO]
------------------------------------------------------------------------
[INFO]
[INFO]
---
maven-remote-resources-plugin:1.3:process
(default)
@
cloud-devcloud
---
[INFO]
[INFO]
---
maven-site-plugin:3.1:attach-descriptor
(attach-descriptor)
@
cloud-devcloud
---
[INFO]
[INFO]
---
exec-maven-plugin:1.2.1:exec
(default)
@
cloud-devcloud
---
[INFO]
[INFO]
---
maven-install-plugin:2.3.1:install
(default-install)
@
cloud-devcloud
---
[INFO]
Installing
/root/cloudstack/tools/devcloud/pom.xml
to
/root/.m2/repository/org/apache/
cloudstack/cloud-devcloud/4.1.0/cloud-devcloud-4.1.0.pom
[INFO]
------------------------------------------------------------------------
[INFO]
BUILD
SUCCESS
[INFO]
------------------------------------------------------------------------
[INFO]
Total
time:
56.613s
[INFO]
Finished
at:
Thu
Aug
01
06:29:32
UTC
2013
[INFO]
Final
Memory:
15M/36M
[INFO]
------------------------------------------------------------------------
root@devcloud:~/cloudstack#
- 67. 「mvn -‐‑‒P developer -‐‑‒pl tools/devcloud –
Ddeploysvr」は「devcloud.cfg」を利利⽤用している。
他のcfgも⽤用意されているので、それを使えば拡張ネット
ワークのゾーンの作成も可能
拡張ネットワークのゾーンの作成
Copyright (C) 2013 Japan CloudStack User Group All Rights Reserved. 67
root@devcloud:~/cloudstack/tools/devcloud#
pwd
/root/cloudstack/tools/devcloud
root@devcloud:~/cloudstack/tools/devcloud#
ls
devcloud-advanced.cfg
devcloud_internal-mgt.cfg
devcloud-advanced_internal-mgt.cfg
devcloud.cfg
ただし、これも、すんなり動くとは限りません
いろいろひっかかります