fbpx

CloudStack 調査報告書

この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。

2011年5月8日

CloudStackCommunity Edition 2.2  調査報告書

CloudStack は、Cloud.com 社が提供している IaaS (Infrastructure as a Service:サービスとしてのインフラストラクチャ)型クラウド環境構築用の基盤ソフトウェアである.CloudStack は 1 台以上のコンピュータ(以下ノード)から構成される.
CloudStack には,用途別に複数のエディションが存在する.オープンソースであり,無料で利用が可能な Community Edition,エンタープライズ向けで申し込みが必要であるが,商用サポートがついている Enterprise Edition , サ ー ビ ス プ ロ バ イ ダ 向 け の Service Provider Edition の 3 種 類 が提供されている.
CloudStack は,ユーザに複雑な知識を要することなく容易にクラウド環境を利用出来るよう実装されている.ユーザは,CloudStack が提供するウェブインタフェースより仮想サーバ(以下インスタンス)の作成や起動,停止などを行うことが出来る.

今回の報告書を公開することによって、多くの企業・団体で『CloudStack』を利用して情報システムインフラを構築する際に役立てていただくことを目的としている。

<目次>
1.1.概要

1.2.会社情報

2.アーキテクチャ

2.1Management Server

2.2Computing Node

2.3Storage Server

2.4.インスタンス

2.5Virtual Router

2.6Console Proxy

2.7.ネットワークの種類

2.7.1Public Network

2.7.2Direct Network

3CloudStack のインストール

Management Server

3.1Storage Server の設定

3.1.1NFS サーバの設定

3.2Computing Node のインストール

3.2.1FQDN の設定SELinuxの無効化

3.2.2Computing Node Agent のインストール

3.3Management Server のインストール設定

3.3.1FQDN の設定SELinuxの無効化

3.3.2バイナリのダウンロードと解凍

3.3.3Management Server のインストール

3.3.4MySQL サーバのインストール,設定

3.3.5Management Server の起動

3.3.6Secondary Storage システム VM テンプレートを設置

3.4CloudStack 構成のセットアップ

3.4.1Web UI からのアクセス

3.4.2ゾーンの設定

3.4.3クラスタの設定

3.4.4Secondary Storage の設定

3.4.5.インスタンスのテンプレートのダウンロード

4利用手順

4.1インスタンスの一覧

4.2インスタンスの作成

4.3インスタンスのコンソール

4.4インスタンスのアクション

4.5ドメインの設定

4.6アカウントマネージメント

4.7Service Offerings の設定

4.8Disk Offerings の設定

5まとめ

1.CloudStack
1.1.概要
CloudStack は,Cloud.com 社が提供している IaaS (Infrastructure as a Service:サービスとしての
インフラストラクチャ)型クラウド環境構築用の基盤ソフトウェアである.CloudStack は 1 台以上の
ンピュータ(以下ノード)から構成される.
CloudStack には,用途別に複数のエディションが存在する.オープンソースであり,無料で利用が
可能な Community Edition,エンタープライズ向けで申し込みが必要であるが,商用サポートがつい
い る Enterprise Edition , サ ー ビ ス プ ロ バ イ ダ 向 け の Service Provider Edition の 3 種 類 が
より提供されている.
CloudStack は,ユーザに複雑な知識を要することなく容易にクラウド環境を利用出来るよう実装さ
れている.ユーザは,CloudStack が提供するウェブインタフェースより仮想サーバ(以下インスタン
ス)の作成や起動,停止などを行うことが出来る.

1.2.会社情報
Cloud.com 社(旧 VMOps 社)は IaaS のクラウドコンピューティングを専門にする新興企業である.
Cloud.com 社自体はカリフォルニア州クパチーノに会社を構えている.2008 年 8 月,SEVEN
Networks 社のエンジニアリング担当バイスプレジデントであった Sheng Liang により設立された.
Cloud.com 社の社員数は約 40 人で,経営陣には Yahoo! 社のエンジニアリング担当シニアディレク
ターであった Kevin Kluge 氏,Solidcore Systems 社の EMEA(欧州・中東・アフリカ)業務担当バイ
スプレジデントだった Shannon Williams (業務開発担当バイスプレジデント)、そして元 Sun 社のマ
ーケティング担当シニアバイスプレジデントだった Peder Ulander 氏(マーケティング担当バイスプレ
ジデント)が名を連ねている.

2.アーキテクチャ
CloudStack は,物理ノードと仮想ノードで構成が異なる.ここでは,物理的な構成,仮想的な構成
として 2 つの構成図を説明する
最初に物理ノードの構成から説明する.物理ノードは図 1 のように接続される.物理構成では 3 種
類のコンポーネントが存在する.この図ではスイッチやルータなどの機器は含まれておらず,コンポ
ーネントの接続関係のみを示している.

図 1 物理ノードの構成図

