0
点赞
收藏
分享

微信扫一扫

CentOS7 上配置Openstack[单机配置]

小迁不秃头 2022-08-26 阅读 87


本文目录

  • ​​写在前面​​
  • ​​配置前须知!!!​​
  • ​​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)​​

写在前面

配置前须知!!!

  1. 请用root用户登录虚拟机,以保证有充分的操作权限
  2. 有良好的心态来应对可能出现的意料之外的问题,有问题可以留言或私信,博主将会第一时间回复
  3. 本次环境配置可能会有很多报错需要解决,请提前做好思想准备
  4. 配置过程中的主机名等请自行修改为自己的个人所需信息
  5. 对于一些报错可能会通过增大虚拟机内存来解决,比如分配比较多的(10-16G)内存
  6. 在下面的命令中用到了Tab键补全,需要按下Tab键时的描述为

step1 主机设置

在主机设置方面可以稍微往大里调一下内存

网络连接方式无所谓,能联网就行了

查看是否安装了​​mariadb​​​​yum list installed​

CentOS7 上配置Openstack[单机配置]_linux_02


发现已经安装

通过​​rpm​​命令来进行查看已经安装了的​​mariadb​

​rpm -qa | grep mariadb​

CentOS7 上配置Openstack[单机配置]_运维_03


查找到了之后进行删除,因为openstack会涉及到这个包的安装,所以说为了避免冲突我们这里选择在此之前进行删除

​rpm -e --nodeps 复制粘贴上方查到的的包名​

再次进行查看,看是否已经完成了删除

CentOS7 上配置Openstack[单机配置]_centos_04

step2 配置网口和DHCP确定IP

​ip link set ens33 up​​​​dhclient ens33​

如果在这里你出现了​​HOSTNAME​​命令未找到的情况,可以查看博主的这一篇博客

CentOS7 上配置Openstack[单机配置]_centos_05

step3 配置网络访问Internet

因为在配置Hadoop集群的过程中,博主配置了静态ip,所以这里没有改变,具体的配置文件如下:

​vim /etc/sysconfig/network-scripts/ifcfg-e<Tab>​

CentOS7 上配置Openstack[单机配置]_主机名_06


访问网络查看:

CentOS7 上配置Openstack[单机配置]_linux_07

step4 停止网络管理器关闭防火墙

systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl stop firewalld
systemctl disable firewalld
systemctl restart network

CentOS7 上配置Openstack[单机配置]_centos_08

step5 关闭SELinux

什么是SELinux?

来自百度百科:

CentOS7 上配置Openstack[单机配置]_运维_09


输入命令:

​setenforce 0​​​​vim /etc/selinux/config​

CentOS7 上配置Openstack[单机配置]_linux_10

step6 更新yum

​yum -y update​​ 根据不同的机器,需要更新的组件的数量可能不同

CentOS7 上配置Openstack[单机配置]_运维_11


CentOS7 上配置Openstack[单机配置]_centos_12


CentOS7 上配置Openstack[单机配置]_运维_13

step7 安装Openstack RPM

yum-config-manager --enable Openstack-queens
yum install

CentOS7 上配置Openstack[单机配置]_主机名_14


CentOS7 上配置Openstack[单机配置]_运维_15


CentOS7 上配置Openstack[单机配置]_centos_16


在上图中,因为网络问题出现了其他镜像的尝试,这里我们不妨再次输入命令查看是否已经安装完成

在输入一次​​yum -y update​​:

CentOS7 上配置Openstack[单机配置]_linux_17


然后同步重启

​sync​​​​reboot​

如果说重启之后,在你的GUI界面的右上方并没有出现有线连接的图标,此时不要担心,查看一下是否能够ping通外网,如果说能够ping通外网则表明没有问题,因为前面我们将networkManager给disable了

step8 安装PackStack

​yum install -y openstack-packstack​

CentOS7 上配置Openstack[单机配置]_主机名_18


安装完成:

CentOS7 上配置Openstack[单机配置]_运维_19

step9 修改ssh配置

​cd /etc/ssh​​​​vim ssh_config​

CentOS7 上配置Openstack[单机配置]_linux_20


需要添加:

​StrictHostKeyChecking no​

​UserKnownHostsFile /dev/null​​查看文件添加的末尾几行:

CentOS7 上配置Openstack[单机配置]_主机名_21

step10 生成与修改应答文件

注意此时操作的路径,以免后续找不到地方,建议先​​cd ~​​​​packstack --gen-answer-file=answer.txt​

CentOS7 上配置Openstack[单机配置]_centos_22


因为里面的密码等都是比较麻烦的,这里我们需要进行修改,修改为自己能够熟练记忆的密码。

此外,因为我们是单机配置,需要将所有的ip地址或者是主机名改为本机ip(​​ifconfig​​查看ens33下的网络ip)

1000+行的文件,修改起来很痛苦

所以博主溜了,仅仅修改了一小部分的内容

密码修改:

CentOS7 上配置Openstack[单机配置]_centos_23


只修改了这里,发现在后续的登陆中,密码并没有变成123456,很迷糊,但是可以获取密码

主机名设置:

CentOS7 上配置Openstack[单机配置]_主机名_24


CentOS7 上配置Openstack[单机配置]_运维_25

step11 部署和运行Openstack

CentOS7 上配置Openstack[单机配置]_linux_26


在这个过程中,可能会校验​​.pp​​​文件很长时间,在​​stackoverflow​​上,以为大佬说,需要30分钟甚至更多,根据自己的内存大小以及CPU有关的

如下图:

CentOS7 上配置Openstack[单机配置]_运维_27


如果你很幸运,可以进行下一步

如果出错了,可以下看博客最后的bug记录

setp12 成功部署

打开面板:

​虚拟机ip/dashboard​

CentOS7 上配置Openstack[单机配置]_主机名_28


因为在前面博主修改的密码没有生效,所以通过查看密码来登录:

密码查看:

​cat keystonerc_admin​

CentOS7 上配置Openstack[单机配置]_运维_29


登录之后:

CentOS7 上配置Openstack[单机配置]_linux_30

激动人心的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


解决方式(通过包的管理角度来进行:

​yum clean all​​​​yum makecache​

再次执行:

CentOS7 上配置Openstack[单机配置]_主机名_32

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

如果出现了这个问题,恭喜你可以扩大虚拟机的内存了,

有个解决方式是:

将虚拟机的内存开到8G,还有的博主的解决方案是将内存开大到10-16G:

CentOS7 上配置Openstack[单机配置]_主机名_34


举报

相关推荐

0 条评论