ESXi上でOpenStackをインストール。ネストで仮想環境を構築

今回はOpenStackをインストールして環境を整備していきたいと思います。

私は普段はVMwareとOracle VM Serverしか使っていません。

なので、本番環境だけではなく検証環境でもOpenStackに触れた経験がありませんでした。

個人の検証環境があるので、今回は試していきたいと思います。

環境は以下になります。

  • ESXi評価版上の仮想マシン
  • OSはCentOS(最新状態)
  • 4コア
  • メモリ8GB

ハイパーバイザのネスト状態で使用していきます。

便利にだと感じたらVmwareから入れ替えてしまおうかなと考えてます。

スポンサーリンク

OS環境整備

まずはOSのパッケージ群を最新にしていきます。

CentOSは古い7系の物ですが、KernelもUpdateされるのでOSのリビジョンが上がります。

※他のシステムでは危険なのでKernelのバージョンは安易に上げないようにしましょう。
基本的に以下のコマンドは禁止コマンドと等しいです。

[root@openstack ~]# yum update -y

結果のログは長いので省略します。
次にリブートしていきます。

[root@openstack ~]# shutdown -r now

OSのバージョンを確認するとCentOS7.4まで上がりました。
これで最新状態になっている事が分かります。

[root@openstack ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core)
[root@openstack ~]#

OpenStackに関するソフトウェアのリポジトリをインストールしていきます。
yumでまとめて入れていきます。

[root@openstack ~]# yum install centos-release-openstack-ocata -y
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ centos-release-openstack-ocata.noarch 0:1-2.el7 を インストール
--> 依存性の処理をしています: centos-release-qemu-ev のパッケージ: centos-release-openstack-ocata-1-2.el7.noarch
--> 依存性の処理をしています: centos-release-ceph-jewel のパッケージ: centos-release-openstack-ocata-1-2.el7.noarch
--> トランザクションの確認を実行しています。
---> パッケージ centos-release-ceph-jewel.noarch 0:1.0-1.el7.centos を インストール
--> 依存性の処理をしています: centos-release-storage-common のパッケージ: centos-release-ceph-jewel-1.0-1.el7.centos.noarch
---> パッケージ centos-release-qemu-ev.noarch 0:1.0-2.el7 を インストール
--> 依存性の処理をしています: centos-release-virt-common のパッケージ: centos-release-qemu-ev-1.0-2.el7.noarch
--> トランザクションの確認を実行しています。
---> パッケージ centos-release-storage-common.noarch 0:1-2.el7.centos を インストール
---> パッケージ centos-release-virt-common.noarch 0:1-1.el7.centos を インストール
--> 依存性解決を終了しました。

依存性を解決しました

============================================================================================================
 Package                                 アーキテクチャー
                                                         バージョン                   リポジトリー     容量
============================================================================================================
インストール中:
 centos-release-openstack-ocata          noarch          1-2.el7                      extras          5.3 k
依存性関連でのインストールをします:
 centos-release-ceph-jewel               noarch          1.0-1.el7.centos             extras          4.1 k
 centos-release-qemu-ev                  noarch          1.0-2.el7                    extras           11 k
 centos-release-storage-common           noarch          1-2.el7.centos               extras          4.5 k
 centos-release-virt-common              noarch          1-1.el7.centos               extras          4.5 k

トランザクションの要約
============================================================================================================
インストール  1 パッケージ (+4 個の依存関係のパッケージ)

総ダウンロード容量: 29 k
インストール容量: 23 k
Downloading packages:
(1/5): centos-release-ceph-jewel-1.0-1.el7.centos.noarch.rpm                         | 4.1 kB  00:00:01     
(2/5): centos-release-openstack-ocata-1-2.el7.noarch.rpm                             | 5.3 kB  00:00:01     
(3/5): centos-release-qemu-ev-1.0-2.el7.noarch.rpm                                   |  11 kB  00:00:00     
(4/5): centos-release-storage-common-1-2.el7.centos.noarch.rpm                       | 4.5 kB  00:00:00     
(5/5): centos-release-virt-common-1-1.el7.centos.noarch.rpm                          | 4.5 kB  00:00:00     
------------------------------------------------------------------------------------------------------------
合計                                                                         14 kB/s |  29 kB  00:00:02     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : centos-release-virt-common-1-1.el7.centos.noarch                            1/5 
  インストール中          : centos-release-qemu-ev-1.0-2.el7.noarch                                     2/5 
  インストール中          : centos-release-storage-common-1-2.el7.centos.noarch                         3/5 
  インストール中          : centos-release-ceph-jewel-1.0-1.el7.centos.noarch                           4/5 
  インストール中          : centos-release-openstack-ocata-1-2.el7.noarch                               5/5 
  検証中                  : centos-release-openstack-ocata-1-2.el7.noarch                               1/5 
  検証中                  : centos-release-qemu-ev-1.0-2.el7.noarch                                     2/5 
  検証中                  : centos-release-storage-common-1-2.el7.centos.noarch                         3/5 
  検証中                  : centos-release-ceph-jewel-1.0-1.el7.centos.noarch                           4/5 
  検証中                  : centos-release-virt-common-1-1.el7.centos.noarch                            5/5 

インストール:
  centos-release-openstack-ocata.noarch 0:1-2.el7                                                           

依存性関連をインストールしました:
  centos-release-ceph-jewel.noarch 0:1.0-1.el7.centos    centos-release-qemu-ev.noarch 0:1.0-2.el7          
  centos-release-storage-common.noarch 0:1-2.el7.centos  centos-release-virt-common.noarch 0:1-1.el7.centos 

完了しました!
[root@openstack ~]#

次にPackstackを入れていきます。
ログは長くなるので今回は省きます。

[root@openstack ~]#yum install openstack-packstack -y