CloudStack を構成する物理ノードのコンポーネントは以下の通りである.
・Management Server
・Computing Node
・Storage Server

次に CloudStack の仮想的な構成を図 2 に示す.

図 2 仮想ノードの構成図

CloudStack を構成する仮想ノードのコンポーネントは以下の通りである.
・インスタンス(仮想サーバ)
・Virtual Router
・Console Proxy

それぞれのコンポーネントについては以下で説明を行う.
2.1.Management Server
Management Server は,CloudStack のフロントエンドでユーザ用のウェブインタフェースと管理
用のウェブインタフェースを提供する.また,API の提供も行う.ユーザは Management Server を介
してインスタンスの操作を行う.
Management Server は,Computing Node や Storage Server の状態,インスタンスの情報などを
データベースで管理している.データベースには MySQL を利用しており,Management Server のバ
ックエンドで動作している.
2.2.Computing Node
Computing Node は , CloudStack 上 に お い て , コ ン ピ ュ ー テ ィ ン グ リ ソ ー ス を 提 供 す る .
CloudStack 上で提供するコンピューティングリソースとは,インスタンス(仮想マシン)を稼動させ
る為に割当てる CPU やメモリなどのことを指す.ユーザは Computing Node 上で動作するインスタン
スを割り当てられる.
Computing Node は,1 つのクラウドシステム内に 1 台以上存在し,各 Computing Node は
Management Server に登録することによってクラウドシステムに参加できる.
CloudStack 上で作成したインスタンスは,Computing Node で起動するが,どの Computing Node
上で起動するかは Management Server によって決定される.ユーザは作成したインスタンスがどの
Computing Node で起動しているかは関知せず,意識する必要がない.

2.3.Storage Server
Storage Server は,Management Server,Computing Node に対してストレージ領域を提供する.
Storage Server には,それぞれ Primary Server,Secondary Server の 2 種類のサーバを用意する必要がある.
Primary Server は,CloudStack 上で動作するインスタンスが使用する仮想ディスクを保存するため
のストレージ領域を提供する.Primary Server は,すべての Computing Node からマウントされ,
CloudStack 上で動作するすべてのインスタンスが利用する.
Secondary Server は,インスタンス作成時に利用するテンプレートイメージや ISO イメージ,ま
たはインスタンスのスナップショットを保存するためのストレージ領域を提供する.Secondary
Server のストレージ提供方法には,NFS が利用される.
Secondary Server は,Management Server からマウントされる.Secondary Server のストレージ
領域をマウントした Management Server は,ユーザからの要求に応じてテンプレートイメージのコ
ピーや,ISO イメージのマウント,スナップショットの保存を行う.

2.4.インスタンス
インスタンスは Computing Node 上で,ユーザのリクエストによって作成される仮想マシンである.
インスタンスは基本的に Guest Network に存在する,Guest Network は,CloudStack で管理される
ローカルネットワークであり,インスタンスがインターネットへアクセスする際には Virtual Router
を経由する.そのため,インスタンスは基本的に NAT 下に存在することになる.

2.5.Virtual Router
Virtual Router は,CloudStack 内でルータ機能を提供する仮想マシンである.インスタンスは,基
本的に Guest Network 内に作成される.Guest Network は CloudStack が管理するローカルネットワ
ークであるため,インスタンスがインターネットへアクセスする際にルータが必要となる.Virtual
Router は外部ネットワークと Guest Network を繋ぐルータ機能を提供する.また,CloudStack の機
能である PortForwarding や LoadBalancer や Guest Network の DHCP サーバの機能はこの Virtual
Router が提供する.

2.6.Console Proxy
Console Proxy は,インスタンスのコンソール画面をユーザに提供する機能を持つ仮想マシンであ
る.インスタンスのコンソール画面は VNC によって提供されるが,インスタンスを動作させる
Computing Node が必ず外部ネットワークに接続されているとは限らない. CloudStack では,
Computing Node のクラスタを外部ネットワークとは別のネットワークで構築することも可能だから
である.そのため,CloudStack で管理される Public IP アドレスを割り当てた Console Proxy を経
由し,Computing Node にアクセスすることによって CloudStack の内部構成に関係なくユーザへコ
ンソール画面の提供を実現している.

2.7.ネットワークの種類
CloudStack では,2 つのネットワークが利用できる.1 つは Public Network で,もう 1 つは
Direct Network である.それぞれのネットワークモードの構成を図 3 に示す.

図 3 Public Network と Direct Network

2.7.1.Public Network
Public Network では,インスタンスは Virtual Router を経由して外部ネットワークにアクセスする.
この時,外部ネットワークにアクセスできる IP アドレスを CloudStack では Public IP アドレス と
呼び,Public IP アドレスのネットワークを Public Network と呼んでいる.一方,Virtual Router とイ
ンスタンス間のネットワークは Guest Network と呼び,各インスタンスは Guest IP アドレスを持つ.
Public Network では,CloudStack の PortForwarding や LoadBalancer の機能が利用出来る.この
機能を利用することにより,NAT 下にいるインスタンスは外部ネットワークへのサービス提供を行う
ことができる.

