Packstack单节点一键部署openstack-Train版

本文详细介绍了一台戴尔R720服务器上使用PackStack工具部署OpenStack Train版本的全过程,包括系统优化、YUM源配置、PackStack工具安装及配置、一键部署流程等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#记录一台单节点物理服务器使用PackStack部署OpenStack-Train版的操作

戴尔R720
系统:centos7.8.2003
cpu型号: E5-2670v2
2C8核32线程
内存 32G
网络环境: 
	eth0 192.168.100.106	物理外网
	eth1 172.16.0.106		私有内网	

#服务器基础优化

echo 'net.ipv4.ip_forward=1 ' >>/etc/sysctl.conf 
echo 'net.ipv4.tcp_tw_recycle=1 ' >>/etc/sysctl.conf
echo 'net.ipv4.tcp_tw_reuse=1 ' >>/etc/sysctl.conf 
sysctl -p
chmod +x /etc/rc.d/rc.local
yum install -y mlocate lrzsz tree vim nc nmap wget bash-completion bash-completion-extras cowsay sl htop iotop iftop lsof net-tools sysstat unzip bc psmisc ntpdate wc telnet-server bind-utils sshpass
echo 'localhost	192.168.100.106' >>/etc/hosts
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
systemctl stop NetworkManager
systemctl disable NetworkManager
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install -y mlocate lrzsz tree vim nc nmap wget bash-completion bash-completion-extras cowsay sl htop iotop iftop lsof net-tools sysstat unzip bc psmisc ntpdate wc telnet-server bind-utils sshpass
sed -i 's#keepcache=0#keepcache=1#g' /etc/yum.conf
yum clean all		
yum makecache
ntpdate ntp1.aliyun.com
echo '*/30 * * * *  /sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1' >>/var/spool/cron/root

#安装train版yum源

yum install centos-release-openstack-train -y

#安装openstack-packstack工具用于生成openstack应答文件

yum install openstack-packstack -y
packstack --gen-answer-file=openstack.txt

packstack --allinone 				 #allinone模式
packstack --gen-answer-file=<file> 	 #生成部署配置文件
packstack --answer-file=<file>     #选择应答文件

#packstack每个版本的配置文件均有小改动,不要修改错位置
可以详细学习一下配置文件的各个模块的配置参数,可根据自己实际需求更改

[19:57 root@localhost ~]# vim openstack.txt
41行:		y-n #SWIFT是OpenStack的对象存储组件,默认是Y,在生产环境中一般是不装,所以改n
50行:		y-n #不安装该服务
97行:		10.0.1.120,10.0.1.130 #计算节点ip地址
808 		openvswitch
813:		physnet1      		#flat网络这边要设置物理网卡名字
840 		openvswitch		#L2网络的代理模式,也可选择linuxbridge
858:		physnet1:br-ex    #这边要设置物理网卡的名字
869:		br-ex:eth0			#这边br-ex:eth0是网络节点的nat网卡,到时候安装完毕之后IP地址会漂到这个上
1181:	y-n #DEMO是OpenStack联网下载一个测试镜像,这边没联网。说以改成n

##更改密码(123456)

sed -i -r 's/(.+_PW)=.+/\1=123456/' openstack.txt

#备份配置文件

egrep -v "^#|^$" openstack.txt >openstack.txt.bak1

#查看所有的主机ip地址是否都指定到eth0网卡

[20:01 root@localhost ~]# grep 'HOST=' openstack.txt
CONFIG_CONTROLLER_HOST=192.168.100.106
CONFIG_VCENTER_HOST=
CONFIG_STORAGE_HOST=192.168.100.106
CONFIG_SAHARA_HOST=192.168.100.106
CONFIG_AMQP_HOST=192.168.100.106
CONFIG_MARIADB_HOST=192.168.100.106
CONFIG_TEMPEST_HOST=
CONFIG_REDIS_HOST=192.168.100.106

#一键部署单节点

[20:15 root@localhost ~]# packstack --answer-file=openstack.txt
Welcome to the Packstack setup utility

