ubuntu-18.04 上的 Openstack 安装问题

Openstack installation issue on ubuntu-18.04

$ cat /etc/issue
Ubuntu 18.04.6 LTS \n \l

我正在按照此 Link 使用 Devstack 安装 Openstack。但是 git clone https://git.openstack.org/openstack-dev/devstack 主分支的 ./stack.sh 失败并出现以下错误。

+./stack.sh:main:230                       SUPPORTED_DISTROS='bullseye|focal|f34|opensuse-15.2|opensuse-tumbleweed|rhel8|rhel9|openEuler-20.03'
+./stack.sh:main:232                       [[ ! bionic =~ bullseye|focal|f34|opensuse-15.2|opensuse-tumbleweed|rhel8|rhel9|openEuler-20.03 ]]

WARNING: this script has not been tested on bionic
+./stack.sh:main:234                       [[ '' != \y\e\s ]]
+./stack.sh:main:235                       die 235 'If you wish to run this script anyway run with FORCE=yes'
+functions-common:die:253                  local exitcode=0
+functions-common:die:254                  set +o xtrace
[Call Trace]
./stack.sh:235:die
[ERROR] ./stack.sh:235 If you wish to run this script anyway run with FORCE=yes
/opt/stack/devstack/functions-common: line 299: /opt/stack/logs/error.log: No such file or directory

甚至 ./stack.sh FORCE=yesstable/newton, stable/pike, stable/victoria & stable/xena 分支也会导致上述相同的错误。

是否已弃用对 Ubuntu 18.04.6 LTS (bionic) 的支持?

Does the support for Ubuntu 18.04.6 LTS (bionic) deprecated?

不完全是。

作为一般规则,最新版本的脚本针对最新支持的(由 Openstack)版本的主机操作系统。旧版本 可能工作 。但可能存在一些小问题……能够阅读/诊断 shell 脚本的人应该能够弄清楚。

如果您需要明确支持(比如)Bionic 的脚本版本,Git6 存储库历史记录中会有一个。

(这符合一般 OpenStack Ubuntu 支持。最新的 OpenStack 版本是 Wallably,Wallaby 不再支持 Bionic。Openstack 的 Bionic -> Focal 交叉版本是Ussuri;参见 https://ubuntu.com/openstack/docs/supported-versions。请注意,Devstack 不是官方 OpenStack 产品,但它们实际上被迫跟踪“受支持的版本”规则,至少松散地如此。)


您签出的 Devstack 脚本版本没有明确支持 Focal 而不是 Bionic。

如果您查看第 230 行的 https://opendev.org/openstack/devstack/src/branch/master/stack.sh,它目前表示:

# Warn users who aren't on an explicitly supported distro, but allow them to
# override check and attempt installation with ``FORCE=yes ./stack``
SUPPORTED_DISTROS="bullseye|focal|f34|opensuse-15.2|opensuse-tumbleweed|rhel8|rhel9|openEuler-20.03" 

如果你想要一个明确支持 bionic 的 devstack 版本,请使用 git blame(或其他)来跟踪对 SUPPORTED_DISTROS 行的更改。您应该能够找到一些不需要 FORCE 的版本。


另一方面....错误信息:

/opt/stack/devstack/functions-common: line 299: /opt/stack/logs/error.log: 
     No such file or directory

暗示脚本假定文件或目录已经存在。您可能只是手动创建它/它们。 (明明只是一个日志文件/目录。)