Merge "Skyline: use an external object store (Swift) in the dashboard"

This commit is contained in:
Zuul 2024-11-27 20:52:02 +00:00 committed by Gerrit Code Review
commit 755bc7470a
5 changed files with 41 additions and 1 deletions

View File

@ -196,3 +196,9 @@ skyline_enable_tls_backend: "{{ kolla_enable_tls_backend }}"
# Custom logos: files and folders will be copied to static folder
####################
skyline_custom_logos: []
####################
# External Swift: url of external Swift service, e.g. when running standalone Ceph
####################
skyline_external_swift: "no"
skyline_external_swift_url: ""

View File

@ -308,6 +308,16 @@ http {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header Host $http_host;
}
{% elif skyline_external_swift | bool %}# Region: {{ openstack_region_name }}, Service: external swift
location {{ skyline_nginx_prefix }}/{{ openstack_region_name | lower }}/swift {
proxy_pass {{ skyline_external_swift_url }};
proxy_redirect {{ skyline_external_swift_url }} {{ skyline_nginx_prefix }}/{{ openstack_region_name | lower }}/swift/;
proxy_buffering off;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header Host $http_host;
}
{% endif %}
}
}

View File

@ -74,7 +74,7 @@ openstack:
{% if enable_neutron | bool %}
network: neutron
{% endif %}
{% if enable_swift | bool or enable_ceph_rgw | bool %}
{% if enable_swift | bool or enable_ceph_rgw | bool or skyline_external_swift | bool %}
object-store: swift
{% endif %}
{% if enable_heat | bool %}

View File

@ -81,3 +81,18 @@ To replace all use
Since the files are overwritten inside the container, you have to remove the
container and recreate it if you want to revert to the default logos. Just
removing the configuration will not remove the files.
External Swift
~~~~~~~~~~~~~~
If you are running an external Swift compatible object store you can add
it to the skyline dashboard. Since Skyline can not use Keystone's
endpoint api, you have to tell it the url of your external service.
You have to set ``skyline_external_swift`` and
``skyline_external_swift_url`` in your configuration:
.. code-block:: yaml
skyline_external_swift: "yes"
skyline_external_swift_url: "https://<your-host>/swift"

View File

@ -0,0 +1,9 @@
---
features:
- |
Setup Skyline to show resources from an external object store in the
dashboard. If you run an external Swift compatible object store you
have to tell Skyline about it as it can not use Keystone's endpoint
api to determine that at runtime. See the reference
`documentation <https://docs.openstack.org/kolla-ansible/latest/reference/shared-services/skyline-guide.html#external-swift>`__
for details.