Centos7 Devstack [Rocky]执行stack.sh报错汇总

以下文章皆为个人搭建devstack环境经验积累,如没有遇到您的问题,还请包含:)

问题1.连接mariadb数据库异常
  
Centos7 Devstack [Rocky]执行stack.sh报错汇总

解决办法:卸载mariadb数据库:yum -y remove mari*


问题2:提示You are using pip version 9.0.3, however version 10.0.1 is available.

解决办法

1.升级pip:#pip install --upgrade pip
2.然后注释掉devstack/stack.sh下的以下几行代码
   #if [[ "$OFFLINE" != "True" ]]; then
        #PYPI_ALTERNATIVE_URL=${PYPI_ALTERNATIVE_URL:-""} $TOP_DIR/tools/install_pip.sh
    #fi
然后执行./unstack.sh,再/stack.sh


问题3:安装过程中缺少需要的rpm包,或者在线下载超时导致stack失败,例如No package openvswitch available

解决办法

1.下载所需的rpm包或者tar包,下载地址:https://pypi.org/,输入导致stack失败的包名搜索,选择目标版本下载即可;
2.如果下载的是rpm包,copy到环境上,然后执行:#rpm -ivh rpm_name 进行安装;
3.如果是tar.gz的包,copy到环境,执行#tar -zxvf tar.gz_name 解压,进入到解压目录,执行#python setup.py install 进行安装;
4.有的包比较特殊,例如“etcd-v3.1.10-linux-amd64.tar.gz”这个包,解压之后无需进行python setup.py install,只要将解压目录下的etc开头的目录拷贝到/usr/bin/或者/usr/local/bin下即可( cp ./etcd* /usr/bin)。

Centos7 Devstack [Rocky]执行stack.sh报错汇总


问题4:出现上载cirros镜像不成功。

解决办法1:将stack.sh中下面的注释去掉(可以在环境搭建之后手动上传镜像)
    if is_service_enabled g-reg; then
        echo_summary "Uploading images"
        for image_url in ${IMAGE_URLS//,/ }; do
            #upload_image $image_url(注释掉不做)
        done
    Fi

解决办法2:查看是否配置有pip源,root用户和stack用户都需要配置。
1.vim ~/.pip/pip.conf
    [global]
    index-url = https://mirrors.aliyun.com/pypi/simple/
    [install]
    trusted-host=mirrors.aliyun.com
注意:国内pip源未必好用,一方面有些包更新不及时,也会导致失败;另一方面取决于你的网络环境。


问题5:stack.sh成功之后不能打开horizon界面。

解决办法
检查httpd服务是否正常:#systemctl status httpd
启动httpd服务:#systemctl start httpd
设置开机启动:#systemctl enable httpd


问题6:设置是否每次stack都要从github上download最新的代码。

解决办法:在local.conf中设置RECLONE字段RECLONE=False如果代码存在则不再从远程库拉取,如果不存在则重新拉取;
RECLONE=True每次执行stack都会从远程库拉取最新分支代码到本地。


问题7:devstack会默认创建一个网络,创建默认网络失败?

解决办法:在local.conf文件中设置如下配置项,不创建默认网络:
NEUTRON_CREATE_INITIAL_NETWORKS=False


问题8:遇到问题会持续进行更新,尽请期待......