本文目录
- 写在前面
- 配置前须知!!!
- step1 主机设置
- step2 配置网口和DHCP确定IP
- step3 配置网络访问Internet
- step4 停止网络管理器关闭防火墙
- step5 关闭SELinux
- step6 更新yum
- step7 安装Openstack RPM
- step8 安装PackStack
- step9 修改ssh配置
- step10 生成与修改应答文件
- step11 部署和运行Openstack
- setp12 成功部署
- 激动人心的BUG解决环节
- bug1 提示找不到HOSTNAME命令
- bug2 Error: Execution of '/usr/bin/yum -d 0 -e 0 -y install redis' returned 1: Error downloading packages
- bug3 安装时出现了No Presto metadata available for centos-openstack-queens
- bug4 Faild to aply catalog: Execution of '/usr/bin/openstack ***'
- bug5 Error: Failed to apply catalog: Cannot allocate memory - fork(2)
写在前面
配置前须知!!!
- 请用root用户登录虚拟机,以保证有充分的操作权限
- 有良好的心态来应对可能出现的意料之外的问题,有问题可以留言或私信,博主将会第一时间回复
- 本次环境配置可能会有很多报错需要解决,请提前做好思想准备
- 配置过程中的主机名等请自行修改为自己的个人所需信息
- 对于一些报错可能会通过增大虚拟机内存来解决,比如分配比较多的(10-16G)内存
- 在下面的命令中用到了Tab键补全,需要按下Tab键时的描述为
step1 主机设置
在主机设置方面可以稍微往大里调一下内存
网络连接方式无所谓,能联网就行了
查看是否安装了mariadbyum list installed
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_linux_02](https://file.cfanz.cn/uploads/png/2022/08/26/2/T1THLd6965.png)
发现已经安装
通过rpm命令来进行查看已经安装了的mariadb
rpm -qa | grep mariadb
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_03](https://file.cfanz.cn/uploads/png/2022/08/26/2/6DC61ca844.png)
查找到了之后进行删除,因为openstack会涉及到这个包的安装,所以说为了避免冲突我们这里选择在此之前进行删除
rpm -e --nodeps 复制粘贴上方查到的的包名
再次进行查看,看是否已经完成了删除
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_04](https://file.cfanz.cn/uploads/png/2022/08/26/2/51ZcLaX998.png)
step2 配置网口和DHCP确定IP
ip link set ens33 updhclient ens33
如果在这里你出现了HOSTNAME命令未找到的情况,可以查看博主的这一篇博客
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_05](https://file.cfanz.cn/uploads/png/2022/08/26/2/Z6QC083e4c.png)
step3 配置网络访问Internet
因为在配置Hadoop集群的过程中,博主配置了静态ip,所以这里没有改变,具体的配置文件如下:
vim /etc/sysconfig/network-scripts/ifcfg-e<Tab>
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_主机名_06](https://file.cfanz.cn/uploads/png/2022/08/26/2/G1QfHYUL9a.png)
访问网络查看:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_linux_07](https://file.cfanz.cn/uploads/png/2022/08/26/2/P9DJK1Q765.png)
step4 停止网络管理器关闭防火墙
systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl stop firewalld
systemctl disable firewalld
systemctl restart network
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_08](https://file.cfanz.cn/uploads/png/2022/08/26/2/Ce0B40F35V.png)
step5 关闭SELinux
什么是SELinux?
来自百度百科:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_09](https://file.cfanz.cn/uploads/png/2022/08/26/2/2L0OaeE663.png)
输入命令:
setenforce 0vim /etc/selinux/config
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_linux_10](https://file.cfanz.cn/uploads/png/2022/08/26/2/dfd984Uee6.png)
step6 更新yum
yum -y update 根据不同的机器,需要更新的组件的数量可能不同
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_11](https://file.cfanz.cn/uploads/png/2022/08/26/2/bde99Y2N5a.png)
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_12](https://file.cfanz.cn/uploads/png/2022/08/26/2/CMId187eSU.png)
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_13](https://file.cfanz.cn/uploads/png/2022/08/26/2/873dS9bc6b.png)
step7 安装Openstack RPM
yum-config-manager --enable Openstack-queens
yum install
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_主机名_14](https://file.cfanz.cn/uploads/png/2022/08/26/2/GO2eX5RVS4.png)
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_15](https://file.cfanz.cn/uploads/png/2022/08/26/2/3XD2eC7Td2.png)
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_16](https://file.cfanz.cn/uploads/png/2022/08/26/2/dbaZa61WIG.png)
在上图中,因为网络问题出现了其他镜像的尝试,这里我们不妨再次输入命令查看是否已经安装完成
在输入一次yum -y update:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_linux_17](https://file.cfanz.cn/uploads/png/2022/08/26/2/6fB5H706K2.png)
然后同步重启
syncreboot
如果说重启之后,在你的GUI界面的右上方并没有出现有线连接的图标,此时不要担心,查看一下是否能够ping通外网,如果说能够ping通外网则表明没有问题,因为前面我们将networkManager给disable了
step8 安装PackStack
yum install -y openstack-packstack
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_主机名_18](https://file.cfanz.cn/uploads/png/2022/08/26/2/Y8Bb053d9I.png)
安装完成:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_19](https://file.cfanz.cn/uploads/png/2022/08/26/2/11SH1d0f3F.png)
step9 修改ssh配置
cd /etc/sshvim ssh_config
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_linux_20](https://file.cfanz.cn/uploads/png/2022/08/26/2/046G0104df.png)
需要添加:
StrictHostKeyChecking no
UserKnownHostsFile /dev/null查看文件添加的末尾几行:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_主机名_21](https://file.cfanz.cn/uploads/png/2022/08/26/2/93056e2KZ9.png)
step10 生成与修改应答文件
注意此时操作的路径,以免后续找不到地方,建议先cd ~packstack --gen-answer-file=answer.txt
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_22](https://file.cfanz.cn/uploads/png/2022/08/26/2/eO9b088aRa.png)
因为里面的密码等都是比较麻烦的,这里我们需要进行修改,修改为自己能够熟练记忆的密码。
此外,因为我们是单机配置,需要将所有的ip地址或者是主机名改为本机ip(ifconfig查看ens33下的网络ip)
1000+行的文件,修改起来很痛苦
所以博主溜了,仅仅修改了一小部分的内容
密码修改:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_23](https://file.cfanz.cn/uploads/png/2022/08/26/2/TfQAXZ4Q7B.png)
只修改了这里,发现在后续的登陆中,密码并没有变成123456,很迷糊,但是可以获取密码
主机名设置:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_主机名_24](https://file.cfanz.cn/uploads/png/2022/08/26/2/469NJA6P98.png)
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_25](https://file.cfanz.cn/uploads/png/2022/08/26/2/0CXNKW0676.png)
step11 部署和运行Openstack
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_linux_26](https://file.cfanz.cn/uploads/png/2022/08/26/2/0DWbIc1T11.png)
在这个过程中,可能会校验.pp文件很长时间,在stackoverflow上,以为大佬说,需要30分钟甚至更多,根据自己的内存大小以及CPU有关的
如下图:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_27](https://file.cfanz.cn/uploads/png/2022/08/26/2/2NTe4dfeRY.png)
如果你很幸运,可以进行下一步
如果出错了,可以下看博客最后的bug记录
setp12 成功部署
打开面板:
虚拟机ip/dashboard
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_主机名_28](https://file.cfanz.cn/uploads/png/2022/08/26/2/284FU7PX42.png)
因为在前面博主修改的密码没有生效,所以通过查看密码来登录:
密码查看:
cat keystonerc_admin
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_运维_29](https://file.cfanz.cn/uploads/png/2022/08/26/2/017HEH7ERQ.png)
登录之后:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_linux_30](https://file.cfanz.cn/uploads/png/2022/08/26/2/4f5YfC8819.png)
激动人心的BUG解决环节
bug1 提示找不到HOSTNAME命令
解决方式:
可以查看博主的这一篇博客
bug2 Error: Execution of ‘/usr/bin/yum -d 0 -e 0 -y install redis’ returned 1: Error downloading packages
解决方式:
这是一种类型的错误,如果你出现了在安装***内容的时候出现了问题,可以将这条内容复制下来多次
运行
直到运行出来已经安装且为最新版本
附上完整的报错信息:
ERROR : Error appeared during Puppet run: 192.168.164.93_controller.pp
Error: Execution of ‘/usr/bin/yum -d 0 -e 0 -y install redis’ returned 1: Error downloading packages:
You will find full trace in log /var/tmp/packstack/20220513-150502-anadEn/manifests/192.168.164.93_controller.pp.log
Please check log file /var/tmp/packstack/20220513-150502-anadEn/openstack-setup.log for more information
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.164.93. To use the command line tools you need to source the file.
- To access the OpenStack Dashboard browse to http://192.168.164.93/dashboard .
Please, find your login credentials stored in thekeystonerc_adminin your home directory.
bug3 安装时出现了No Presto metadata available for centos-openstack-queens
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_31](https://file.cfanz.cn/uploads/png/2022/08/26/2/31I78914Le.png)
解决方式(通过包的管理角度来进行:
yum clean allyum makecache
再次执行:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_主机名_32](https://file.cfanz.cn/uploads/png/2022/08/26/2/4f1Pba01ZV.png)
bug4 Faild to aply catalog: Execution of ‘/usr/bin/openstack ***’
并出现内部错误500时:
可以通过查询日志的方式来解决,如果是因为数据库同步的问题导致的
解决方式:
keystone-manage db_sync
cinder-manage db sync
glance-manage db sync
nova-manage db sync
此处参考博客园博客
bug5 Error: Failed to apply catalog: Cannot allocate memory - fork(2)
错误截图:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_centos_33](https://file.cfanz.cn/uploads/png/2022/08/26/2/a70Bc58G78.png)
如果出现了这个问题,恭喜你可以扩大虚拟机的内存了,
有个解决方式是:
将虚拟机的内存开到8G,还有的博主的解决方案是将内存开大到10-16G:
![在这里插入图片描述 CentOS7 上配置Openstack[单机配置]_主机名_34](https://file.cfanz.cn/uploads/png/2022/08/26/2/cC8ZMd0c90.png)
