97c10411a6
horizon requires Django>=1.11 but lower-constraints.txt in ocatavia-dashboard uses Django 1.8. As a result, the latest Django 3.0.1 which is not supported in horizon yet is installed when installing horizon as sibling. This leads to a failure in lower-constraints job like [1]. [1] https://zuul.opendev.org/t/openstack/build/5ad97e34d5674d00af0713d57c02f616 Differences from the master branch ---------------------------------- requiremens.txt and lower-constraints.txt are updated to match horizon's requirements in stable/stein. Differences from the stable/train branch ---------------------------------------- sphinx in doc/requirements.txt is upated to match global-requirements.txt Change-Id: I7f8db57600b39e4f230261e15d103b1d32968b38 (cherry picked from commit |
||
---|---|---|
devstack | ||
doc | ||
octavia_dashboard | ||
releasenotes | ||
zuul.d | ||
.coveragerc | ||
.eslintrc | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.stestr.conf | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
LICENSE | ||
README.rst | ||
babel-django.cfg | ||
babel-djangojs.cfg | ||
lower-constraints.txt | ||
manage.py | ||
package-lock.json | ||
package.json | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
Team and repository tags
octavia-dashboard
Horizon panels for Octavia
- Free software: Apache license
- Documentation: https://docs.openstack.org/octavia-dashboard/latest/
- Source: https://git.openstack.org/cgit/openstack/octavia-dashboard
- Release notes: https://docs.openstack.org/releasenotes/octavia-dashboard/
- Bugs: https://storyboard.openstack.org/#!/project/909
Features
- Please see octavia repository
Howto
Package the octavia_dashboard by running:
python setup.py sdist
This will create a python egg in the dist folder, which can be used to install on the horizon machine or within horizon's python virtual environment.
Copy
_1482_project_load_balancer_panel.py
inoctavia_dashboard/enabled
directory toopenstack_dashboard/local/enabled
:$ cp -a \ ${OCTAVIA_DASHBOARD_DIR}/octavia_dashboard/enabled/_1482_*.py \ ${HORIZON_DIR}/openstack_dashboard/local/enabled/
(Optional) Generate the policy file and copy into horizon's policy files folder, and copy
_1499_load_balancer_settings.py
inoctavia_dashboard/local_settings.d
directory toopenstack_dashboard/local/local_settings.d
:$ oslopolicy-policy-generator \ --config-file \ ${OCTAVIA_DIR}/etc/policy/octavia-policy-generator.conf \ --output-file \ ${OCTAVIA_DASHBOARD_DIR}/octavia_dashboard/conf/octavia_policy.yaml $ cp -a \ ${OCTAVIA_DASHBOARD_DIR}/octavia_dashboard/conf/octavia_policy.yaml \ ${HORIZON_DIR}/openstack_dashboard/conf/ $ cp -a \ ${OCTAVIA_DASHBOARD_DIR}/octavia_dashboard/local_settings.d/_1499_*.py \ ${HORIZON_DIR}/openstack_dashboard/local/local_settings.d/
Django has a compressor feature that performs many enhancements for the delivery of static files. If the compressor feature is enabled in your environment (
COMPRESS_OFFLINE = True
), run the following commands:$ ./manage.py collectstatic $ ./manage.py compress
Finally restart your web server to enable octavia-dashboard in your Horizon:
$ sudo service apache2 restart
Enabling octavia-dashboard and neutron-lbaas-dashboard
In general we advise against having both dashboards running at the same time to avoid confusing users, which is exaggerated since the dashboards will have the same label.
In rare circumstances, e.g. as part of a migration strategy, it might be necessary to do so. The main issue to watch out for is to avoid neutron-lbaas and Octavia getting out of sync and neutron-lbaas-dashboard showing phantom load balancers - this can be avoided if the sync between Octavia and neutron-lbaas is fully enabled.
Here is a table to show some cases:
Configuration neutron-lbaas | Configuration Octavia | neutron-lbaas-dashboard enabled | octavia-dashboard enabled | Notes |
not installed | v2 API enabled | not supported | preferred | |
octavia-driver | v2 API disabled v1 API enabled | supported | not supported | sync required |
octavia-driver | v2 API enabled v1 API enabled | supported | preferred | sync required |
octavia-proxy plugin | v1 API disabled v2 API enabled | Supported (but not recommended) | preferred | |
no octavia driver but other drivers | not installed | preferred | not supported | |
no octavia driver but other drivers | v2 API enabled v1 API disabled | preferred | preferred | independent services |