# How to install OpenStack Zed on Rocky Linux 9.1 - Using DevStack Let see how to deploy OpenStack Zen on Rocky Linux 9.1 This time, I will try to use [DevStack](https://docs.openstack.org/devstack/latest/) # Rocky Linux 9.1 Install Rocky Linux 9.1, minimal setup, using [DVD ISO](https://download.rockylinux.org/pub/rocky/9/isos/x86_64/Rocky-9.1-x86_64-dvd.iso) I used a VirtualBox VM, 2 VCPU, 8GB RAM, 30 GB Storage, Bridged network (to ease operation from remote). Make sure that root account allow remote login # Create stack user on VM sudo useradd -s /bin/bash -d /opt/stack -m stack sudo chmod +x /opt/stack echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack sudo -u stack -i # Prepare Environment Be sure to be in en_US and UTF-8 (ie: /etc/environment) LANG=en_US.utf-8 LC_ALL=en_US.utf-8 Disable selinux sudo setenforce 0 Make it permanent by editing /etc/sysconfig/selinux SELINUX=disabled Reboot sudo reboot # Connect to VM as stack user You should be connected as non root user, let's use stack account # Prepare DevStack # Install git sudo dnf install git -y # Download DevStack git clone https://opendev.org/openstack/devstack cd devstack # Go to Zed Stable git checkout stable/zed # Configure DevStack Create a configuration file on devstack folder. You should specify VM IP, example 10.0.0.123 [[local|localrc]] ADMIN_PASSWORD=secret DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD HOST_IP=10.0.0.123 # Patch Zed DevStack Back port change found in master ``` --- /opt/stack/devstack/functions-common.orig 2023-03-10 11:15:35.706271496 +0100 +++ /opt/stack/devstack/functions-common 2023-03-10 11:22:21.742556662 +0100 @@ -418,6 +418,9 @@ 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 @@ -466,6 +469,7 @@ "$os_VENDOR" =~ (AlmaLinux) || \ "$os_VENDOR" =~ (Scientific) || \ "$os_VENDOR" =~ (OracleServer) || \ + "$os_VENDOR" =~ (Rocky) || \ "$os_VENDOR" =~ (Virtuozzo) ]]; then # Drop the . release as we assume it's compatible # XXX re-evaluate when we get RHEL10 @@ -513,7 +517,7 @@ # Determine if current distribution is a Fedora-based distribution -# (Fedora, RHEL, CentOS, etc). +# (Fedora, RHEL, CentOS, Rocky, etc). # is_fedora function is_fedora { if [[ -z "$os_VENDOR" ]]; then @@ -523,6 +527,7 @@ [ "$os_VENDOR" = "Fedora" ] || [ "$os_VENDOR" = "Red Hat" ] || \ [ "$os_VENDOR" = "RedHatEnterpriseServer" ] || \ [ "$os_VENDOR" = "RedHatEnterprise" ] || \ + [ "$os_VENDOR" = "Rocky" ] || \ [ "$os_VENDOR" = "CentOS" ] || [ "$os_VENDOR" = "CentOSStream" ] || \ [ "$os_VENDOR" = "AlmaLinux" ] || \ [ "$os_VENDOR" = "OracleServer" ] || [ "$os_VENDOR" = "Virtuozzo" ] ``` # Install OpenStack Logged as stack user and under /opt/stack directory cd /opt/stack ./stack.sh