The installation log file is available at: /var/tmp/packstack/20200614-205624-uEmdI2/openstack-setup.log

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 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 Gnocchi entries                            [ DONE ]
Preparing Redis entries                              [ DONE ]
Preparing Ceilometer entries                         [ DONE ]
Preparing Puppet manifests                           [ DONE ]
Copying Puppet modules and manifests                 [ DONE ]
Applying 192.168.100.106_controller.pp
192.168.100.106_controller.pp:                       [ DONE ]            
Applying 192.168.100.106_network.pp
192.168.100.106_network.pp:                          [ DONE ]         
Applying 192.168.100.106_compute.pp
192.168.100.106_compute.pp:                          [ DONE ]         
Applying Puppet manifests                            [ DONE ]
Finalizing                                           [ DONE ]

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

Additional information:
 * Time synchronization installation was skipped. Please note that unsynchronized time on server instances might be problem for some OpenStack components.
 * File /root/keystonerc_admin has been created on OpenStack client host 192.168.100.106. To use the command line tools you need to source the file.
 * To access the OpenStack Dashboard browse to http://192.168.100.106/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/20200614-205624-uEmdI2/openstack-setup.log
 * The generated manifests are available at: /var/tmp/packstack/20200614-205624-uEmdI2/manifests

#packstack部署禁止了openstack的dashbrard界面对域的支持,需要可打开

vim /etc/openstack-dashboard/local_settings
79 OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
85 OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = 'Default'
461 TIME_ZONE = "Asia/Shanghai"	#配置时区为亚洲上海

systemctl restart httpd.service memcached.service

#故障报错

facter: error while loading shared libraries: leatherman_curl.so.1.3.0: cannot open shared object file: No such file or directory

leatherman rpm包版本问题
[20:06 root@localhost ~/openstack]# yum list | grep leatherman
leatherman.x86_64                        1.10.0-1.el7                  @epel    
leatherman-devel.x86_64                  1.10.0-1.el7                  epel 

而facter需要1.3.0
[20:09 root@localhost ~/openstack]# facter -p
facter: error while loading shared libraries: leatherman_curl.so.1.3.0: cannot open shared object file: No such file or directory

回退leatherman版本
yum downgrade leatherman -y
### 一键部署 OpenStack 的方法 #### 工具介绍 Packstack 是 Red Hat 提供的一个自动化脚本工具,用于简化 OpenStack 的安装过程。它通过 Puppet 模块来配置和部署 OpenStack 组件[^1]。 #### 部署前准备 在执行一键部署之前,需要满足以下条件: - **操作系统**:推荐使用 CentOS 7.x 或 RHEL 7.x。 - **网络设置**:确保服务器可以访问外部网络以下载必要的软件包。 - **硬件资源**:建议至少分配 4GB 内存给目标机器[^4]。 #### 关闭防火墙和服务 为了防止防火墙干扰 OpenStack 的正常运行,在部署前需关闭并禁用 `firewalld` 服务: ```bash systemctl stop firewalld systemctl disable firewalld systemctl status firewalld ``` 上述命令会停止、禁用以及确认防火墙的状态已关闭。 #### 安装 Packstack 可以通过 Yum 软件仓库安装 Packstack 及其依赖项: ```bash yum -y install openstack-packstack ``` 此命令将自动完成所需组件的安装工作。 #### 执行一键部署 利用 Packstack 进行 OpenStack 的快速部署非常简单,只需一条命令即可启动整个流程: ```bash packstack --allinone ``` 这条指令会在单节点环境中搭建完整的 OpenStack 平台,并最终提示用户查看 Web 控制面板地址及管理员凭证信息[^2]。 #### 环境验证 如果一切顺利,您应该可以在终端看到类似于 “Complete!” 的消息表示成功[^3]。此时可通过浏览器打开 Horizon Dashboard 页面进一步管理云平台实例。 以下是生成的身份认证文件样例内容片段展示如何定义默认参数以便后续 CLI 命令调用时无需重复输入这些值: ```bash export OS_USERNAME=admin export OS_PASSWORD='your_password_here' ... ```
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值