2.7.2.Direct Network
Direct Network では,インスタンスが直接外部ネットワークに接続する.このとき,Virtual Router
が存在しないため Public Network で利用できた PortForwarding や LoadBalancer などの機能は使用
できない.しかし,インスタンスは外部ネットワークに直接アクセスできるため,ダイレクトネット
ワークに接続しているインスタンスはグローバルなノードとして扱うことができる.

3.CloudStack のインストール
CloudStack の各コンポーネントのシステム要件を表 1 にまとめる.

表 1 各コンポーネントのシステム要件

Management Server ・64-bit x86 CPU
・2 GB 以上のメモリ
・80 GB 以上のローカルディスク
・1 つ以上のネットワークインタフェースカード
・RHEL/CentOS 5.4+ 64-bit または RHEL6 64-bit
・固定 IP アドレス
・Fully Qualified Domain Name(hostname コマンドで設定)

Computing Node ・64-bit x86 CPU
・Intel-VT または AMD-V のサポート
・4 GB 以上のメモリ
・30 GB 以上のローカルディスク
・1 つ以上のネットワークインタフェースカード
・固定 IP アドレス
・Citrix XenServer 5.6, RHEL/CentOS 5.6 64-bit, Fedora 14 64-bit ま
たは RHEL6 (64-bit)

Storage Server ・NFS Server として利用出来る UNIX OS
・100 GB 以上のローカルディスク

Database Node ・Management Server と併用ができる
・併用しない場合は、Management Server と同じ要件

本ドキュメントでは,これらの要件をすべて満たしている環境があることを前提に話を進める.な お,CloudStack を構築する上で 各コンポーネントが別ノードである必要はなく,1 台のノードで CloudStack を構築することも可能である.また,Management Server,Storage Server は仮想化技術 を必要としないため,これらのコンポーネントは仮想マシンを用いて構築することも可能である.た だし,Computing Node だけは Intel-VT,AMD-V のサポートが必須となっているため,仮想マシンを 用いての構築は不可能である.
本ドキュメントでは,図 4 の構成を想定して CloudStack のインストール方法を説明する.本ドキ
ュメントで説明する構成は,Management Server,Computing Node,Storage Server は同じネットワ
ークに存在しており,上位のルータを経由してインターネットへアクセスする.

図 4 CloudStack の物理構成

3.1.Storage Server の設定
本 節 で は , Storage Server の 設 定 方 法 を 説 明 す る . Storage Server は , Primary Storage と
Secondary Storage の 2 種類存在するが,設定方法は同じである.本節は RHEL/CentOS/Fedora を
対象とした手順となっている。
3.1.1.NFS サーバの設定
最初に NFS サーバの export 用ディレクトリを作成する.

mkdir /export

今回,Primary Storage と Secondary Storage を同じ NFS サーバで使用するため,それぞれのフ ォルダを作成する.

mkdir /export/primary mkdir /export/secondary

/export ディレクトリを NFS サーバのストレージとして提供するため,以下のコマンドを実行する.

echo '/export *(rw,async,no_root_squash)' >> /etc/exports

特に,no_root_squash オプションは必須であり,この設定がないとストレージ登録時にエラーメッ セージが表示される.また,ここの例ではセキュリティは特に気にしていない.そのため,この設定 ではどのノードでもディレクトリをマウントできる.
/etc/sysconfig/nfs ファイルの下記の行からコメントを外す.

LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
RQUOTAD_PORT=875
STATD_PORT=662
STATD_OUTGOING_PORT=2020

/etc/sysconfig/iptables ファイルを開き,INPUT チェーンの最初に下記の行を追加する.

-A INPUT -m state --state NEW -p udp --dport 111 -j ACCEPT
-A INPUT -m state --state NEW -p tcp --dport 111 -j ACCEPT
-A INPUT -m state --state NEW -p tcp --dport 2049 -j ACCEPT
-A INPUT -m state --state NEW -p tcp --dport 32803 -j ACCEPT
-A INPUT -m state --state NEW -p udp --dport 32769 -j ACCEPT
-A INPUT -m state --state NEW -p tcp --dport 892 -j ACCEPT
-A INPUT -m state --state NEW -p udp --dport 892 -j ACCEPT
-A INPUT -m state --state NEW -p tcp --dport 875 -j ACCEPT
-A INPUT -m state --state NEW -p udp --dport 875 -j ACCEPT
-A INPUT -m state --state NEW -p tcp --dport 662 -j ACCEPT
-A INPUT -m state --state NEW -p udp --dport 662 -j ACCEPT

