kolla-ansible/ansible/roles/skydive/templates/skydive-analyzer.conf.j2
Nick Jones 7e5aa63728 [skydive] fix: Use Keystone backend to authenticate API users
Update Skydive Analyzer's configuration to use Keystone as its backend
for authenticating users.  Any user with a role in the project defined
by the variable skydive_admin_tenant_name will be able to access
Skydive.

Change-Id: I64c811d5eb72c7406fd52b649fa00edaf2d0c07b
Closes-Bug: 1870903
2020-04-24 19:31:57 +00:00

71 lines
2.0 KiB
Django/Jinja

### Skydive analyzer config file
auth:
keystone:
type: keystone
auth_url: {{ keystone_internal_url }}/v3
region_name: {{ openstack_region_name }}
tenant_name: {{ skydive_admin_tenant_name }}
domain_name: Default
logging:
level: INFO
backends:
- file
file:
path: /var/log/kolla/skydive/skydive-analyzer.log
analyzers:
{% for host in groups['skydive-analyzer'] %}
- {{ 'api' | kolla_address(host) | put_address_in_context('url') }}:{{ skydive_analyzer_port }}
{% endfor %}
etcd:
client_timeout: 100
{% if enable_etcd | bool %}
embedded: false
servers:
{% for host in groups['etcd'] %}
- http://{{ 'api' | kolla_address(host) | put_address_in_context('url') }}:{{ etcd_client_port }}
{% endfor %}
{% else %}
embedded: true
servers:
{% for host in groups['skydive-analyzer'] %}
- http://{{ 'api' | kolla_address(host) | put_address_in_context('url') }}:{{ etcd_client_port }}
{% endfor %}
listen: {{ api_interface_address | put_address_in_context('url') }}:{{ etcd_client_port }}
{% endif %}
analyzer:
auth:
api:
backend: keystone
listen: {{ api_interface_address | put_address_in_context('url') }}:{{ skydive_analyzer_port }}
storage:
backend: elasticsearch
{% if groups['skydive-agent'] | length > 1 %}
topology:
fabric:
{% for interface in [network_interface, neutron_external_interface]|unique %}
{% set interfaces_loop = loop %}
{% for host in groups['skydive-agent'] %}
- TOR{{ interfaces_loop.index }}[Name=tor{{ interfaces_loop.index }}] -> TOR{{ interfaces_loop.index }}_PORT{{ loop.index }}[Name=port{{ loop.index }}, MTU=1500]
- TOR{{ interfaces_loop.index }}_PORT{{ loop.index }} -> *[Type=host,Name={{ hostvars[host]['ansible_hostname'] }}]/{{ interface }}
{% endfor %}
{% endfor %}
{% endif %}
storage:
elasticsearch:
host: {{ elasticsearch_address | put_address_in_context('url') }}:{{ elasticsearch_port }}
maxconns: 10
retry: 60
graph:
backend: elasticsearch
flow:
expire: 600
update: 60