Compile and install openstack mitaka horizon

    Since the version of the rpm package of openstack is too low, if there is a bug, you can only manually compile and install the new version of horizon.

    For specific bugs, please see BUG Security group not found for project in the dashboard of the openstack mitaka version . If you encounter such a problem, congratulations first, there is already a solution. I've been troubleshooting this for three weeks, you don't need to spend three weeks.

    Prerequisite: There must be another server with the same operating system as the controller, otherwise, you need to download the dependency package when compiling, which will damage the configured system.

1. Add stack development user
   
     sudo adduser stack

      sudo tee <<<"stack ALL=(ALL) NOPASSWD: ALL" /etc/sudoers

      groupadd stack
      useradd -g stack  -m stack

      sudo su --stack


2. Download devstack, the development environment of openstack
git clone https://git.openstack.org/cgit/openstack-dev/devstack

git branch -a

  *master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  remotes/origin/stable/kilo
  remotes/origin/stable/liberty
  remotes/origin/stable/mitaka
  remotes/origin/stable/newton
  remotes/origin/stable/ocata

//Switch to your own version
git checkout -b stable/mitaka



In the devstack root directory, add a configuration file local.conf
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD


Initialize the development environment, you need to download and install more packages, the time is a bit long, just wait
./stack.sh


3. Download the source code of horizon, and compile and configure it
git clone git://git.openstack.org/openstack/horizon

git branch -a

#Switch to the corresponding version
git checkout stable / mitaka


sudo pip install -c http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/mitaka .

cp openstack_dashboard/local/local_settings.py.example openstack_dashboard/local/local_settings.py

sudo ./run_tests.sh --compilemessages
sudo ./manage.py collectstatic
sudo ./manage.py compress --force



Or manually download the packaged version without downloading via git
https://releases.openstack.org/mitaka/index.html#mitaka-horizon
quote
9.1.2 openstack/horizon ce80bb6fec3cb0262728e7ae8b9d695cf832e5bf
9.1.1 openstack/horizon 9a460aad76c05c411765af2b2d85b075a5f7004e
9.1.0 openstack/horizon 8211d685afed20469b5bfd53c008e4bc98e7047a
9.0.1 openstack/horizon f4b9e17315c69749e6e84a518b385b3698d5ab0e
9.0.0 openstack/horizon 2eb320bd31078e3728b91e4badc597624d0827f8


Download the latest version 9.1.2 here. After downloading, you can unzip the source code and perform the following operations
sudo pip install -c http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/mitaka .

cp openstack_dashboard/local/local_settings.py.example openstack_dashboard/local/local_settings.py

sudo ./run_tests.sh --compilemessages
sudo ./manage.py collectstatic
sudo ./manage.py compress --force



After packaging, send it to the server where the controller is located
tar czvf horizon.tar.gz horizon/ --exclude .git



4. Configure the new version of horizon on the controller server. The premise is that you have already installed the dashboard on the server through the command.
yum install openstack-dashboard


Unzip the source file
tar zxvf horizon.tar.gz


Add horizon.conf configuration file to httpd service
# backup original file
cp /etc/httpd/conf.d/openstack-dashboard.conf /etc/httpd/conf.d/openstack-dashboard.conf.bak

mv /etc/httpd/conf.d/openstack-dashboard.conf /etc/httpd/conf.d/horizon.conf


horizon.conf file content
WSGIDaemonProcess dashboard
WSGIProcessGroup dashboard
WSGISocketPrefix run/wsgi

WSGIScriptAlias /dashboard /opt/horizon/openstack_dashboard/wsgi/django.wsgi
Alias /dashboard/static /opt/horizon/static

<Directory /opt/horizon/openstack_dashboard/wsgi>
  Options All
  AllowOverride All
  Require all granted
</Directory>

<Directory /opt/horizon/static>
  Options All
  AllowOverride All
  Require all granted
</Directory>



Execute in the /opt/horizon directory, otherwise all style files will not be found
sudo ./manage.py collectstatic
sudo ./manage.py compress --force



Modify /opt/horizon directory permissions and modify lo
chmod -Rv 775 /opt/horizon


Add and modify the local_settings.py configuration file according to the official documentation
cp /opt/horizon/openstack_dashboard/local/local_settings.py.example /opt/horizon/openstack_dashboard/local/local_settings.py

Configuration documentation
https://docs.openstack.org/mitaka/install-guide-rdo/horizon-install.html

restart server
systemctl restart httpd.service


Access the control panel

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326642084&siteId=291194637
Recommended