IP テーブルを再起動する.

# service iptables restart

NFS を起動する.

# service nfs start

ブート時に NFS が自動で起動するように設定する.

# chkconfig nfs on

3.2.Computing Node のインストール
本節では,Computing Node に CloudStack の agent パッケージをインストール,Management
Server へ接続する手順を説明する.ただし,Computing Node が XenServer 5.6 の場合は追加でイン
ストールすべきものはなく,そのまま利用することができる.なので、以下は KVM 環境でのインス
トール手順となる.

3.2.1.FQDN の設定と SELinux の無効化
Computing Node に CloudStack の agent パッケージをインストール,設定を行う前に,Fully-
Qualified Domain Name(FQDN) の設定および SELinux の名前解決の無効化を行う.
SELinux の無効化は,/etc/selinux/config ファイルの変数 SELinux を Permissive に設定する.ま
た,下記コマンドを実行することにより,再起動の必要なく現在のセッションにも SELinux の変更設
定を反映できる.

# setenforce permissive

3.2.2.Computing Node に Agent のインストール
CloudStack のバイナリをダウンロードする.手順は Management Server のインストールの節を参
照のこと.ダウンロード,解凍,及びディレクトリ移動の手順後,agent パッケージをインストール
する.

# ./install.sh
Setting up the temporary repository... Cleaning Yum cache...
Loaded plugins: fastestmirror
0 metadata files removed
Welcome to the Cloud.com CloudStack Installer for opensource version. What would you like to do?

M) Install the Management Server
A) Install the Agent
D) Install the database server
Q) Quit

> A

3.3.Management Server のインストールと設定
本節では,CloudStack Management Server のインストール及び設定方法を説明する.Management
Server のインストール,設定では,FQDN,MySQL そして Management Server コンポーネントの
設定などを行う.

3.3.1.FQDN の設定と SELinux の無効化
Management Server のインストール,設定を行う前に,Fully-Qualified Domain Name(FQDN) の設
定および SELinux の名前解決の無効化を行う.
FQDN の設定は,hostname コマンドによる方法と /etc/hosts ファイルを編集する方法がある.し
かし,hostname コマンドでの設定を行った場合,再起動時にホストネームの設定が消えてしまうた
め /etc/hosts ファイルに FQDN を記述しておくほうがよい.
FQDN は完全修飾ドメイン名と呼ばれ,ドメイン名,サブドメイン名,ホスト名を省略せずに記述
する.例えば,cloud.example.com は FQDN であるが, ホスト名だけの cloud は FQDN ではない.
また,/etc/selinux/config ファイルの変数 SELinux を Permissive に設定する.また,下記コマン
ドを実行することにより,再起動の必要なく現在のセッションにも SELinux の変更設定を反映できる.

# setenforce permissive

3.3.2.バイナリのダウンロードと解凍
まずは CloudStack のバイナリをダウンロードする.wget を使用したダウンロードは下記の通りと
なる.

# wget http://sourceforge.net/projects/cloudstack/files/Cloudstack%202.2/2.2.3/cloudstack-2.2.3-1- el5-oss.tar.gz/download

ダウンロードした CloudStack の解凍を行い,ディレクトリを移動する.

# tar xzf cloudstack-2.2.3-1-el5-oss.tar.gz
# cd CloudStack-2.2.3-1-rhel5-oss

3.3.3.Management Server のインストール
本節では,Management Server パッケージのインストールを行う.

# ./install.sh
Setting up the temporary repository... Cleaning Yum cache...
Loaded plugins: fastestmirror
0 metadata files removed
Welcome to the Cloud.com CloudStack Installer for opensource version. What would you like to do?

M) Install the Management Server
A) Install the Agent
D) Install the database server
Q) Quit

> M

3.3.4.MySQL サーバのインストール,設定
本節では,Management Server のバックエンドで動作する MySQL のインストールを行う.

# ./install.sh
Setting up the temporary repository... Cleaning Yum cache...
Loaded plugins: fastestmirror
0 metadata files removed
Welcome to the Cloud.com CloudStack Installer for opensource version. What would you like to do?

M) Install the Management Server
A) Install the Agent
D) Install the database server
Q) Quit

> D

MySQL の設定ファイルを編集する./etc/my.cnf ファイルを開き,下記の行を [mysqld] セクション に加える.

innodb_rollback_on_timeout=1 innodb_lock_wait_timeout=600 max_connections=350

MySQL を再起動し,ブート時に自動的に起動するよう設定する.

# service mysqld restart
# chkconfig mysqld on

データベースの初期設定を行う.MySQL に root パスワードが設定されている場合,deploy-as パ ラメータを –deploy-as=root:password に変更する.

# cloud-setup-databases cloud:password@localhost --deploy-as=root

