【失敗しない】openstackのインストール(All-in-one構成)
OpenStackのインストールがうまくいかないそこのあなた
OpenStackのインストール手順は書籍/サイト/ブログなど色々なところで紹介されているかと思います。同じようにしてインストールしてみても、まあ失敗しますよね。。。
私も、今まで幾度となくOpenStackのインストールを試しましたが、きれいにインストールできたことは一度もありません。
packstackなどのインストーラーを使ってうまくいかない場合はOpenStackおよびインストーラーのバージョンにあると思います。バージョンを指定しないとその時点の最新バージョンがインストールされてしまうため、過去の異なるバージョンで成功した手順が使えなくなるケースが多いです
手順さえ守っていただけたら誰でも再現できるインストール手順をまとめます!
インストールするOpenStack
- バージョン : Stein
- インストーラー : packstack (バージョン: 14.0.0-1)
- 構成 : All in one構成
そのうちマルチノード構成もできたらと思っています
環境
サーバ(仮想マシン)設定
今回はNested KVM上にCentOS7のVMをデプロイし、そこにOpenStackをインストールします。
ベアメタルサーバ(物理サーバ)にOpenStackをインストールする場合は、HWが原因でインストールが失敗したりすることがよくあります。仮想マシンにはこれがないためインストールの再現性を確保することができます。
インストール設定
- OS : CentOS(7.6.1810)
- 言語:English
- タイムゾーン:Asia/Tokyo
- パッケージ: core(最小限のパッケージのみインストール)
- その他: とくに指定はない
言語はEnglishがおススメです。。
OS基本設定
ネットワーク設定
ホスト名: OpenStackAllinone
インターフェース:
TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
BRIDGE=br-ex
TYPE=Bridge
BOOTPROTO=none
DEFROUTE=yes
NAME=br-ex
DEVICE=br-ex
ONBOOT=yes
IPADDR=10.0.0.82
PREFIX=24
PEEERDNS=no
GATEWAY=10.0.0.24
※1 ブリッジの作成にはbridge-utilsが必要です。
yum -y install bridge-utils
で事前にインストールしておきましょう
※2 ブリッジの名前はbr-exにしておくと断然楽っす
サービス
NetworkManager停止/無効化
# systemctl stop NetworkManager
# systemctl disable NetworkManager
Firewalld停止/無効化
# systemctl stop firewalld
# systemctl disable firewalld
SELinux無効化(設定変更後に再起動が必要)
SELINUX=disabled # この行を修正
その他
hostsを追記
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.82 OpenstackAllinone #追記
OpenStackのインストール
レポジトリの登録
yum install -y https://rdoproject.org/repos/rdo-release.rpm epel-release
レポジトリの最新化
yum update -y
openstack steinのインストール
yum install -y centos-release-openstack-stein
yum install -y https://rdoproject.org/repos/rdo-release.rpm epel-release
yum update -y
yum install -y centos-release-openstack-stein
steinを指定してインストールする
openstack packstackのインストール
yum install -y openstack-packstack-14.0.0-1.el7.noarch
バージョン:14.0.0-1を指定する
packstackひな形ファイルの生成
# packstack --gen-answer-file=/root/answer.txt --default-password=password --os-heat-install=y --os-heat-cfn-install=y --os-neutron-l2-agent=openvswitch
データベース同期のタイムアウトを無効化
デフォルトでは300秒でタイムアウトするようになっています。
このタイムアウトが原因でインストールエラーするケースがあるため、このタイムアウトを無効化します。
以下の4つのファイル
- /usr/share/openstack-puppet/modules/nova/manifests/db/online_data_migrations.pp
- /usr/share/openstack-puppet/modules/nova/manifests/db/sync.pp
- /usr/share/openstack-puppet/modules/nova/manifests/db/sync_api.pp
- /usr/share/openstack-puppet/modules/neutron/manifests/db/sync.pp
デフォルトで
$db_sync_timeout = 300,
となっているところを
$db_sync_timeout = 0,
に変更する
OpenStackのセットアップ
# packstack --answer-file answer.txt --timeout=0 --debug
数10分かかります
これでインストールは完了するはずっす!!
**** Installation completed successfully ******
Additional information:
* Time synchronization installation was skipped. Please note that unsynchronized time on r some OpenStack components.
* File /root/keystonerc_admin has been created on OpenStack client host 10.0.0.81. To us source the file.
* To access the OpenStack Dashboard browse to http://10.0.0.81/dashboard .
Please, find your login credentials stored in the keystonerc_admin in your home directory
* Because of the kernel update the host 10.0.0.81 requires reboot.
* The installation log file is available at: /var/tmp/packstack/20191206-135151-vFozMv/o
* The generated manifests are available at: /var/tmp/packstack/20191206-135151-vFozMv/ma
* Note temporary directory /var/tmp/packstack/e098fce212114719ba8b7c9920579160 on host 1 g purposes.
インストール後のセットアップ手順についてはこの記事に追記します!!
Author And Source
この問題について(【失敗しない】openstackのインストール(All-in-one構成)), 我々は、より多くの情報をここで見つけました https://qiita.com/K5K/items/79e1e0e8298d839f7c29著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .