安装ussuri版devstack+masakari报错总结+安装脚本

2 篇文章 0 订阅
1 篇文章 0 订阅

目录

报错总结

zz问题

其他问题

安装脚本


报错总结

zz问题

先说两个zz问题,第一个就是确认安装版本之前,需要查看官方文档,看版本支持的操作系统:

 第二个就是如果安装的masakari和devstack不是最新版本,需要在local.conf配上dashboard和monitors的仓库地址,否则不配置的组件会默认下载最新版本,而不同版本的安装依赖的pip版本不一致,会导致报错:

以下是具体的local.conf:

[[local|localrc]]
enable_plugin masakari https://opendev.org/openstack/masakari stable/ussuri
enable_plugin masakaridashboard https://opendev.org/openstack/masakari-dashboard stable/ussuri
enable_plugin masakarimonitors https://opendev.org/openstack/masakari-monitors stable/ussuri
# Define images to be automatically downloaded during the DevStack built process.
DOWNLOAD_DEFAULT_IMAGES=False
IMAGE_URLS="http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img"
# use TryStack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/sice-html5.git

# Credentials
DATABASE_PASSWORD=admin
ADMIN_PASSWORD=admin
SERVICE_PASSWORD=admin
SERVICE_TOKEN=admin
RABBIT_PASSWORD=admin
#FLAT_INTERFACE=enp0s3
HOST_IP=172.31.0.48

enable_service placement-api
enable_service placement-client
disable_service n-net
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
enable_service q-metering
enable_service neutron

可以修改上述内容HOST_IP后,然后base64编码下,执行以下命令:

echo "W1tsb2NhbHxsb2NhbHJjXV0KZW5hYmxlX3BsdWdpbiBtYXNha2FyaSBodHRwczovL29wZW5kZXYub3JnL29wZW5zdGFjay9tYXNha2FyaSBzdGFibGUvdXNzdXJpCiMgRGVmaW5lIGltYWdlcyB0byBiZSBhdXRvbWF0aWNhbGx5IGRvd25sb2FkZWQgZHVyaW5nIHRoZSBEZXZTdGFjayBidWlsdCBwcm9jZXNzLgpET1dOTE9BRF9ERUZBVUxUX0lNQUdFUz1GYWxzZQpJTUFHRV9VUkxTPSJodHRwOi8vZG93bmxvYWQuY2lycm9zLWNsb3VkLm5ldC8wLjMuNC9jaXJyb3MtMC4zLjQteDg2XzY0LWRpc2suaW1nIgojIHVzZSBUcnlTdGFjayBnaXQgbWlycm9yCkdJVF9CQVNFPWh0dHA6Ly9naXQudHJ5c3RhY2suY24KTk9WTkNfUkVQTz1odHRwOi8vZ2l0LnRyeXN0YWNrLmNuL2thbmFrYS9ub1ZOQy5naXQKU1BJQ0VfUkVQTz1odHRwOi8vZ2l0LnRyeXN0YWNrLmNuL2dpdC9zcGljZS9zaWNlLWh0bWw1LmdpdAoKIyBDcmVkZW50aWFscwpEQVRBQkFTRV9QQVNTV09SRD1hZG1pbgpBRE1JTl9QQVNTV09SRD1hZG1pbgpTRVJWSUNFX1BBU1NXT1JEPWFkbWluClNFUlZJQ0VfVE9LRU49YWRtaW4KUkFCQklUX1BBU1NXT1JEPWFkbWluCiNGTEFUX0lOVEVSRkFDRT1lbnAwczMKSE9TVF9JUD0xNzIuMzEuMC40OAoKZW5hYmxlX3NlcnZpY2UgcGxhY2VtZW50LWFwaQplbmFibGVfc2VydmljZSBwbGFjZW1lbnQtY2xpZW50CmRpc2FibGVfc2VydmljZSBuLW5ldAplbmFibGVfc2VydmljZSBxLXN2YwplbmFibGVfc2VydmljZSBxLWFndAplbmFibGVfc2VydmljZSBxLWRoY3AKZW5hYmxlX3NlcnZpY2UgcS1sMwplbmFibGVfc2VydmljZSBxLW1ldGEKZW5hYmxlX3NlcnZpY2UgcS1tZXRlcmluZwplbmFibGVfc2VydmljZSBuZXV0cm9u" |base64 -d >> local.conf

其他问题

以下是安装过程中碰到的其他问题:

1.报错“env: ‘/opt/stack/requirements/.venv/bin/pip’: No such file or directory”

解决方法

cp /usr/local/bin/pip* /opt/stack/requirements/.venv/bin/

2.报错“/opt/stack/devstack/inc/python: line 386: /opt/stack/requirements/.venv/bin/edit-constraints: No such file or directory”

