CentOS7 上配置Openstack[单机配置]

2023年 9月 17日 31.9k 0

本文目录

  • 写在前面
    • 配置前须知!!!
  • 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 主机设置

    在主机设置方面可以稍微往大里调一下内存
    网络连接方式无所谓,能联网就行了
    查看是否安装了mariadb
    yum list installed
    在这里插入图片描述
    发现已经安装
    通过rpm命令来进行查看已经安装了的mariadb
    rpm -qa | grep mariadb
    在这里插入图片描述
    查找到了之后进行删除,因为openstack会涉及到这个包的安装,所以说为了避免冲突我们这里选择在此之前进行删除
    rpm -e --nodeps 复制粘贴上方查到的的包名
    再次进行查看,看是否已经完成了删除
    在这里插入图片描述

    step2 配置网口和DHCP确定IP

    ip link set ens33 up
    dhclient ens33
    如果在这里你出现了HOSTNAME命令未找到的情况,可以查看博主的这一篇博客
    在这里插入图片描述

    step3 配置网络访问Internet

    因为在配置Hadoop集群的过程中,博主配置了静态ip,所以这里没有改变,具体的配置文件如下:
    vim /etc/sysconfig/network-scripts/ifcfg-e
    在这里插入图片描述
    访问网络查看:
    在这里插入图片描述

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

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

    在这里插入图片描述

    step5 关闭SELinux

    什么是SELinux?
    来自百度百科:
    在这里插入图片描述
    输入命令:
    setenforce 0
    vim /etc/selinux/config
    在这里插入图片描述

    step6 更新yum

    yum -y update
    根据不同的机器,需要更新的组件的数量可能不同
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    step7 安装Openstack RPM

    yum-config-manager --enable Openstack-queens
    yum install -y centos-release-openstack-queens
    

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在上图中,因为网络问题出现了其他镜像的尝试,这里我们不妨再次输入命令查看是否已经安装完成
    在输入一次yum -y update:
    在这里插入图片描述
    然后同步重启
    sync
    reboot
    如果说重启之后,在你的GUI界面的右上方并没有出现有线连接的图标,此时不要担心,查看一下是否能够ping通外网,如果说能够ping通外网则表明没有问题,因为前面我们将networkManager给disable了

    step8 安装PackStack

    yum install -y openstack-packstack
    在这里插入图片描述
    安装完成:
    在这里插入图片描述

    step9 修改ssh配置

    cd /etc/ssh
    vim ssh_config
    在这里插入图片描述
    需要添加:
    StrictHostKeyChecking no
    UserKnownHostsFile /dev/null

    查看文件添加的末尾几行:
    在这里插入图片描述

    step10 生成与修改应答文件

    注意此时操作的路径,以免后续找不到地方,建议先cd ~
    packstack --gen-answer-file=answer.txt
    在这里插入图片描述
    因为里面的密码等都是比较麻烦的,这里我们需要进行修改,修改为自己能够熟练记忆的密码。
    此外,因为我们是单机配置,需要将所有的ip地址或者是主机名改为本机ip(ifconfig查看ens33下的网络ip)
    1000+行的文件,修改起来很痛苦
    所以博主溜了,仅仅修改了一小部分的内容
    密码修改:
    在这里插入图片描述
    只修改了这里,发现在后续的登陆中,密码并没有变成123456,很迷糊,但是可以获取密码
    主机名设置:
    在这里插入图片描述
    在这里插入图片描述

    step11 部署和运行Openstack

    在这里插入图片描述
    在这个过程中,可能会校验.pp文件很长时间,在stackoverflow上,以为大佬说,需要30分钟甚至更多,根据自己的内存大小以及CPU有关的
    如下图:
    在这里插入图片描述
    如果你很幸运,可以进行下一步
    如果出错了,可以下看博客最后的bug记录

    setp12 成功部署

    打开面板:
    虚拟机ip/dashboard
    在这里插入图片描述
    因为在前面博主修改的密码没有生效,所以通过查看密码来登录:
    密码查看:
    cat keystonerc_admin
    在这里插入图片描述
    登录之后:
    在这里插入图片描述

    激动人心的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 the keystonerc_admin in your home directory.

    bug3 安装时出现了No Presto metadata available for centos-openstack-queens

    在这里插入图片描述
    解决方式(通过包的管理角度来进行:
    yum clean all
    yum makecache
    再次执行:
    在这里插入图片描述

    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)

    错误截图:
    在这里插入图片描述

    如果出现了这个问题,恭喜你可以扩大虚拟机的内存了,
    有个解决方式是:
    将虚拟机的内存开到8G,还有的博主的解决方案是将内存开大到10-16G:
    在这里插入图片描述

    相关文章

    服务器端口转发,带你了解服务器端口转发
    服务器开放端口,服务器开放端口的步骤
    产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
    如何使用 WinGet 下载 Microsoft Store 应用
    百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
    百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

    发布评论