3.3.5.Management Server の起動
最後に Management Server のセットアップを行う.Management Server のセットアップでは,
iptables の設定と sudoers の設定を行い,Management Server を起動する.

# cloud-setup-management

3.3.6.Secondary Storage にシステム VM テンプレートを設置
全ての Zone の Secondary Storage には Virtual Router などのシステム VM のテンプレートをあ
らかじめ設置しておく必要がある.本節は Secondary Storage 毎に実施すべき手順が記載されている.
Secondary Storage の NFS マウント用のディレクトリを作成する.

# mkdir /mnt/secondary

Secondary Storage の NFS をマウントする.

# mount -t nfs :/export/secondary /mnt/secondary

システム VM のテンプレートのダウンロードとインストールを行う.

# /usr/lib64/cloud/agent/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/releases/2.2.0/systemvm.vhd.bz2 -h xenserver -F

Secondary Storage の NFS をアンマウントする.

# umount /mnt/secondary

3.4.CloudStack 構成のセットアップ

3.4.1.Web UI からのアクセス
Management Server の設定は,Web UI より行う.Web UI には以下の URL でアクセスできる.

http://:8080/client

正しく Management Server が起動していれば図 5 のようなログイン画面が表示される.デフォル トで設定されているアカウントは「admin」,パスワードは「password」となっている.ログイン後 は,図 6 のような Dashboard 画面が表示される.

図 5 Management Server のログイン画面

図 6 CloudStack の Dashboard 画面

Management Server への初回アクセス時は,CloudStack の中で Zone や Pod などの物理リソー スの設定を行う必要がある.左の System ボタンをクリックし,プルダウンから Physical Resources を選択する.すると,図 7 のような Resource 画面が表示される.

図 7 Resource 画面

3.4.2.ゾーンの設定
物理リソースの設定として最初にゾーンの設定を行う.画面上部の Add Zone ボタンをクリックす
る.すると設定用のウィザードが表示されるので,下記の項目を設定する.

Step 1: Select a Network
Step 1 では,図 8 のような Select a Network 画面となる.ここでは,Basic Mode か Advanced Mode を選択する.VLAN を使用せず直接 IP をインスタンスに割り振りたい場合は,Basic Mode を 使用する.VLAN や Security Group を使用する場合は Advanced Mode を選択する.今回は Basic Mode を使用した場合の設定を記載する.

図 8 Select a Network 画面

Step 2: Add a Zone
Step 2 では,図 9 のような Add a Zone 画面となる.ここで設定される Zone の情報は以下の通 りである.

Name:Zone の名前(ユニークな名前)
DNS1:Guest VM 用の Public Network で利用できる DNS サーバの IP アドレス.
DNS2:DNS1 と同様.Secondary として扱われる.
Internal DNS1:System VM 用の DNS サーバの IP アドレス.
Internal DNS2:Internal DNS1 と同様.こちらも Secondary として扱われる.
Public?:Public Mode かどうかの指定.

設定例としては,以下のようになる.

Name : zone1
DNS1 : 192.168.3.1
DNS2 : 192.168.3.2
Internal DNS1 : 192.168.3.1
Internal DNS2 : 192.168.3.2
Public? : Yes

図 9 Add a Zone 画面

Step 3: Add a Pod
Step 3 では,図 10 のような Add a Pod 画面となる.ここで設定される Pod の情報は以下の通 りである.

Name:Pod の名前(ユニークな名前) Gateway:Private Network の Gateway アドレス. Netmask:Private Network のネットマスクを設定.
Reserved System IP:System IP として予約された IP アドレスの範囲を指定.

ここで入力するのは,Computing Node や Storage Server が所属する Private Network の IP アド レスである.Reserved System IP は,CIDR で設定した中で Cloudstack が割り当てる IP アドレス の範囲を設定する.入力欄は 2 つあり,開始アドレスと最終アドレスを入力する.設定例としては以 下のようになる.

POD:pod1
Gateway:192.168.3.1
Netmask:255.255.255.0
Reserved System IP:192.168.3.101 - 192.168.3.150

図 10 Add a Pod 画面

Step 4: Add an IP range
Step 4 では,図 11 のような Add an IP range 画面となる.ここで設定される Zone の情報は以 下の通りである.IP アドレスは Global IP アドレスのように使用されため,CloudStack 環境におい ても Global な IP アドレスであることが望ましい.設定に必要な項目は以下のとおりである.

Guest Gateway : Public Network で利用している Gateway の IP アドレス.
Guest Netmask : Public Network の Netmask.
Guest IP Range : Public Network で利用する IP アドレスの範囲.

設定例としては以下のようになる.

Guest Gateway: 192.168.3.1
Guest Netmask: 255.255.255.0
Guest IP Range: 192.168.3.151 - 192.168.3.200

図 11 Add an IP range 画面