解决方法

find / -name 'edit-constraints'
cp /opt/stack/.local/bin/edit-constraints /opt/stack/requirements/.venv/bin/

3.报错“文件没有权限”

解决方法:因为git clone项目会超时,直接复制项目到/opt/stack文件夹,但是文件权限仍是root.root

sudo chown -R stack.stack /opt/stack/masakari-monitors

 4.报错“g-api服务无法启动”,但是查看服务是启动的

解决方法:执行以下命令重试即可。

nohup ./clean.sh &
nohup ./stack.sh &

5.报错“Didn't find service registered by hostname after 60 seconds”

解决方法

查看n-cpu日志发现报错“ModuleNotFoundError: No module named 'cygvirtmod'”以及“ModuleNotFoundError: No module named 'libvirtmod'”,然后去找libvirt-python的安装文件,你会发现他屁的都没有,查看libvirt-python的安装日志,发现每次卸载都卸载不干净,导致该包一直不完整,但是你如果手动执行“pip install libvirt-python==6.1.0 --ignore-installed”补满文件,然后重试./stack.sh,这个问题还会被复现,因为安装过程中,他会先卸载,然后在装。。。

解决办法有两个:第一个安装过程检查“cd /usr/local/lib/python3.8/dist-packages/li”下的libvirt文件,没有的话,就立即执行“pip install libvirt-python==6.1.0 --ignore-installed”;第二个就是手动安装libvirt-python后,更改inc/python脚本的pip_install_gr函数,检测到name=libvirt-python,跳出安装过程。

 

 执行“journalctl -xe -u devstack@n-cpu*”发现nova-compute报错如下:

安装脚本

安装脚本分为两部分:第一部分是铺垫环境,主要进行更换源、更新apt、创建用户等工作,如下pre.sh

cd /etc/apt/
cp sources.list  sources.list.bak
true > sources.list
echo "ZGViIGh0dHBzOi8vbWlycm9ycy51c3RjLmVkdS5jbi91YnVudHUvIGJpb25pYyBtYWluIHJlc3RyaWN0ZWQgdW5pdmVyc2UgbXVsdGl2ZXJzZQoKZGViLXNyYyBodHRwczovL21pcnJvcnMudXN0Yy5lZHUuY24vdWJ1bnR1LyBiaW9uaWMgbWFpbiByZXN0cmljdGVkIHVuaXZlcnNlIG11bHRpdmVyc2UKCmRlYiBodHRwczovL21pcnJvcnMudXN0Yy5lZHUuY24vdWJ1bnR1LyBiaW9uaWMtdXBkYXRlcyBtYWluIHJlc3RyaWN0ZWQgdW5pdmVyc2UgbXVsdGl2ZXJzZQoKZGViLXNyYyBodHRwczovL21pcnJvcnMudXN0Yy5lZHUuY24vdWJ1bnR1LyBiaW9uaWMtdXBkYXRlcyBtYWluIHJlc3RyaWN0ZWQgdW5pdmVyc2UgbXVsdGl2ZXJzZQoKZGViIGh0dHBzOi8vbWlycm9ycy51c3RjLmVkdS5jbi91YnVudHUvIGJpb25pYy1iYWNrcG9ydHMgbWFpbiByZXN0cmljdGVkIHVuaXZlcnNlIG11bHRpdmVyc2UKCmRlYi1zcmMgaHR0cHM6Ly9taXJyb3JzLnVzdGMuZWR1LmNuL3VidW50dS8gYmlvbmljLWJhY2twb3J0cyBtYWluIHJlc3RyaWN0ZWQgdW5pdmVyc2UgbXVsdGl2ZXJzZQoKZGViIGh0dHBzOi8vbWlycm9ycy51c3RjLmVkdS5jbi91YnVudHUvIGJpb25pYy1zZWN1cml0eSBtYWluIHJlc3RyaWN0ZWQgdW5pdmVyc2UgbXVsdGl2ZXJzZQoKZGViLXNyYyBodHRwczovL21pcnJvcnMudXN0Yy5lZHUuY24vdWJ1bnR1LyBiaW9uaWMtc2VjdXJpdHkgbWFpbiByZXN0cmljdGVkIHVuaXZlcnNlIG11bHRpdmVyc2UKCmRlYiBodHRwczovL21pcnJvcnMudXN0Yy5lZHUuY24vdWJ1bnR1LyBiaW9uaWMtcHJvcG9zZWQgbWFpbiByZXN0cmljdGVkIHVuaXZlcnNlIG11bHRpdmVyc2UKCmRlYi1zcmMgaHR0cHM6Ly9taXJyb3JzLnVzdGMuZWR1LmNuL3VidW50dS8gYmlvbmljLXByb3Bvc2VkIG1haW4gcmVzdHJpY3RlZCB1bml2ZXJzZSBtdWx0aXZlcnNl" |base64 -d >>/etc/apt/sources.list
apt-get update && apt-get upgrade -y
apt-get install git
mkdir ~/.pip
echo "W2dsb2JhbF0gCmluZGV4LXVybCA9IGh0dHBzOi8vcHlwaS5kb3ViYW4uY29tL3NpbXBsZSAgCmRvd25sb2FkX2NhY2hlID0gfi8uY2FjaGUvcGlwICAKW2luc3RhbGxdIAp1c2UtbWlycm9ycyA9IHRydWUgIAptaXJyb3JzID0gaHR0cDovL3B5cGkuZG91YmFuLmNvbS8K"|base64 -d >> ~/.pip/pip.conf
pip3 install --upgrade pip
pip3 install -U os-testr
sudo useradd -s /bin/bash -d /opt/stack -m stack
echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
su - stack

