OpenStack Juno on SoftLayer by RDO

[PR]
OpenStackをご存知ですか?OpenStackはオープンソースのクラウドOSとして2010年に開発の始まったオープンソースプロジェクトです。OpenStackの開発にはHP、Redhat、IBM、Ciscoなどといった企業が名を連ねており、これだけを見ても注目度の高さが伺えます。リリースは半年毎に行われており、最新版は2014年10月にリリースされたJunoとなっています。今回はRedhat系OSを使用してOpenStackをインストールするためのRPMパッケージ群RDOを使用してSoftLayer上にOpenStack環境を構築していきます。
構成
物理構成
サーバー | ベアメタル(Xeon 1270 4 Cores メモリ 8GB) サーバ × 2台 |
---|---|
グローバルIP | Portable Public IP 16個 |
論理構成
- コントローラー兼ネットワークノード
OpenStack全体の操作を行うコンポーネント群と、外部からの通信を仮想マシンへルーティングするノードです。 - コンピュートノード
仮想マシンを配置、実行するノードです。
SoftLayerでのOrder
- ベアメタル2台のOrder
OSはCentOS 6.x(64bit)を選択します。
※執筆段階ではCentOS7がSoftLayer上で選択できなかったため、CentOS6から7へアップグレードを実施しております。アップグレードには若干コツが必要なので最後に紹介するビットアイル総合研究所ブログに掲載いたします。 - Portable Public IPのOrder
SoftLayerのダッシュボードから「Network->IP Management->Subnets」の画面を開き「Order IP Addresses」をクリック、「Portable Public」を選択し、16個のIPアドレスをOrderします。図3:PortableIP Order画面
RDOのインストール
インストールはPackStackというPuppetをベースとして作られたデプロイツールを利用して行います。基本的な手順は下記URLの公式インストール手順に従っています。
https://openstack.redhat.com/Quickstart
操作は全てコントローラノードのプライベートIPから行います。予めVPN接続し、プライベートIPアドレスでSSH接続を行ってください。
1. インストール準備
1
(1)RDOリポジトリのインストール
2
# yum install -y https://rdo.fedorapeople.org/rdo-release.rpm
3
(2)Packstackのインストール
4
# yum install -y openstack-packstack
5
(3)answerファイルの作成
6
# packstack --gen-answer-file=answers
7
(4)viを起動
8
# vi answers
2. インストールパラメータの変更
PackstackによるOpenStackインストールのパラメータを指定します。今回は最低限の設定としてネットワーク関連パラメータのみを指定しています。
1
CONFIG_COMPUTE_HOSTS=(*1)
2
CONFIG_NOVA_COMPUTE_PRIVIF=bond0
3
CONFIG_NOVA_NETWORK_PUBIF=bond1
4
CONFIG_NOVA_NETWORK_PRIVIF=bond0
5
CONFIG_PROVISION_DEMO_FLOATRANGE=(*2)
(*1)コンピュートノードのプライベートIPアドレス
(*2)Portable Public IPで取得したレンジ3. インストールの実行
インストールパラメータを設定したら、Packstackによるインストールを実行します。実行すると最初に各ノードのrootパスワードを聞かれるので入力します。
01
(5)インストール実行
02
# packstack --answer-file=answers
03
Welcome to Installer setup utility
04
Installing:
05
Clean Up
06
[ DONE ]
07
root@xx.xx.xx.xx's password:
08
root@xx.xx.xx.xy's password:
09
(中略)
10
* To use Nagios, browse to http://10.64.141.201/nagios username: nagiosadmin, password: 159e445f287048c3
最後にネットワークデバイスの設定を変更し再起動します。
01
(6)ブリッジデバイスの設定
02
# cd /etc/sysconfig/network-scripts/
03
# vi ifcfg-br-ex
04
05
(~~ファイル編集)
06
DEVICE=br-ex
07
DEVICETYPE=ovs
08
TYPE=OVSBridge
09
BOOTPROTO=static
10
NAME=br-ex
11
DEFROUTE=yes
12
IPV4_FAILURE_FATAL=yes
13
IPV6INIT=no
14
DNS1=8.8.8.8
15
IPADDR= {ifcfg-bond1から転記}
16
NETMASK={ifcfg-bond1から転記}
17
GATEWAY={ifcfg-bond1から転記}
18
19
(7)ネットワークデバイスの設定
20
# vi ifcfg-bond1
21
22
(~~ファイル編集)
23
DEVICE=bond1
24
BOOTPROTO=none
25
ONBOOT=yes
26
USERCTL=no
27
BONDING_OPTS="mode=4 miimon=100 downdelay=0
28
updelay=0 lacp_rate=fast xmit_hash_policy=1"
29
#------ここから削除------
30
# IPADDR= xxx.xxx.xxx.xxx
31
# NETMASK= xxx.xxx.xxx.xxx
32
# GATEWAY= xxx.xxx.xxx.xxx
33
#------ここまで削除------
34
#------ここから追加------
35
TYPE=OVSPort
36
NAME=bond1
37
DEVICETYPE=ovs
38
OVS_BRIDGE=br-ex
39
#------ここまで追加------
40
41
(8)再起動
42
# reboot
これで2台構成のOpenStack環境が構築されデモ用のユーザとネットワークが設定されました。