結果画面
Step 1 から Step 4 までの入力が終わると,Zone,Pod,IP range が作成され,図 12 のように結
果画面に反映される.

図 12 確認画面

この設定後,クラスタの設定や Storage などの追加を行う.
3.4.3.クラスタの設定
本節ではクラスタの設定手順について説明する.各クラスタには一つ以上のホストと,一つ以上の
Primary Storage の設定が必要だ.

クラスタ追加
まずはクラスタの追加を行う.左のメニューの Physical Resources から,先ほど作成した Zone
の Pod を選択し,画面上部の Add Cluster をクリックする.すると,図 13 のようなクラスタ追加
の画面になる.設定に必要な項目は以下のとおりである.

Hypervisor : クラスタが使用する Hypervisor を選択する.
Zone : クラスタの対象の Zone を選択する.
Pod : クラスタの対象の Pod を選択する.
Cluster : クラスタ名を入力する.

設定例としては,以下のようになる.

Hypervisor : XenServer
Zone : zone1
Pod : pod1
Cluster : cluster1

図 13 クラスタ追加

クラスタにホスト追加 クラスタ作成後,ホストの追加を行う.左のメニューから作成したクラスタを選択し,画面上部の
Add Host をクリックする.すると,図 14 のようなホスト追加の画面になる.設定に必要な項目は以 下のとおりである.

NFS Server : NFS を提供しているサーバの IP アドレス,または FQDN を入力する.
Path : NFS でマウントするための Path を設定する.

設定例としては,以下のようになる.

NFS Server : 192.168.3.3
Path : /export/secondary

クラスタに Primary Storage 追加

図 14 ホスト追加

クラスタにホストを追加したら,今度は Primary Storage の追加を行う.Primary Storage は冒頭で

説明したようにインスタンスのディスクイメージを保存するサーバである.Primary Storage には NFS が利用できる. Primary Server は Computing Node からマウントされるため,Primary Server は Computing Node からアクセスできる必要がある.
左のメニューから対象のクラスタを選択し,画面上部の Add Primary Storage をクリックする.す ると,図 15 のような Primary Storage 追加の画面になる.設定に必要な項目は以下のとおりである.

Cluster : Primary Storage を利用するクラスタ名を選択する.
Name : Primary Storage の名前を入力する.ユニークな名前を入力する.
Protocol : Primary Storage で利用するプロトコルを選択する.
Server : Primary Storage を提供する Server の IP アドレス,または FQDN を入力する.
Path : NFS での Path を入力する.
Tags : Primary Storage のタグを入力する.

入力例としては,以下のようになる.

Cluster : cluster1
Name : primarystorage1
Protocol : NFS Server : 192.168.3.3
Path : /export/primary
Tags : (無記入)

図 15 Primary Storage 追加

3.4.4.Secondary Storage の設定
本節では Secondary Storage の設定について説明する.Secondary Storage は各 Zone 毎に設定を
行う.Secondary Storage はインスタンスのテンプレートやスナップショットなどを保存するディス
クスペースを提供する.Secondary Storage は Management Server からマウントされる.そのため,
Secondary Storage は Management Server からアクセスできる必要がある.
左のメニューから対象の Zone のプルダウンを開き Secondary Storage を選択する.その後,画面
上部の Add Secondary Storage をクリックすると,図 16 のような Secondary Storage 追加の画面
になる.設定に必要な項目は以下のとおりである.

NFS Server : NFS を提供しているサーバの IP アドレス,または FQDN を入力する.
Path : NFS でマウントするための Path を設定する.

設定例としては,以下のようになる.

NFS Server : 192.168.3.3
Path : /export/secondary

図 16 Secondary Storage 追加

3.4.5.インスタンスのテンプレートのダウンロード
物理リソースの設定後,CloudStack の初期設定は一旦終了となる.ここで Dashboard 画面を確認
すると,図 17 のように物理リソースの情報が反映されていることがわかる.なお,Secondary
Storage Used はシステム VM の起動後に更新されるため,情報の反映には少し時間がかかる.シス
テム VM に関しては,これまでの設定に問題がなければ,CloudStack 内部で自動的に起動される.
左のメニューから,System プルダウンの Virtual Resources の System VMs をクリックすると,図
18 のようなシステム VM 画面となり,起動状況を確認することができる.

図 17 物理リソース設定後の Dashboard 画面

図 18 システム VM 画面

システム VM の起動後,OS テンプレートのダウンロードは自動的に始まる.左のメニューの Templates プルダウンから My Templates を選択し,サブメニューから対象の OS のテンプレートを クリックする.対象の OS はホストが使用している Hypervisor によって異なる.すると,図 19 の ような Templates 画面となり,Download Progress から進行状況を確認することができる.

図 19 テンプレートのダウンロード ダウンロードが完了すると,Status が Ready となり,そのテンプレートを使用してインスタンス
を起動できるようになる.