第二部分是安装过程,如下main.sh【需要修改写入local.conf的HOST_IP】

mkdir ~/.pip
echo "W2dsb2JhbF0gCmluZGV4LXVybCA9IGh0dHBzOi8vcHlwaS5kb3ViYW4uY29tL3NpbXBsZSAgCmRvd25sb2FkX2NhY2hlID0gfi8uY2FjaGUvcGlwICAKW2luc3RhbGxdIAp1c2UtbWlycm9ycyA9IHRydWUgIAptaXJyb3JzID0gaHR0cDovL3B5cGkuZG91YmFuLmNvbS8K"|base64 -d >> ~/.pip/pip.conf
git clone https://github.com/openstack-dev/devstack -b stable/ussuri
cd devstack
echo "W1tsb2NhbHxsb2NhbHJjXV0KZW5hYmxlX3BsdWdpbiBtYXNha2FyaSBodHRwczovL29wZW5kZXYub3JnL29wZW5zdGFjay9tYXNha2FyaSBzdGFibGUvdXNzdXJpCiMgRGVmaW5lIGltYWdlcyB0byBiZSBhdXRvbWF0aWNhbGx5IGRvd25sb2FkZWQgZHVyaW5nIHRoZSBEZXZTdGFjayBidWlsdCBwcm9jZXNzLgpET1dOTE9BRF9ERUZBVUxUX0lNQUdFUz1GYWxzZQpJTUFHRV9VUkxTPSJodHRwOi8vZG93bmxvYWQuY2lycm9zLWNsb3VkLm5ldC8wLjMuNC9jaXJyb3MtMC4zLjQteDg2XzY0LWRpc2suaW1nIgojIHVzZSBUcnlTdGFjayBnaXQgbWlycm9yCkdJVF9CQVNFPWh0dHA6Ly9naXQudHJ5c3RhY2suY24KTk9WTkNfUkVQTz1odHRwOi8vZ2l0LnRyeXN0YWNrLmNuL2thbmFrYS9ub1ZOQy5naXQKU1BJQ0VfUkVQTz1odHRwOi8vZ2l0LnRyeXN0YWNrLmNuL2dpdC9zcGljZS9zaWNlLWh0bWw1LmdpdAoKIyBDcmVkZW50aWFscwpEQVRBQkFTRV9QQVNTV09SRD1hZG1pbgpBRE1JTl9QQVNTV09SRD1hZG1pbgpTRVJWSUNFX1BBU1NXT1JEPWFkbWluClNFUlZJQ0VfVE9LRU49YWRtaW4KUkFCQklUX1BBU1NXT1JEPWFkbWluCiNGTEFUX0lOVEVSRkFDRT1lbnAwczMKSE9TVF9JUD0xNzIuMzEuMC40OAoKZW5hYmxlX3NlcnZpY2UgcGxhY2VtZW50LWFwaQplbmFibGVfc2VydmljZSBwbGFjZW1lbnQtY2xpZW50CmRpc2FibGVfc2VydmljZSBuLW5ldAplbmFibGVfc2VydmljZSBxLXN2YwplbmFibGVfc2VydmljZSBxLWFndAplbmFibGVfc2VydmljZSBxLWRoY3AKZW5hYmxlX3NlcnZpY2UgcS1sMwplbmFibGVfc2VydmljZSBxLW1ldGEKZW5hYmxlX3NlcnZpY2UgcS1tZXRlcmluZwplbmFibGVfc2VydmljZSBuZXV0cm9u" |base64 -d >> local.conf
FORCE=yes ./stack.sh

如果想后台执行安装过程:可替换“FORCE=yes ./stack.sh”为“nohup ./stack.sh &”,然后会弹出安装的PID:

安装完成后,日志显示:

 

接下来让我们尽情享受devstack吧~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值