CentOS7にpackstackを使ってOpenStack(kilo)をallinone構成でインストール

環境

  • OSインストール: 最小構成
  • CPU: 2
  • MEM: 4G
  • Network: enoxxxxx: 192.168.1.41
  • NIC: ens31 ens32

手順

まずはSELinuxの無効化

# vi /etc/selinux/config

SELINUX=disabled

ホスト名の変更

# vi /etc/hostname

kilo

パッケージをアップグレードして再起動

# yum upgrade
# reboot

NetworkManagerの停止と無効化:

# systemctl stop NetworkManager
# systemctl disable NetworkManager
# systemctl restart network
# systemctl enable network

カーネルパラメータの設定: この設定を書き込み、後述のコマンドで反映させます。

# vi /usr/lib/sysctl.d/00-system.conf

net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.all.forwarding = 1

設定を反映

# sysctl -e -p /usr/lib/sysctl.d/00-system.conf

ホスト名の設定:

# hostnamectl set-hostname kilo

hostnameに設定したホスト名を、hostsファイルの管理LANとするエントリーに追加します。

# vi /etc/hosts

192.168.1.41  kilo

ソフトウェアパッケージのインストールとアップデートを行います。

次のコマンドを実行してリポジトリーを有効化:

# yum install -y http://rdoproject.org/repos/openstack-kilo/rdo-release-kilo.rpm

インストール

# yum install -y openstack-packstack

インストール項目の各種設定を記述するアンサーファイルの生成

# packstack --gen-answer-file=packstack-answer.txt
Packstack changed given value  to required value /root/.ssh/id_rsa.pub

アンサーファイルを編集、必要なパラメータの説明

CONFIG_COMPUTE_HOSTS=computeのプライベートIP,computeのプライベートIP,・・・
CONFIG_NETWORK_HOSTS=controllerのプライベートIP
CONFIG_STORAGE_HOST=controllerのプライベートIP
CONFIG_AMQP_HOST=controllerのプライベートIP
CONFIG_MARIADB_HOST=controllerのプライベートIP
CONFIG_NOVA_COMPUTE_PRIVIF=computeのプライベート側インターフェイス
CONFIG_NOVA_NETWORK_PUBIF=controllerのパブリック側インターフェイス
CONFIG_NOVA_NETWORK_PRIVIF=controllerのパブリック側インターフェイス
CONFIG_NOVA_NETWORK_FLOATRANGE=FloatingIPのネットワーク

編集箇所のみ抜粋

# vi packstack-answer.txt

CONFIG_DEFAULT_PASSWORD=password
CONFIG_HEAT_INSTALL=y

# Specify 'y' to provision for demo usage and testing. ['y', 'n']
CONFIG_PROVISION_DEMO=n

# Private interface for flat DHCP on the Compute servers.
CONFIG_NOVA_COMPUTE_PRIVIF=ens32

# Public interface on the Compute network server.
CONFIG_NOVA_NETWORK_PUBIF=ens31

# Private interface for flat DHCP on the Compute network server.
CONFIG_NOVA_NETWORK_PRIVIF=ens32

packstackの実行

# packstack --answer-file=packstack-answer.txt

無事インストールできたか確認するために、ブラウザで設定したアドレスにアクセスしてみる。 http://IPアドレスにアクセスしてopenstackの画面が表示されればOK

adminのパスワードを変更する

# source keystonerc_admin
# keystone user-password-update --pass admin_password admin
/usr/lib/python2.7/site-packages/keystoneclient/shell.py:65: DeprecationWarning: The keystone CLI is deprecated in favor of python-openstackclient. For a Python library, continue using python-keystoneclient.

'python-keystoneclient.', DeprecationWarning)

これで、ブラウザからadmin/admin_passwordでログインできる また、keystonerc_adminのadminパスワードも変更しておく

# vi keystonerc_admin

export OS_PASSWORD=admin_password

# source keystonerc_admin
# keystone endpoint-list

# keystone endpoint-list
/usr/lib/python2.7/site-packages/keystoneclient/shell.py:65: DeprecationWarning: The keystone CLI is deprecated in favor of python-openstackclient. For a Python library, continue using python-keystoneclient. 'python-keystoneclient.', DeprecationWarning)
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+----------------------------------+
|                id                |   region  |                   publicurl                    |                  internalurl                   |                  adminurl                 |            service_id            |
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+----------------------------------+
| 0187637acafd46b694e8988974761431 | RegionOne |         http://192.168.1.41:5000/v2.0          |         http://192.168.1.41:5000/v2.0          |       http://192.168.1.41:35357/v2.0      | 7eeba5890c2b41a18b86ac8dd0050e83 |
| 13235f0159b94ac9bbfde6bfc9812991 | RegionOne |   http://192.168.1.41:8776/v2/%(tenant_id)s    |   http://192.168.1.41:8776/v2/%(tenant_id)s    | http://192.168.1.41:8776/v2/%(tenant_id)s | 0a517ebe5a1f4747ac35d06e32742919 |
| 1848dfe55c1f4921acbf541a8787e045 | RegionOne | http://192.168.1.41:8080/v1/AUTH_%(tenant_id)s | http://192.168.1.41:8080/v1/AUTH_%(tenant_id)s |          http://192.168.1.41:8080         | cddfe34f22db4c4eb735f87ebd9fb924 |
| 20b3dcfca74c49c2af68aeaaa9c921a8 | RegionOne |   http://192.168.1.41:8776/v1/%(tenant_id)s    |   http://192.168.1.41:8776/v1/%(tenant_id)s    | http://192.168.1.41:8776/v1/%(tenant_id)s | 9fec70711f0a47ab9cb4bf4ff2796baf |
| 5427fe98d31345d3ac0fd63793b9150d | RegionOne |    http://192.168.1.41:8773/services/Cloud     |    http://192.168.1.41:8773/services/Cloud     |  http://192.168.1.41:8773/services/Admin  | e9cdda11f0634271bea157ab791ade84 |
| 9a67f62cd7044be284105b2b3c54e446 | RegionOne |   http://192.168.1.41:8774/v2/%(tenant_id)s    |   http://192.168.1.41:8774/v2/%(tenant_id)s    | http://192.168.1.41:8774/v2/%(tenant_id)s | 0c0346820ed24b12ab24efc26c478264 |
| ac175564d18047c3bc716d55dda35c7a | RegionOne |            http://127.0.0.1:8774/v3            |            http://127.0.0.1:8774/v3            |          http://127.0.0.1:8774/v3         | 66e76be021a44e6aa406e4ffb4b92b71 |
| d20c078a72624cbc8ca16c986fff4533 | RegionOne |            http://192.168.1.41:8777            |            http://192.168.1.41:8777            |          http://192.168.1.41:8777         | e9d24b1226254a61bb61226efeb24299 |
| e4f89d63a5ed475082739c60de55e86f | RegionOne |            http://192.168.1.41:8080            |            http://192.168.1.41:8080            |          http://192.168.1.41:8080         | b6b2d4e714b2453e985542917314dc51 |
| fa14a7f21f0241ca82f60bb6332d4f20 | RegionOne |            http://192.168.1.41:9292            |            http://192.168.1.41:9292            |          http://192.168.1.41:9292         | 091ceecf404b4b8ca5faf932bda69cf0 |
| fc330c445a8d4c01ac26a5ffd2c3a4c5 | RegionOne |            http://192.168.1.41:9696            |            http://192.168.1.41:9696            |          http://192.168.1.41:9696         | da6b0eb1215f4100bee3ef26717582ab |
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+----------------------------------+

次は、配備したインスタンスにアクセスする方法