4.利用手順
本章では,CloudStack の利用手順を説明する.
4.1.インスタンスの一覧
イ ン ス タ ン ス の 一 覧 は , CloudStack の Web UI か ら 確 認 が で き る . 左 の メ ニ ュ ー に あ る
Instances プルダウンから My Instances をクリックすると,図 20 のようなインスタンスの一覧画面
になる.インスタンスを作成するには,上のメニューから Add Instance をクリックする.

図 20 インスタンスの一覧
4.2.インスタンスの作成
インスタンスの作成は,画面の上部にある Add Instance から行う.今回は先ほどダウンロードした
テンプレートを使用することにする.テンプレートからのインスタンス作成は,既に OS のインスト
ールされたイメージファイルを指定するため,すばやく使用可能な状態のインスタンスを作成するこ
とができる.
作成手順を以下に示す.
1.画面上部のメニューから Add Instance をクリック(図 21 の画面が表示される)
2.Featured Templates もしくは My Templates,Community Templates のいずれかをクリック
各グループは以下の種別で分類される
Featured Templates:CloudStack が提供しているテンプレート
My Templates:ログインユーザ専用のテンプレート
Community Templates:コミュニティ内で提供されているテンプレート
3.作成したい OS を選択し,「Go to Step 2」をクリック(図 22 の画面が表示される)
4.利用する Service を選択し,「Go to Step 3」をクリック.(図 23 の画面が表示される)
5.利用する Data Disk を選択し,「Go to Step 4」をクリック.(図 24 の画面が表示される)
6.利用する Network を選択し,「Go to Step 5」をクリック.(図 25 の画面が表示される)
7.インスタンス名,グループ名を入力し,インスタンスの情報を確認した後,「Submit」をクリック.
インスタンス名は,作成後のインスタンス名となる.
グループ名は,複数のインスタンスをグループとして扱うための名前を入力する.これはインス
タンスの検索に利用する.

特に問題がなければテンプレートの展開が始まり,インスタンスが作成される.作成されたインス タンスは自動的に起動され,図 26 のような画面になる.

図 21 テンプレートイメージからのインスタンス作成

図 22 Service Offering の選択

図 23 Data Disk Offering の選択

図 24 Network の選択

図 25 最終確認画面

図 26 インスタンスの追加と起動に成功

4.3.インスタンスのコンソール
本節では,インスタンスのコンソール画面へのアクセス方法を説明する.
CloudStack では,作成したインスタンスのコンソール画面に Web UI からアクセスすることがで
きる.インスタンスの一覧画面のサブメニューから対象のインスタンスを選択し,アイコンサイズの
コンソール画面をクリックすると,図 27 のようにクリックしたインスタンスの画面が別ウィンドウ
で表示される.この画面ではキーボード操作を受け付けるため,実際にログインし,操作を行うこと
が可能となっている.

図 27 インスタンスのコンソール画面
4.4.インスタンスのアクション
本節では,インスタンスのアクションの方法を説明する.これらの操作はほとんど同じ手順で行う
ことができる.操作自体は,Web UI のインスタンスの一覧画面から行う.
以下に,操作の手順を示す.
1.サブメニューから対象のインスタンスを選択する
2.画面の右上にある Actions にマウスカーソルを乗せる(図 28 の画面が表示される)
3.任意の操作ボタンをクリック
Start Instance:インスタンスの起動
Edit Instance:インスタンスの編集
Stop Instance:インスタンスの停止(強制停止)
Reboot Instance:インスタンスの再起動(強制再起動)
Destroy Instance:インスタンスの削除
Attach ISO:ISO データのアタッチ
Reset Password:パスワードのリセット

なお,インスタンスの削除を実行しても,Destroyed となり,完全な削除は約 2 日後に行われる. それまでは Restore のボタンから復旧可能である.また,インスタンスの停止は強制停止となり, OS の終了処理を行わず即座に電源が落ちてしまうことに注意したい.

図 28 インスタンスのアクション
4.5.ドメインの設定
CloudStack では,Root 以外にもドメインを追加することができる.Web UI の画面の左のメニュ
ーから Domains の Root をクリックする.すると,図 29 のようなドメイン情報の画面が表示され
る.

図 29 ドメイン情報

画面上部の Add Domain をクリックすると,図 30 のようなドメイン追加の画面が表示される.ド メインの追加では,Name と Parent Domain の設定のみ行う.Name はドメインの名前を,Parent Domain は親となるドメインを選択する.選択後 Add をクリックすればドメインの追加は完了である.

図 30 ドメインの追加 また,各ドメインは提供する仮想リソースのリミットを参照・変更することが可能となっている.
変更の対象となるドメインを選択し,Resource Limit タブをクリックすると,そのドメインのリソー
スのリミットを確認することができる.ここで画面の右上にある Actions の上にマウスカーソルを乗
せる,Edit Resource Limit をクリックすると,ドメインが提供するリソースのリミットを変更するこ
とが可能となる.

