作者:獨筆孤行@TaoCloud
OpenStack自動安裝比手動搭建消耗的硬件資源較大,因此虛擬機或服務器最低配置爲4核CPU+8G內存+20G磁盤,並開啓CPU虛擬化。建議配置爲8核CPU+16G內存或更高配置,並保證服務器能訪問外網。
本次主要測試的成功案例有N、P、Q三個版本,其它版本同樣可以藉助packstack一鍵安裝OpenStack,安裝方式相同。只是Yum源的配置不同而已,主要區別也在於yum源的配置。
成功案例1:Q版OpenStack自動安裝
操作系統:CentOS7.5minimal(其它系統同樣支持)
硬件配置:4vCPU+8G Memory+20G磁盤
1.關閉並禁用防火牆:
# systemctl stop firewalld
# systemctl disable firewalld
# systemctl stop NetworkManager
# systemctl disable NetworkManager
2.關閉selinux:
# setenforce 0
3.編輯/etc/selinux/config文件內容,將SELINUX值enforcing改爲disabled:
SELINUX=disabled
4.配置yum源:
# yum install -y http://rdo.fedorapeople.org/rdo-release.rpm
5.安裝packstack工具
# yum install -y openstack-packstack
6.Packstack一鍵安裝:
# packstack --allinone
註解
無網絡異常時,安裝時間最多不過30分鐘,如果有任務長時間執行無返回結果,需要查看相關日誌查找問題。
成功案例2:N版OpenStack自動安裝
操作系統:CentOS7.4minimal(其它系統同樣支持)
硬件配置:4vCPU+8G Memory+20G磁盤
1.關閉並禁用防火牆:
# systemctl stop firewalld
# systemctl disable firewalld
# systemctl stop NetworkManager
# systemctl disable NetworkManager
2.關閉selinux:
# setenforce 0
3.編輯/etc/selinux/config文件內容,將SELINUX值enforcing改爲disabled:
SELINUX=disabled
4.製作OpenStack-Newton網絡源
cat /etc/yum.repos.d/CentOS-OpenStack-Newton.repo
[OpenStack-Newton]
name=OpenStack-Newton
baseurl=http://vault.centos.org/7.4.1708/cloud/x86_64/openstack-newton/
gpgcheck=0
enabled=1
5.安裝kvm源
yum install http://mirrors.163.com/centos/7.5.1804/virt/x86_64/kvm-common/centos-release-qemu-ev-1.0-1.el7.noarch.rpm
6.安裝packstack工具
# yum install openstack-packstack
7.Packstack一鍵安裝:
# packstack --allinone
註解
無網絡異常時,安裝時間最多不過30分鐘,如果有任務長時間執行無返回結果,需要查看相關日誌查找問題。
成功案例3:P版OpenStack自動安裝。
操作系統:CentOS7.2(其它系統同樣支持)
硬件配置:4vCPU+8G Memory+20G磁盤
1.關閉並禁用防火牆:
# systemctl stop firewalld
# systemctl disable firewalld
# systemctl stop NetworkManager
# systemctl disable NetworkManager
2.關閉selinux:
# setenforce 0
編輯/etc/selinux/config文件內容,將SELINUX值enforcing改爲disabled:
SELINUX=disabled
3.配置p版yum源
# yum install centos-release-openstack-pike.x86_64
4.禁用掉無法使用的CentOS-QEMU-EV.repo源,可直接刪除該源文件。
# rm -rf /etc/yum.repos.d/CentOS-QEMU-EV.repo
5.手動配置可用的KVM源
[root@OpenStackPike ~]# cat /etc/yum.repos.d/CentOS-KVM.repo
[CentOS-KVM]
name=CentOS-KVM
baseurl=http://mirror.centos.org/centos/7/virt/x86_64/kvm-common/
gpgcheck=0
enabled=1
6.配置kvm源或執行以下命令安裝:
# rpm -ivh http://mirror.centos.org/centos/7/virt/x86_64/kvm-common/centos-release-qemu-ev-1.0-1.el7.noarch.rpm
7.配置好yum源後安裝applydeltarpm包,防止自動安裝時報錯。
# yum install deltarpm -y
8.安裝packstack工具
# yum install openstack-packstack
9.Packstack一鍵安裝:
# packstack --allinone
常見故障處理排查及使用方法
如下提到的處理方法,適用於以上三個版本的PackStack方式安裝。
1.常見錯誤:
Testing if puppet apply is finished :192.168.20.200_controller.pp
安裝過程卡在此步驟沒有任何反應。
分析:網絡正常情況下此過程不超過30分鐘。時間過長時,需要確認關閉NetworkManger、selinux、firewalld。還可檢查硬件配置,建議4核CPU+8GB內存或更高配置。還無法解決後可添加至2個網卡、2個磁盤。
2.PackStack日誌信息:
PackStack安裝過程中的日誌在 /var/tmp/packstack/ 目錄中。無法解決問題時可查看該目錄下相關日誌信息。
3.常見認證文件:
執行packstack --allinone安裝命令後,會在執行目錄下生成
keystonerc_admin 、keystonerc_demo、packstack-answers-20181025-111102.txt三個文件。可查看keystonerc_admin文件內容獲取登錄Dashboard的用戶名和密碼。安裝過程的相關配置信息記錄在packstack-answers-20181025-111102.txt文件中。執行OpenStack操作命令前需要執行source keystonerc_admin命令h獲取管理員認證。
4.安裝成功過程記錄:
[root@newton ~]# packstack --allinone
Welcome to the Packstack setup utility
The installation log file is available at: /var/tmp/packstack/20181025-111101-o7nt5l/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 Nagios server entries [ DONE ]
Preparing Nagios host entries [ DONE ]
Preparing Puppet manifests [ DONE ]
Copying Puppet modules and manifests [ DONE ]
Applying 192.168.20.200_controller.pp
192.168.20.200_controller.pp: [ DONE ]
Applying 192.168.20.200_network.pp
192.168.20.200_network.pp: [ DONE ]
Applying 192.168.20.200_compute.pp
192.168.20.200_compute.pp: [ DONE ]
Applying Puppet manifests [ DONE ]
Finalizing [ DONE ]
**** Installation completed successfully ******
Additional information:
* A new answerfile was created in: /root/packstack-answers-20181025-111102.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.20.200. 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.20.200. To use the command line tools you need to source the file.
* To access the OpenStack Dashboard browse to http://192.168.20.200/dashboard .
Please, find your login credentials stored in the keystonerc_admin in your home directory.
* To use Nagios, browse to http://192.168.20.200/nagios username: nagiosadmin, password: 97167e4c4377483d
* The installation log file is available at: /var/tmp/packstack/20181025-111101-o7nt5l/openstack-setup.log
* The generated manifests are available at: /var/tmp/packstack/20181025-111101-o7nt5l/manifests
以上過程爲安裝成功時的全部信息,由於沒有關閉NetworkManager導致出現警告信息,需要手動執行如下命令關閉NetworkManager:
systemctl disable NetworkManger
systemctl stop NetworkManager
由於國內yum網絡源經常更新,以上yum源如有無法訪問情況,可在評論去留言,以便我及時更新。