如何在RHEL 9.1上部署devstack (OpenStack) ?



我想在RHEL 9.1 (https://opendev.org/openstack/DevStack)上安装DevStack(Yoga)。我尝试使用官方手册(https://www.redhat.com/sysadmin/get-started-openstack-devstack)进行部署。

然而,由于无法使用"redhat-lsb-core"$./stack.sh

如有任何帮助,不胜感激。

查看代码,似乎redhat-lsb-core包只需要GetOSVersion函数,并且已经有针对CentOS和Rocky 9的明确规定,两者都像RHEL9一样不包括redhat-lsb-core包:

function GetOSVersion {
# CentOS Stream 9 does not provide lsb_release
source /etc/os-release
if [[ "${ID}${VERSION}" == "centos9" ]]; then
os_RELEASE=${VERSION_ID}
os_CODENAME="n/a"
os_VENDOR=$(echo $NAME | tr -d '[:space:]')
elif [[ "${ID}${VERSION}" =~ "rocky9" ]]; then
os_VENDOR="Rocky"
os_RELEASE=${VERSION_ID}
else
_ensure_lsb_release
os_RELEASE=$(lsb_release -r -s)
os_CODENAME=$(lsb_release -c -s)
os_VENDOR=$(lsb_release -i -s)
fi
...

看起来你可以像对待centos9一样对待RHEL9,也许像这样:

function GetOSVersion {
# CentOS Stream 9 does not provide lsb_release
source /etc/os-release
if [[ "${ID}${VERSION}" == "centos9" ]]; then
os_RELEASE=${VERSION_ID}
os_CODENAME="n/a"
os_VENDOR=$(echo $NAME | tr -d '[:space:]')
elif [[ "${ID}${VERSION}" == rhel9.* ]]; then
os_RELEASE=${VERSION_ID}
os_CODENAME="n/a"
os_VENDOR=$(echo $NAME | tr -d '[:space:]')
elif [[ "${ID}${VERSION}" =~ "rocky9" ]]; then
os_VENDOR="Rocky"
os_RELEASE=${VERSION_ID}
else
...

在RHEL 9.1系统上,它将设置:

os_RELEASE=9.1
os_CODENAME=n/a
os_VENDOR=RedHatEnterpriseLinux

希望这足以推动事情向前发展。

最新更新