以下のコマンドでインストールを完了させます。
しかし、途中の処理が非常に遅いので記載していきます。

[root@openstack ~]# packstack --allinone
Welcome to the Packstack setup utility

The installation log file is available at: /var/tmp/packstack/20171224-194407-VIBW14/openstack-setup.log
Packstack changed given value  to required value /root/.ssh/id_rsa.pub

Installing:
Clean Up                                             [ DONE ]
Discovering ip protocol version                      [ DONE ]
Setting up ssh keys                                  [ DONE ]
Preparing servers                                    [ DONE ]
Pre installing Puppet and discovering hosts' details [ DONE ]
Preparing pre-install entries                        [ DONE ]
Setting up CACERT                                    [ DONE ]
Preparing AMQP entries                               [ DONE ]
Preparing MariaDB entries                            [ DONE ]
Fixing Keystone LDAP config parameters to be undef if empty[ DONE ]
Preparing Keystone entries                           [ DONE ]
Preparing Glance entries                             [ DONE ]
Checking if the Cinder server has a cinder-volumes vg[ DONE ]
Preparing Cinder entries                             [ DONE ]
Preparing Nova API entries                           [ DONE ]
Creating ssh keys for Nova migration                 [ DONE ]
Gathering ssh host keys for Nova migration           [ DONE ]
Preparing Nova Compute entries                       [ DONE ]
Preparing Nova Scheduler entries                     [ DONE ]
Preparing Nova VNC Proxy entries                     [ DONE ]
Preparing OpenStack Network-related Nova entries     [ DONE ]
Preparing Nova Common entries                        [ DONE ]
Preparing Neutron LBaaS Agent entries                [ DONE ]
Preparing Neutron API entries                        [ DONE ]
Preparing Neutron L3 entries                         [ DONE ]
Preparing Neutron L2 Agent entries                   [ DONE ]
Preparing Neutron DHCP Agent entries                 [ DONE ]
Preparing Neutron Metering Agent entries             [ DONE ]
Checking if NetworkManager is enabled and running    [ DONE ]
Preparing OpenStack Client entries                   [ DONE ]
Preparing Horizon entries                            [ DONE ]
Preparing Swift builder entries                      [ DONE ]
Preparing Swift proxy entries                        [ DONE ]
Preparing Swift storage entries                      [ DONE ]
Preparing Gnocchi entries                            [ DONE ]
Preparing MongoDB entries                            [ DONE ]
Preparing Redis entries                              [ DONE ]
Preparing Ceilometer entries                         [ DONE ]
Preparing Aodh entries                               [ DONE ]
Preparing Puppet manifests                           [ DONE ]
Copying Puppet modules and manifests                 [ DONE ]
Applying 192.168.11.12_controller.pp
Testing if puppet apply is finished: 192.168.11.12_controller.pp  [ - ]

Testing if puppet apply is finishedメッセージの表示が出てから
20分から50分程度時間がかかります。
今回はSSDの環境なのでローカルPCよりは早いと思います。

実はローカルPCのVirtual Boxでも一度インストールしましたが50分かかりました。。。

Copying Puppet modules and manifests                 [ DONE ]
Applying 192.168.11.12_controller.pp
192.168.11.12_controller.pp:                         [ DONE ]          
Applying 192.168.11.12_network.pp
192.168.11.12_network.pp:                            [ DONE ]       
Applying 192.168.11.12_compute.pp
192.168.11.12_compute.pp:                            [ DONE ]       
Applying Puppet manifests                            [ DONE ]
Finalizing                                           [ DONE ]

 **** Installation completed successfully ******

Additional information:
 * A new answerfile was created in: /root/packstack-answers-20171224-194408.txt
 * Time synchronization installation was skipped. Please note that unsynchronized time on server instances might be problem for some OpenStack components.
 * Warning: NetworkManager is active on 192.168.11.12. OpenStack networking currently does not work on systems that have the Network Manager service enabled.
 * File /root/keystonerc_admin has been created on OpenStack client host 192.168.11.12. To use the command line tools you need to source the file.
 * To access the OpenStack Dashboard browse to http://192.168.11.12/dashboard .
Please, find your login credentials stored in the keystonerc_admin in your home directory.
 * The installation log file is available at: /var/tmp/packstack/20171224-194407-VIBW14/openstack-setup.log
 * The generated manifests are available at: /var/tmp/packstack/20171224-194407-VIBW14/manifests
[root@openstack ~]# 

実行が完了するとこのこのようなログが表示されます。
また、無事に処理が完了していればローカルにパスワードが記載されたファイルが作成されます。

[root@openstack ~]# cat keystonerc_admin 
unset OS_SERVICE_TOKEN
    export OS_USERNAME=admin
    export OS_PASSWORD=5897cd04d38f409d
    export OS_AUTH_URL=http://192.168.11.12:5000/v3
    export PS1='[\u@\h \W(keystone_admin)]\$ '
    
export OS_PROJECT_NAME=admin
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_IDENTITY_API_VERSION=3
    [root@openstack ~]# 

デフォルトのパスワードはexport OS_PASSWORDで指定されているパスワードになります。
ではhttp://192.168.11.12/dashboardへアクセスしインストール後の確認をしていきます。

スポンサーリンク

インストール後のログイン

http://192.168.11.12/dashboardへアクセスしてみます。

画面は以下になります。

ユーザはadminでパスワードは先ほどのkeystonerc_adminファイル記載のパスワードを使用します。

ログイン後の画面は以下になります。

これでOpenStackを使える環境になりました。

カスタマイズやインスタンスの作成はまと今度書いていきたいと思います。

スポンサーリンク

フォローする

合わせて読んでみる

良ければ他の記事もどうぞ!



スポンサーリンク
コメントの入力は終了しました。