図 31 ドメインのリソースの編集

4.6.アカウントマネージメント
CloudStack では,Root 管理用として Admin アカウントがデフォルトで登録されているが,これ
以外にも管理者アカウントやユーザアカウントを追加することができる.また,各アカウントには一
つ以上のユーザ情報を登録する必要がある.Web UI の画面の左のメニューから Accounts の My
Accounts をクリックする.すると,図 32 のようなアカウントの一覧画面が表示される.

図 32 アカウントの一覧

アカウントの作成には,アカウントの一覧画面の上部にある Add Account をクリックする.すると, 図 33 のようなアカウント追加画面が表示される.アカウントの作成では,そのアカウントを使用す るユーザ一人分の作成も同時に行う.
アカウントの追加で入力する項目は以下のとおりである.

Username:ユーザ名を入力.ログイン時に使用するのはここで入力するユーザ名である.
Password:ユーザのパスワードを入力.
Email:ユーザのメールアドレスを入力.
First Name:ユーザのファーストネームを入力.
Last Name:ユーザのラストネームを入力.
Account Name:アカウントの名前を入力.
Role:User か Admin を選択する.Admin を選択した場合,Root か否かで役割が異なる.
Domain:アカウントの対象となるドメインを選択する.
Timezone:タイムゾーンを選択する.日本の場合,[UTC+09:00] Japan Standard Time となる.

図 33 アカウントの追加

アカウントの追加に成功すると,図 34 のようにアカウントの一覧画面に,新しく追加したアカウ ントの情報が反映される.

図 34 アカウントの追加に成功

アカウント作成後はそのアカウントで Web UI にログインできる.画面の見栄えや機能制限などは, 選択した Role と Domain によって異なる.一例として Role を User に選択した場合,画面 35 の ような Dashboard 画面が表示される.

図 35 一般ユーザ用の Dashboard 画面

4.7.Service Offerings の設定
Service Offerings の設定では,ユーザに提供する仮想サーバのスペックの定義を行う.Web UI の
左のメニューの Configuration プルダウンから Service Offerings をクリックすると,図 36 のような
Service Offering の一覧画面が表示される.

図 36 Service Offering の一覧

画面の上部にある Add Service Offering をクリックすると,図 37 のような新しい Service Offering を追加する画面になる.追加した Service Offering は,インスタンス作成時に選択できる.Service Offering の設定で必要な項目は以下のとおりである.

Name:ユニークな名前を入力.
Display Text:Service Offering の詳細を入力.
Storage type:ディスクイメージの保存場所.Shared か Local を選択.
# of CPU cores:使用する CPU 数を入力.
CPU (in MHz):CPU1 コア辺りの周波数を入力.
Memory(in MB):インスタンスが使用するメモリ容量を入力.
Offer HA?:HA を提供するかどうかを選択.
Tags:Service Offering の検索に使用.
Public?:公開するかどうかを選択.

図 37 Service Offering の追加

4.8.Disk Offerings の設定
Disk Offerings の設定では,インスタンスが使用するディスクサイズを設定する.Web UI の
Configuration プルダウンから Disk Offerings をクリックすると,図 38 のような Disk Offering の一
覧画面が表示される.

図 38 Disk Offering の一覧

画面の上部にある Add Disk Offering をクリックすると,図 39 のような新しい Disk Offering を 追加する画面になる.追加した Disk Offering は,インスタンス作成時に選択できる.ここで必要な項 目は以下のとおりである.

Name:ユニークな名前を入力.
Description:Disk Offering の詳細を入力.
Custom Disk Size?:ディスクイメージのサイズをカスタムにするかどうかを選択.
Disk Size (in GB):ディスクイメージのサイズを入力.
Tags:Disk Offering の検索に使用.
Public?:公開するかどうかを選択.

図 39 Disk Offering の追加

5.まとめ
本ドキュメントでは,CloudStack の概要,インストール方法から利用手順までまとめた.本ドキュ
メントで解説しているオープンソース版の Community Edition では,ハイパーバイザのサポートは
KVM と XenServer となっているが,商用向けの Enterprise Edition,Service Provider Edition では,
VMware もサポートされている.

CloudStack の導入や設定の際にエラーが発生した場合,Management Server のログファイルを確 認して欲しい.Management Server のログファイルは以下のディレクトリに保存されている. Management Server のログファイルの保管場所
/var/log/cloud/management/management-server.log

CloudStack はまだ開発途中であり,速いスピードで更新されている.そのため,本ドキュメントの インタフェースと異なることや,予期せぬエラーなどが発生することも十分に考えられる.充実した Web UI を提供している CloudStack であるが,このインタフェースも将来変更される可能性がある.

新規CTA