Pike Adjustment playbooks and collectd config modifications.
* Include version changes for various adjustment playbooks Change-Id: Ie797e080cecfa4caa9b261984e43efa0c02df23e
This commit is contained in:
parent
0804dc9dc0
commit
c8e44e1afc
@ -2,6 +2,8 @@
|
||||
#
|
||||
# Playbook to adjust Apache prefork settings
|
||||
#
|
||||
# Versions tested: Newton, Ocata
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# ansible-playbook -i hosts browbeat/adjustment-httpd.yml -e 'httpd_startservers=8 httpd_minspareservers=5 httpd_maxspareservers=20 httpd_serverlimit=256 httpd_maxclients=256 httpd_maxrequestsperchild=4000'
|
||||
@ -13,7 +15,7 @@
|
||||
vars_files:
|
||||
- ../install/group_vars/all.yml
|
||||
vars:
|
||||
# Defaults per Pike (OSP11)
|
||||
# Defaults per Ocata (OSP11)
|
||||
httpd_startservers: 8
|
||||
httpd_minspareservers: 5
|
||||
httpd_maxspareservers: 20
|
||||
|
@ -3,9 +3,12 @@
|
||||
# Playbook to adjust Ceilometer configuration items and restart either the
|
||||
# notification agent or the collector.
|
||||
#
|
||||
# Versions tested: Newton, Ocata, Pike
|
||||
#
|
||||
# Examples:
|
||||
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "rabbit_qos_prefetch_count=64"
|
||||
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "rabbit_qos_prefetch_count=64 executor_thread_pool_size=64"
|
||||
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "rabbit_qos_prefetch_count=64 executor_thread_pool_size=64 notification_workers=1"
|
||||
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "rabbit_qos_prefetch_count=64 restart_notification=true"
|
||||
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "rabbit_qos_prefetch_count=64 restart_collector=true"
|
||||
#
|
||||
@ -28,10 +31,28 @@
|
||||
# Defaults
|
||||
default_rabbit_qos_prefetch_count: 0
|
||||
default_executor_thread_pool_size: 64
|
||||
default_notification_workers: 1
|
||||
# Each configuration item needs to be a list so it can be merged
|
||||
rabbit_qos_prefetch_count_item: []
|
||||
executor_thread_pool_size_item: []
|
||||
notification_workers_item: []
|
||||
pre_tasks:
|
||||
- name: Get OSP Version
|
||||
slurp:
|
||||
src: "/etc/rhosp-release"
|
||||
register: osp_version
|
||||
become: true
|
||||
|
||||
- name: (Newton, Ocata) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
ceilometer_config_file: /etc/ceilometer/ceilometer.conf
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Pike) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
ceilometer_config_file: /var/lib/config-data/puppet-generated/ceilometer/etc/ceilometer/ceilometer.conf
|
||||
when: "'Pike' in osp_version['content'] | b64decode"
|
||||
|
||||
- name: Set default rabbit_qos_prefetch_count and executor_thread_pool_size
|
||||
set_fact:
|
||||
ceilometer_configuration:
|
||||
@ -41,7 +62,10 @@
|
||||
- section: DEFAULT
|
||||
option: executor_thread_pool_size
|
||||
value: "{{default_executor_thread_pool_size}}"
|
||||
when: rabbit_qos_prefetch_count is undefined and executor_thread_pool_size is undefined
|
||||
- section: notification
|
||||
option: workers
|
||||
value: "{{default_notification_workers}}"
|
||||
when: rabbit_qos_prefetch_count is undefined and executor_thread_pool_size is undefined and notification_workers is undefined
|
||||
|
||||
- name: Set rabbit_qos_prefetch_count configuration for Ceilometer
|
||||
set_fact:
|
||||
@ -59,9 +83,17 @@
|
||||
value: "{{executor_thread_pool_size}}"
|
||||
when: executor_thread_pool_size is defined
|
||||
|
||||
- name: Set notifications workers configuration for Ceilometer
|
||||
set_fact:
|
||||
notification_workers_item:
|
||||
- section: notification
|
||||
option: workers
|
||||
value: "{{notification_workers}}"
|
||||
when: notification_workers is defined
|
||||
|
||||
- name: Merge configuration items
|
||||
set_fact:
|
||||
ceilometer_configuration: "{{ceilometer_configuration + rabbit_qos_prefetch_count_item + executor_thread_pool_size_item }}"
|
||||
ceilometer_configuration: "{{ceilometer_configuration + rabbit_qos_prefetch_count_item + executor_thread_pool_size_item + notification_workers_item }}"
|
||||
|
||||
roles:
|
||||
- ceilometer-config
|
||||
|
@ -2,6 +2,8 @@
|
||||
#
|
||||
# Reduce the archive-policy to a single retention period to reduce the telemetry load.
|
||||
#
|
||||
# Versions tested: Newton, Ocata
|
||||
#
|
||||
|
||||
- hosts: undercloud
|
||||
remote_user: "{{ local_remote_user }}"
|
||||
@ -24,5 +26,17 @@
|
||||
- section: dispatcher_gnocchi
|
||||
option: archive_policy
|
||||
value: low-workload
|
||||
pre_tasks:
|
||||
- name: Get OSP Version
|
||||
slurp:
|
||||
src: "/etc/rhosp-release"
|
||||
register: osp_version
|
||||
become: true
|
||||
|
||||
- name: (Newton, Ocata) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
ceilometer_config_file: /etc/ceilometer/ceilometer.conf
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
roles:
|
||||
- ceilometer-config
|
||||
|
@ -2,11 +2,12 @@
|
||||
#
|
||||
# Playbook to adjust Gnocchi API wsgi settings
|
||||
#
|
||||
# Versions tested: Newton, Ocata, Pike
|
||||
#
|
||||
# Examples:
|
||||
# ansible-playbook -i hosts browbeat/adjustment-gnocchi-wsgi.yml -e "gnocchi_api_processes=24"
|
||||
# ansible-playbook -i hosts browbeat/adjustment-gnocchi-wsgi.yml -e "gnocchi_api_processes=24 gnocchi_api_threads=6"
|
||||
#
|
||||
#
|
||||
|
||||
- hosts: controller
|
||||
remote_user: "{{ host_remote_user }}"
|
||||
@ -16,5 +17,21 @@
|
||||
vars:
|
||||
gnocchi_api_processes: 12
|
||||
gnocchi_api_threads: 1
|
||||
pre_tasks:
|
||||
- name: Get OSP Version
|
||||
slurp:
|
||||
src: "/etc/rhosp-release"
|
||||
register: osp_version
|
||||
become: true
|
||||
|
||||
- name: (Newton, Ocata) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
gnocchi_api_apache_file: /etc/httpd/conf.d/10-gnocchi_wsgi.conf
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Pike) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
gnocchi_api_apache_file: /var/lib/config-data/puppet-generated/gnocchi/etc/httpd/conf.d/10-gnocchi_wsgi.conf
|
||||
when: "'Pike' in osp_version['content'] | b64decode"
|
||||
roles:
|
||||
- gnocchi-api-config
|
||||
|
@ -2,9 +2,11 @@
|
||||
#
|
||||
# Playbook to adjust Gnocchi config options
|
||||
#
|
||||
# Versions tested: Newton, Ocata, Pike
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# ansible-playbook -i hosts browbeat/adjustment-gnocchi.yml -e 'metricd_workers=12 metric_processing_delay=60 processing_replicas=3'
|
||||
# ansible-playbook -i hosts browbeat/adjustment-gnocchi.yml -e 'metricd_workers=12 metric_processing_delay=30 processing_replicas=3'
|
||||
#
|
||||
|
||||
- hosts: controller
|
||||
@ -13,38 +15,104 @@
|
||||
vars_files:
|
||||
- ../install/group_vars/all.yml
|
||||
vars:
|
||||
metricd_workers: 12
|
||||
metric_processing_delay: 60
|
||||
processing_replicas: 3
|
||||
tasks:
|
||||
- name: Configure Gnocchi Options
|
||||
# Create initial blank configuration list
|
||||
gnocchi_configuration: []
|
||||
# Pike Defaults
|
||||
default_metricd_workers: 12
|
||||
default_metric_processing_delay: 30
|
||||
default_processing_replicas: 3
|
||||
# Each configuration item needs to be a list so it can be merged
|
||||
metricd_workers_item: []
|
||||
metric_processing_delay_item: []
|
||||
processing_replicas_item: []
|
||||
pre_tasks:
|
||||
- name: Get OSP Version
|
||||
slurp:
|
||||
src: "/etc/rhosp-release"
|
||||
register: osp_version
|
||||
become: true
|
||||
ini_file:
|
||||
dest: /etc/gnocchi/gnocchi.conf
|
||||
mode: 0640
|
||||
group: gnocchi
|
||||
section: "{{item.section}}"
|
||||
option: "{{item.option}}"
|
||||
value: "{{item.value}}"
|
||||
backup: yes
|
||||
with_items:
|
||||
# Newton, Ocata, Pike
|
||||
- section: metricd
|
||||
option: workers
|
||||
value: "{{metricd_workers}}"
|
||||
# Newton
|
||||
- section: storage
|
||||
option: metric_processing_delay
|
||||
value: "{{metric_processing_delay}}"
|
||||
# Ocata, Pike
|
||||
- section: metricd
|
||||
option: metric_processing_delay
|
||||
value: "{{metric_processing_delay}}"
|
||||
# Pike
|
||||
- section: metricd
|
||||
option: processing_replicas
|
||||
value: "{{processing_replicas}}"
|
||||
|
||||
- name: Restart openstack-gnocchi-metricd
|
||||
become: true
|
||||
command: systemctl restart openstack-gnocchi-metricd
|
||||
- name: (Newton, Ocata) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
gnocchi_config_file: /etc/gnocchi/gnocchi.conf
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Pike) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
gnocchi_config_file: /var/lib/config-data/puppet-generated/gnocchi/etc/gnocchi/gnocchi.conf
|
||||
when: "'Pike' in osp_version['content'] | b64decode"
|
||||
|
||||
- name: (Newton) Set default metricd_workers and metric_processing_delay
|
||||
set_fact:
|
||||
gnocchi_configuration:
|
||||
- section: metricd
|
||||
option: workers
|
||||
value: "{{default_metricd_workers}}"
|
||||
- section: storage
|
||||
option: metric_processing_delay
|
||||
value: "{{default_metric_processing_delay}}"
|
||||
when: "'Newton' in osp_version['content'] | b64decode and metricd_workers is undefined and metric_processing_delay is undefined"
|
||||
|
||||
- name: (Ocata) Set default metricd_workers and metric_processing_delay
|
||||
set_fact:
|
||||
gnocchi_configuration:
|
||||
- section: metricd
|
||||
option: workers
|
||||
value: "{{default_metricd_workers}}"
|
||||
- section: metricd
|
||||
option: metric_processing_delay
|
||||
value: "{{default_metric_processing_delay}}"
|
||||
when: "'Ocata' in osp_version['content'] | b64decode and metricd_workers is undefined and metric_processing_delay is undefined"
|
||||
|
||||
- name: (Pike) Set default metricd_workers and metric_processing_delay
|
||||
set_fact:
|
||||
gnocchi_configuration:
|
||||
- section: metricd
|
||||
option: workers
|
||||
value: "{{default_metricd_workers}}"
|
||||
- section: metricd
|
||||
option: metric_processing_delay
|
||||
value: "{{default_metric_processing_delay}}"
|
||||
- section: metricd
|
||||
option: processing_replicas
|
||||
value: "{{default_processing_replicas}}"
|
||||
when: "'Pike' in osp_version['content'] | b64decode and metricd_workers is undefined and metric_processing_delay is undefined and processing_replicas is undefined"
|
||||
|
||||
- name: Set metricd_workers configuration
|
||||
set_fact:
|
||||
metricd_workers_item:
|
||||
- section: metricd
|
||||
option: workers
|
||||
value: "{{metricd_workers}}"
|
||||
when: metricd_workers is defined
|
||||
|
||||
- name: (Newton) Set metric_processing_delay configuration
|
||||
set_fact:
|
||||
metric_processing_delay_item:
|
||||
- section: storage
|
||||
option: metric_processing_delay
|
||||
value: "{{metric_processing_delay}}"
|
||||
when: "(metric_processing_delay is defined and 'Newton' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Ocata, Pike) Set metric_processing_delay configuration
|
||||
set_fact:
|
||||
metric_processing_delay_item:
|
||||
- section: metricd
|
||||
option: metric_processing_delay
|
||||
value: "{{metric_processing_delay}}"
|
||||
when: "(metric_processing_delay is defined and ('Ocata' in osp_version['content'] | b64decode or 'Pike' in osp_version['content'] | b64decode))"
|
||||
|
||||
- name: Set processing_replicas configuration
|
||||
set_fact:
|
||||
processing_replicas_item:
|
||||
- section: metricd
|
||||
option: processing_replicas
|
||||
value: "{{processing_replicas}}"
|
||||
when: processing_replicas is defined
|
||||
|
||||
- name: Merge configuration items
|
||||
set_fact:
|
||||
gnocchi_configuration: "{{gnocchi_configuration + metricd_workers_item + metric_processing_delay_item + processing_replicas_item }}"
|
||||
|
||||
roles:
|
||||
- gnocchi-config
|
||||
|
@ -2,12 +2,12 @@
|
||||
#
|
||||
# Playbook to bump the number of max "defaults" (vs global) connections through haproxy
|
||||
#
|
||||
# Versions tested: Newton, Ocata
|
||||
#
|
||||
# Examples:
|
||||
#
|
||||
# ansible-playbook -i hosts browbeat/adjustment-haproxy.yml -e 'old_maxconn=4096 new_maxconn=8192'
|
||||
#
|
||||
#
|
||||
|
||||
|
||||
- hosts: controller
|
||||
remote_user: "{{ host_remote_user }}"
|
||||
|
@ -2,6 +2,8 @@
|
||||
#
|
||||
# Playbook to adjust Nova allocation ratios
|
||||
#
|
||||
# Versions tested: Newton, Ocata
|
||||
#
|
||||
# Examples:
|
||||
# ansible-playbook -i hosts browbeat/adjustment-nova-allocation.yml -e "cpu_allocation_ratio=24"
|
||||
# ansible-playbook -i hosts browbeat/adjustment-nova-allocation.yml -e "cpu_allocation_ratio=24 ram_allocation_ratio=10.0"
|
||||
@ -36,6 +38,17 @@
|
||||
ram_allocation_ratio_item: []
|
||||
disk_allocation_ratio_item: []
|
||||
pre_tasks:
|
||||
- name: Get OSP Version
|
||||
slurp:
|
||||
src: "/etc/rhosp-release"
|
||||
register: osp_version
|
||||
become: true
|
||||
|
||||
- name: (Newton, Ocata) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
nova_config_file: /etc/nova/nova.conf
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: Set default cpu_allocation_ratio/ram_allocation_ratio/disk_allocation_ratio configuration for Nova
|
||||
set_fact:
|
||||
nova_configuration:
|
||||
|
@ -3,6 +3,8 @@
|
||||
# Playbook to adjust Nova Scheduler settings to avoid over-scheduling hosts
|
||||
# with greater memory in uneven memory environments.
|
||||
#
|
||||
# Versions tested: Newton, Ocata, Pike
|
||||
#
|
||||
# Examples:
|
||||
# ansible-playbook -i hosts browbeat/adjustment-nova-scheduler.yml -e 'max_instances_per_host=350'
|
||||
# ansible-playbook -i hosts browbeat/adjustment-nova-scheduler.yml -e 'max_instances_per_host=350 ram_weight_multiplier=0'
|
||||
@ -41,6 +43,22 @@
|
||||
host_subset_size_item: []
|
||||
|
||||
pre_tasks:
|
||||
- name: Get OSP Version
|
||||
slurp:
|
||||
src: "/etc/rhosp-release"
|
||||
register: osp_version
|
||||
become: true
|
||||
|
||||
- name: (Newton, Ocata) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
nova_config_file: /etc/nova/nova.conf
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Pike) Set Config File based on OpenStack Version
|
||||
set_fact:
|
||||
nova_config_file: /var/lib/config-data/puppet-generated/nova/etc/nova/nova.conf
|
||||
when: "'Pike' in osp_version['content'] | b64decode"
|
||||
|
||||
- name: Set default max_instances_per_host, ram_weight_multiplier, enabled_filters, and host_subset_size
|
||||
set_fact:
|
||||
nova_configuration:
|
||||
|
@ -2,6 +2,8 @@
|
||||
#
|
||||
# Playbook to install and enable atd
|
||||
#
|
||||
# Versions tested: Newton, Ocata, Pike
|
||||
#
|
||||
# This allows you to syncohize a script/command across multiple machines.
|
||||
# Example: Synconhized restarting of ceilometer polling across computes
|
||||
# and controllers.
|
||||
|
@ -2,6 +2,8 @@
|
||||
#
|
||||
# Playbook to force ntp time sync
|
||||
#
|
||||
# Versions tested: Newton, Ocata, Pike
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# ansible-playbook -i hosts browbeat/ntp-sync.yml -e 'ntp_server=clock.walkabout.com'
|
||||
|
@ -6,9 +6,10 @@
|
||||
- name: Configure ceilometer.conf
|
||||
become: true
|
||||
ini_file:
|
||||
dest: /etc/ceilometer/ceilometer.conf
|
||||
dest: "{{ceilometer_config_file}}"
|
||||
mode: 0640
|
||||
group: ceilometer
|
||||
# (akrzos) Commented out Group as to prevent in Pike incorrect permissions on config file
|
||||
# group: ceilometer
|
||||
section: "{{ item.section }}"
|
||||
option: "{{ item.option }}"
|
||||
value: "{{ item.value }}"
|
||||
@ -16,12 +17,17 @@
|
||||
with_items:
|
||||
- "{{ceilometer_configuration}}"
|
||||
|
||||
- name: Restart Ceilometer Agent Notification
|
||||
- name: (Newton, Ocata) Restart Ceilometer Agent Notification
|
||||
become: true
|
||||
command: systemctl restart openstack-ceilometer-notification
|
||||
when: restart_notification
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode) and (restart_notification)"
|
||||
|
||||
- name: Restart Ceilometer Collector
|
||||
- name: (Newton, Ocata) Restart Ceilometer Collector
|
||||
become: true
|
||||
command: systemctl restart openstack-ceilometer-collector
|
||||
when: restart_collector
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode) and (restart_collector)"
|
||||
|
||||
- name: (Pike) Restart Ceilometer Agent Notification
|
||||
become: true
|
||||
command: docker restart ceilometer_agent_notification
|
||||
when: "('Pike' in osp_version['content'] | b64decode) and (restart_notification)"
|
||||
|
@ -25,7 +25,7 @@
|
||||
backup: true
|
||||
when: "{{reduced_metrics}} == true and ('Newton' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Ocata, Pike) Deploy polling.yaml file
|
||||
- name: (Ocata) Deploy polling.yaml file
|
||||
become: true
|
||||
template:
|
||||
src: polling.yaml.j2
|
||||
@ -34,9 +34,9 @@
|
||||
group: ceilometer
|
||||
mode: 0640
|
||||
backup: true
|
||||
when: "{{reduced_metrics}} == false and ('Ocata' in osp_version['content'] | b64decode or 'Pike' in osp_version['content'] | b64decode)"
|
||||
when: "{{reduced_metrics}} == false and ('Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Ocata, Pike) Deploy the reduced metrics polling.yaml file
|
||||
- name: (Ocata) Deploy the reduced metrics polling.yaml file
|
||||
become: true
|
||||
template:
|
||||
src: reduced_polling.yaml.j2
|
||||
@ -45,4 +45,15 @@
|
||||
group: ceilometer
|
||||
mode: 0640
|
||||
backup: true
|
||||
when: "{{reduced_metrics}} == true and ('Ocata' in osp_version['content'] | b64decode or 'Pike' in osp_version['content'] | b64decode)"
|
||||
when: "{{reduced_metrics}} == true and ('Ocata' in osp_version['content'] | b64decode or 'Pike')"
|
||||
|
||||
- name: (Containerized Pike) Deploy the polling.yaml
|
||||
become: true
|
||||
template:
|
||||
src: reduced_polling.yaml.j2
|
||||
dest: /var/lib/config-data/ceilometer/etc/ceilometer/polling.yaml
|
||||
owner: root
|
||||
group: ceilometer
|
||||
mode: 0640
|
||||
backup: true
|
||||
when: "('Pike' in osp_version['content'] | b64decode)"
|
||||
|
@ -12,12 +12,19 @@
|
||||
become: true
|
||||
template:
|
||||
src: gnocchi_wsgi.conf.j2
|
||||
dest: /etc/httpd/conf.d/10-gnocchi_wsgi.conf
|
||||
dest: "{{gnocchi_api_apache_file}}"
|
||||
mode: 0640
|
||||
owner: root
|
||||
group: root
|
||||
# (akrzos) Commented out Group as to prevent in Pike incorrect permissions on config file
|
||||
# owner: root
|
||||
# group: root
|
||||
backup: true
|
||||
|
||||
- name: Restart Gnocchi API (httpd)
|
||||
- name: (Newton, Ocata) Restart Gnocchi API (httpd)
|
||||
become: true
|
||||
command: systemctl restart httpd
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Pike) Restart Gnocchi API (httpd)
|
||||
become: true
|
||||
command: docker restart gnocchi_api
|
||||
when: "'Pike' in osp_version['content'] | b64decode"
|
||||
|
28
ansible/browbeat/roles/gnocchi-config/tasks/main.yml
Normal file
28
ansible/browbeat/roles/gnocchi-config/tasks/main.yml
Normal file
@ -0,0 +1,28 @@
|
||||
---
|
||||
#
|
||||
# Tasks to adjust Gnocchi configuration items
|
||||
#
|
||||
|
||||
- name: Configure gnocchi.conf
|
||||
become: true
|
||||
ini_file:
|
||||
dest: "{{gnocchi_config_file}}"
|
||||
mode: 0640
|
||||
# (akrzos) Commented out Group as to prevent in Pike incorrect permissions on config file
|
||||
# group: gnocchi
|
||||
section: "{{item.section}}"
|
||||
option: "{{item.option}}"
|
||||
value: "{{item.value}}"
|
||||
backup: yes
|
||||
with_items:
|
||||
- "{{gnocchi_configuration}}"
|
||||
|
||||
- name: (Newton, Ocata) Restart Gnocchi Metricd
|
||||
become: true
|
||||
command: systemctl restart openstack-gnocchi-metricd
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Pike) Restart Gnocchi Metricd
|
||||
become: true
|
||||
command: docker restart gnocchi_metricd
|
||||
when: "'Pike' in osp_version['content'] | b64decode"
|
@ -3,12 +3,13 @@
|
||||
# Configure nova.conf tasks
|
||||
#
|
||||
|
||||
- name: Configure nova.conf
|
||||
- name: (Newton, Ocata, Pike) Configure nova.conf
|
||||
become: true
|
||||
ini_file:
|
||||
dest: /etc/nova/nova.conf
|
||||
dest: "{{nova_config_file}}"
|
||||
mode: 0640
|
||||
group: nova
|
||||
# (akrzos) Commented out Group as to prevent in Pike incorrect permissions on config file
|
||||
# group: nova
|
||||
section: "{{ item.section }}"
|
||||
option: "{{ item.option }}"
|
||||
value: "{{ item.value }}"
|
||||
@ -16,7 +17,7 @@
|
||||
with_items:
|
||||
- "{{nova_configuration}}"
|
||||
|
||||
- name: Restart Nova Services
|
||||
- name: (Newton, Ocata) Restart Nova Services
|
||||
become: true
|
||||
service:
|
||||
name: "{{ item }}"
|
||||
@ -28,4 +29,11 @@
|
||||
- openstack-nova-novncproxy
|
||||
- openstack-nova-consoleauth
|
||||
- httpd
|
||||
when: restart_nova
|
||||
when: "('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode) and (restart_nova)"
|
||||
|
||||
- name: (Pike) Restart Nova Scheduler Container
|
||||
become: true
|
||||
command: "docker restart {{item}}"
|
||||
with_items:
|
||||
- nova_scheduler
|
||||
when: "('Pike' in osp_version['content'] | b64decode) and (restart_nova)"
|
||||
|
@ -1,13 +1,15 @@
|
||||
---
|
||||
#
|
||||
# Playbook to sync ceilometer polling across the controller and compute nodes
|
||||
# Playbook to sync ceilometer polling across the controller and compute nodes.
|
||||
# Requires atd installed and runinng on controllers and compute nodes.
|
||||
#
|
||||
# Versions tested: Newton, Ocata, Pike
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# ansible-playbook -i hosts browbeat/sync-ceilometer-polling.yml -e 'task_time=18:25'
|
||||
#
|
||||
|
||||
# Pike
|
||||
- hosts: controller,compute
|
||||
remote_user: "{{ host_remote_user }}"
|
||||
gather_facts: false
|
||||
@ -32,12 +34,12 @@
|
||||
|
||||
- name: (Pike) Set Controller Task
|
||||
set_fact:
|
||||
the_task: "systemctl restart openstack-ceilometer-polling.service"
|
||||
the_task: "docker restart ceilometer_agent_central"
|
||||
when: "('Pike' in osp_version['content'] | b64decode) and ('controller' in group_names)"
|
||||
|
||||
- name: (Pike) Set Compute Task
|
||||
set_fact:
|
||||
the_task: "systemctl restart openstack-ceilometer-polling.service"
|
||||
the_task: "docker restart ceilometer_agent_compute"
|
||||
when: "('Pike' in osp_version['content'] | b64decode) and ('compute' in group_names)"
|
||||
|
||||
roles:
|
||||
|
@ -38,6 +38,7 @@
|
||||
vars:
|
||||
config_type: controller
|
||||
roles:
|
||||
- { role: osp_version }
|
||||
- { role: common, when: collectd_controller }
|
||||
- { role: epel, when: collectd_controller }
|
||||
- { role: repo }
|
||||
@ -110,6 +111,7 @@
|
||||
vars:
|
||||
config_type: compute
|
||||
roles:
|
||||
- { role: osp_version }
|
||||
- { role: common, when: collectd_compute }
|
||||
- { role: epel, when: collectd_compute }
|
||||
- { role: repo }
|
||||
|
@ -127,7 +127,7 @@
|
||||
when: "(gnocchi_status_controller_collectd_plugin == true) and (inventory_hostname == groups['controller'][0])"
|
||||
|
||||
# Apache Request Response Timing
|
||||
- name: Deploy Apache httpd.conf
|
||||
- name: (Newton, Ocata) Deploy Apache httpd.conf for request timings
|
||||
become: true
|
||||
copy:
|
||||
src: httpd.conf
|
||||
@ -136,15 +136,31 @@
|
||||
group: root
|
||||
mode: 0644
|
||||
backup: true
|
||||
when: "('controller' in group_names and {{apache_controller_collectd_request_time}} == true)"
|
||||
when: "('controller' in group_names and {{apache_controller_collectd_request_time}} == true) and ('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: Restart Apache
|
||||
- name: (Pike) Deploy Apache httpd.conf for request timings
|
||||
become: true
|
||||
copy:
|
||||
src: httpd.conf
|
||||
dest: /var/lib/config-data/puppet-generated/gnocchi/etc/httpd/conf/httpd.conf
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
backup: true
|
||||
when: "('controller' in group_names and {{apache_controller_collectd_request_time}} == true) and ('Pike' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Newton, Ocata) Restart Apache
|
||||
become: true
|
||||
service:
|
||||
name: httpd
|
||||
state: restarted
|
||||
enabled: true
|
||||
when: "('controller' in group_names and {{apache_controller_collectd_request_time}} == true)"
|
||||
when: "('controller' in group_names and {{apache_controller_collectd_request_time}} == true) and ('Newton' in osp_version['content'] | b64decode or 'Ocata' in osp_version['content'] | b64decode)"
|
||||
|
||||
- name: (Pike) Restart Gnocchi API Container
|
||||
become: true
|
||||
command: docker restart gnocchi_api
|
||||
when: "('controller' in group_names and {{apache_controller_collectd_request_time}} == true) and ('Pike' in osp_version['content'] | b64decode)"
|
||||
# End Apache Request Response Timing
|
||||
|
||||
# Apache Monitoring
|
||||
|
@ -156,14 +156,14 @@ PreCacheChain "PreCache"
|
||||
# A Minus before the version means the process was not found in that version. (Ex -9)
|
||||
<Plugin processes>
|
||||
# Ceph (OpenStack Installed)
|
||||
ProcessMatch "ceph-osd" "^/usr/bin/ceph-osd" # 10,11
|
||||
ProcessMatch "ceph-osd" "^/usr/bin/ceph-osd" # 10,11,12
|
||||
|
||||
# Collectd (Browbeat Installed)
|
||||
ProcessMatch "collectd" "/usr/sbin/collectd"
|
||||
|
||||
# OVS (OpenStack Installed)
|
||||
ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 10,11
|
||||
ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 10,11
|
||||
ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 10,11,12
|
||||
ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 10,11,12
|
||||
</Plugin>
|
||||
|
||||
<Plugin swap>
|
||||
|
@ -143,7 +143,7 @@ PreCacheChain "PreCache"
|
||||
# A Minus before the version means the process was not found in that version. (Ex -10)
|
||||
<Plugin processes>
|
||||
# Ceilometer (OpenStack Installed)
|
||||
ProcessMatch "ceilometer-polling" "ceilometer-polling" # 10,11
|
||||
ProcessMatch "ceilometer-polling" "ceilometer-polling" # 10,11,12
|
||||
|
||||
# Collectd (Browbeat Installed)
|
||||
ProcessMatch "collectd" "/usr/sbin/collectd"
|
||||
@ -152,24 +152,24 @@ PreCacheChain "PreCache"
|
||||
ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" # 10 with DVR
|
||||
ProcessMatch "neutron-ns-metadata-proxy" "python.+neutron-ns-metadata-proxy" # 10 with DVR
|
||||
ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" # 10 with DVR
|
||||
ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 10,11
|
||||
ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 10,11,12
|
||||
|
||||
# Nova (OpenStack Installed)
|
||||
ProcessMatch "nova-compute" "python.+nova-compute" # 10,11
|
||||
ProcessMatch "privsep-helper" "python.+/bin/privsep-helper" # 11
|
||||
ProcessMatch "nova-compute" "python.+nova-compute" # 10,11,12
|
||||
ProcessMatch "privsep-helper" "python.+/bin/privsep-helper" # 11,12
|
||||
|
||||
# OVS (OpenStack Installed)
|
||||
ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 10,11
|
||||
ProcessMatch "ovsdb-client" "ovsdb-client" # 10,11
|
||||
ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 10,11
|
||||
ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 10,11,12
|
||||
ProcessMatch "ovsdb-client" "ovsdb-client" # 10,11,12
|
||||
ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 10,11,12
|
||||
ProcessMatch "ovn-controller" "ovn-controller.+openvswitch" # 9,10
|
||||
ProcessMatch "ovn-controller-vtep" "ovn-controller-vtep.+openvswitch" # 9,10
|
||||
|
||||
# QEMU / libvirt (OpenStack Installed)
|
||||
ProcessMatch "qemu-kvm" "/usr/libexec/qemu-kvm" # 10,11
|
||||
ProcessMatch "libvirtd" "/usr/sbin/libvirtd" # 10,11
|
||||
ProcessMatch "virtlockd" "/usr/sbin/virtlockd" # 10,11
|
||||
ProcessMatch "virtlogd" "/usr/sbin/virtlogd" # 10,11
|
||||
ProcessMatch "qemu-kvm" "/usr/libexec/qemu-kvm" # 10,11,12
|
||||
ProcessMatch "libvirtd" "/usr/sbin/libvirtd" # 10,11,12
|
||||
ProcessMatch "virtlockd" "/usr/sbin/virtlockd" # 10,11,-12
|
||||
ProcessMatch "virtlogd" "/usr/sbin/virtlogd" # 10,11,12
|
||||
</Plugin>
|
||||
|
||||
<Plugin swap>
|
||||
@ -180,7 +180,11 @@ PreCacheChain "PreCache"
|
||||
# Tail plugin configuration
|
||||
<Plugin "tail">
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/ceilometer/compute.log">
|
||||
{% else %}
|
||||
<File "/var/log/ceilometer/compute.log">
|
||||
{% endif %}
|
||||
Instance "ceilometer-compute"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -282,7 +286,11 @@ PreCacheChain "PreCache"
|
||||
{% endif %}
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/nova/nova-compute.log">
|
||||
{% else %}
|
||||
<File "/var/log/nova/nova-compute.log">
|
||||
{% endif %}
|
||||
Instance "nova-compute"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
|
@ -260,121 +260,127 @@ PreCacheChain "PreCache"
|
||||
# A Minus before the version means the process was not found in that version. (Ex -10)
|
||||
<Plugin processes>
|
||||
# Aodh (OpenStack Installed)
|
||||
ProcessMatch "aodh-evaluator" "aodh-evaluator" # 10,11
|
||||
ProcessMatch "aodh-listener" "aodh-listener" # 10,11
|
||||
ProcessMatch "aodh-notifier" "aodh-notifier" # 10,11
|
||||
ProcessMatch "aodh_wsgi" "aodh_wsgi.*-DFOREGROUND" # 11
|
||||
ProcessMatch "aodh-evaluator" "aodh-evaluator" # 10,11,12
|
||||
ProcessMatch "aodh-listener" "aodh-listener" # 10,11,12
|
||||
ProcessMatch "aodh-notifier" "aodh-notifier" # 10,11,12
|
||||
ProcessMatch "aodh_wsgi" "aodh_wsgi.*-DFOREGROUND" # 11,12
|
||||
|
||||
# Ceilometer (OpenStack Installed)
|
||||
ProcessMatch "ceilometer-agent-notification" "ceilometer-agent-notification" # 10,11
|
||||
ProcessMatch "ceilometer-api" "python.+ceilometer-api" # -10(httpd),-11(httpd)
|
||||
ProcessMatch "ceilometer-collector" "ceilometer-collector" # 10,11
|
||||
ProcessMatch "ceilometer-polling" "ceilometer-polling" # 10,11
|
||||
ProcessMatch "ceilometer_wsgi" "ceilometer_wsgi.*-DFOREGROUND" # 11
|
||||
ProcessMatch "ceilometer-agent-notification" "ceilometer-agent-notification" # 10,11,12
|
||||
ProcessMatch "ceilometer-collector" "ceilometer-collector" # 10,11,-12
|
||||
ProcessMatch "ceilometer-polling" "ceilometer-polling" # 10,11,12
|
||||
ProcessMatch "ceilometer_wsgi" "ceilometer_wsgi.*-DFOREGROUND" # 11,-12
|
||||
|
||||
# Ceph (OpenStack Installed)
|
||||
# When CephStorage nodes deployed
|
||||
ProcessMatch "ceph-mon" "^/usr/bin/ceph-mon" # -10,-11
|
||||
ProcessMatch "ceph-mon" "^/usr/bin/ceph-mon" # -10,-11,-12
|
||||
|
||||
# Cinder (OpenStack Installed)
|
||||
ProcessMatch "cinder-api" "python.+cinder-api" # 10,-11
|
||||
ProcessMatch "cinder-scheduler" "python.+cinder-scheduler" # 10,11
|
||||
ProcessMatch "cinder-volume" "python.+cinder-volume" # 10,11
|
||||
ProcessMatch "cinder_wsgi" "cinder_wsgi.*-DFOREGROUND" # 11
|
||||
ProcessMatch "cinder-api" "python.+cinder-api" # 10,-11,-12
|
||||
ProcessMatch "cinder-scheduler" "python.+cinder-scheduler" # 10,11,12
|
||||
ProcessMatch "cinder-volume" "python.+cinder-volume" # 10,11,12
|
||||
ProcessMatch "cinder_wsgi" "cinder_wsgi.*-DFOREGROUND" # 11,12
|
||||
|
||||
# Collectd (Browbeat Installed)
|
||||
ProcessMatch "collectd" "/usr/sbin/collectd"
|
||||
|
||||
# Pacemaker / Corosync (OpenStack Installed)
|
||||
ProcessMatch "attrd" "/usr/libexec/pacemaker/attrd" # 10,11
|
||||
ProcessMatch "cib" "/usr/libexec/pacemaker/cib" # 10,11
|
||||
Process "corosync" # 10,11
|
||||
ProcessMatch "crmd" "/usr/libexec/pacemaker/crmd" # 10,11
|
||||
ProcessMatch "lrmd" "/usr/libexec/pacemaker/lrmd" # 10,11
|
||||
ProcessMatch "pacemakerd" "/usr/sbin/pacemakerd" # 10,11
|
||||
ProcessMatch "pcsd" "^/usr/bin/ruby.+/usr/lib/pcsd" # 10,11
|
||||
ProcessMatch "pengine" "/usr/libexec/pacemaker/pengine" # 10,11
|
||||
ProcessMatch "stonithd" "/usr/libexec/pacemaker/stonithd" # 10,11
|
||||
ProcessMatch "attrd" "/usr/libexec/pacemaker/attrd" # 10,11,12
|
||||
ProcessMatch "cib" "/usr/libexec/pacemaker/cib" # 10,11,12
|
||||
Process "corosync" # 10,11,12
|
||||
ProcessMatch "crmd" "/usr/libexec/pacemaker/crmd" # 10,11,12
|
||||
ProcessMatch "lrmd" "/usr/libexec/pacemaker/lrmd" # 10,11,12
|
||||
ProcessMatch "pacemakerd" "/usr/sbin/pacemakerd" # 10,11,12
|
||||
ProcessMatch "pcsd" "^/usr/bin/ruby.+/usr/lib/pcsd" # 10,11,12
|
||||
ProcessMatch "pengine" "/usr/libexec/pacemaker/pengine" # 10,11,12
|
||||
ProcessMatch "stonithd" "/usr/libexec/pacemaker/stonithd" # 10,11,12
|
||||
|
||||
# Everything Else (OpenStack Installed)
|
||||
# (Processes displayed under "Everything Else" on Grafana Dashboards)
|
||||
ProcessMatch "dnsmasq" "^dnsmasq.+" # 10,11
|
||||
ProcessMatch "haproxy" "/usr/sbin/haproxy.+/etc/haproxy/haproxy.cfg" # 10,11
|
||||
Process "httpd" # 10,11
|
||||
Process "memcached" # 10,11
|
||||
Process "mongod" # 10,11
|
||||
ProcessMatch "mysqld" "/usr/libexec/mysqld" # 10,11
|
||||
ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" # 10,11
|
||||
Process "redis-server" # 10,11
|
||||
ProcessMatch "dnsmasq" "^dnsmasq.+" # 10,11,12
|
||||
ProcessMatch "haproxy" "/usr/sbin/haproxy.+/etc/haproxy/haproxy.cfg" # 10,11,12
|
||||
Process "httpd" # 10,11,12
|
||||
Process "keepalived" # 10,11,12
|
||||
Process "memcached" # 10,11,12
|
||||
Process "mongod" # 10,11,-12
|
||||
ProcessMatch "mysqld" "/usr/libexec/mysqld" # 10,11,12
|
||||
ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" # 10,11,12
|
||||
Process "redis-server" # 10,11,12
|
||||
ProcessMatch "karaf" "java.+karaf" # ODL Specific
|
||||
|
||||
# Glance (OpenStack Installed)
|
||||
ProcessMatch "glance-api" "python.+glance-api" # 10,11
|
||||
ProcessMatch "glance-registry" "python.+glance-registry" # 10,-11
|
||||
ProcessMatch "glance-api" "python.+glance-api" # 10,11,12
|
||||
ProcessMatch "glance-registry" "python.+glance-registry" # 10,-11,-12
|
||||
|
||||
# Gnocchi (OpenStack Installed)
|
||||
ProcessMatch "gnocchi-metricd-master" "gnocchi-metricd.*master" # 11
|
||||
ProcessMatch "gnocchi-metricd-scheduler" "gnocchi-metricd.*scheduler" # 10,11
|
||||
ProcessMatch "gnocchi-metricd-processing" "gnocchi-metricd.*processing" # 10,11
|
||||
ProcessMatch "gnocchi-metricd-reporting" "gnocchi-metricd.*reporting" # 10,11
|
||||
ProcessMatch "gnocchi-metricd-janitor" "gnocchi-metricd.*janitor" # 10,11
|
||||
ProcessMatch "gnocchi-metricd-master" "gnocchi-metricd.*master" # 11,12
|
||||
ProcessMatch "gnocchi-metricd-scheduler" "gnocchi-metricd.*scheduler" # 10,11,-12
|
||||
ProcessMatch "gnocchi-metricd-processing" "gnocchi-metricd.*processing" # 10,11,12
|
||||
ProcessMatch "gnocchi-metricd-reporting" "gnocchi-metricd.*reporting" # 10,11,12
|
||||
ProcessMatch "gnocchi-metricd-janitor" "gnocchi-metricd.*janitor" # 10,11,12
|
||||
ProcessMatch "gnocchi-metricd" "gnocchi-metricd " # 10(Old proctitle)
|
||||
ProcessMatch "gnocchi-statsd" "python.+gnocchi-statsd" # 10,11
|
||||
ProcessMatch "gnocchi_wsgi" "gnocchi_wsgi.*-DFOREGROUND" # 11
|
||||
ProcessMatch "gnocchi-statsd" "python.+gnocchi-statsd" # 10,11,12
|
||||
ProcessMatch "gnocchi_wsgi" "gnocchi_wsgi.*-DFOREGROUND" # 11,12
|
||||
|
||||
# Heat (OpenStack Installed)
|
||||
ProcessMatch "heat-api" "python.+heat-api --config-file" # 10,11
|
||||
ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" # 10,11
|
||||
ProcessMatch "heat-api-cloudwatch" "python.+heat-api-cloudwatch" # 10,11
|
||||
ProcessMatch "heat-engine" "python.+heat-engine" # 10,11
|
||||
ProcessMatch "heat-api" "python.+heat-api --config-file" # 10,11,-12(httpd)
|
||||
ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" # 10,11,-12(httpd)
|
||||
ProcessMatch "heat-api-cloudwatch" "python.+heat-api-cloudwatch" # 10,11,-12(httpd)
|
||||
ProcessMatch "heat_api_cfn" "heat_api_cfn_ws" # 12
|
||||
ProcessMatch "heat_api_cloudwatch" "heat_api_cloudw" # 12
|
||||
ProcessMatch "heat_api_wsgi" "heat_api_wsgi" # 12
|
||||
ProcessMatch "heat-engine" "python.+heat-engine" # 10,11,12
|
||||
|
||||
# Keystone (OpenStack Installed)
|
||||
ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" # 10,11
|
||||
ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" # 10,11
|
||||
ProcessMatch "keystone-token-flush" "keystone-manage.*token_flush" # 10,11
|
||||
ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" # 10,11,12
|
||||
ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" # 10,11,12
|
||||
# Starting Pike, fernet tokens are default thus token_flush not needed
|
||||
ProcessMatch "keystone-token-flush" "keystone-manage.*token_flush" # 10,11,-12
|
||||
|
||||
# Neutron (OpenStack Installed)
|
||||
ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" # 10,11
|
||||
ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" # 10,11
|
||||
ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" # 10,11
|
||||
ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" # 10,11,12
|
||||
ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" # 10,11,12
|
||||
ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" # 10,11,12
|
||||
ProcessMatch "neutron-ns-metadata-proxy" "python.+neutron-ns-metadata-proxy" # 10,11
|
||||
ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 10,11
|
||||
ProcessMatch "neutron-server" "python.+neutron-server" # 10,11
|
||||
ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 10,11,12
|
||||
ProcessMatch "neutron-server" "python.+neutron-server" # 10,11,12
|
||||
|
||||
# Nova (OpenStack Installed)
|
||||
ProcessMatch "nova-api" "python.+nova-api" # 10,11
|
||||
ProcessMatch "nova-conductor" "python.+nova-conductor" # 10,11
|
||||
ProcessMatch "nova-consoleauth" "python.+nova-consoleauth" # 10,11
|
||||
ProcessMatch "nova-novncproxy" "python.+nova-novncproxy" # 10,11
|
||||
ProcessMatch "nova-scheduler" "python.+nova-scheduler" # 10,11
|
||||
ProcessMatch "placement_wsgi" "placement_wsgi.*-DFOREGROUND" # 11
|
||||
ProcessMatch "nova-api-metadata" "python.+nova-api-metadata" # 12
|
||||
ProcessMatch "nova_api_wsgi" "nova_api_wsgi" # 12
|
||||
ProcessMatch "nova-conductor" "python.+nova-conductor" # 10,11,12
|
||||
ProcessMatch "nova-consoleauth" "python.+nova-consoleauth" # 10,11,12
|
||||
ProcessMatch "nova-novncproxy" "python.+nova-novncproxy" # 10,11,12
|
||||
ProcessMatch "nova-scheduler" "python.+nova-scheduler" # 10,11,12
|
||||
ProcessMatch "placement_wsgi" "placement_wsgi.*-DFOREGROUND" # 11,12
|
||||
|
||||
# OVS (OpenStack Installed)
|
||||
ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 10,11
|
||||
ProcessMatch "ovsdb-client" "ovsdb-client" # 10,11
|
||||
ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 10,11
|
||||
ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 10,11,12
|
||||
ProcessMatch "ovsdb-client" "ovsdb-client" # 10,11,12
|
||||
ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 10,11,12
|
||||
ProcessMatch "ovn-northd" "ovn-northd.+openvswitch" # 9,10
|
||||
ProcessMatch "ovn-controller" "ovn-controller.+openvswitch" # 9,10
|
||||
ProcessMatch "ovn-controller-vtep" "ovn-controller-vtep.+openvswitch" # 9,10
|
||||
|
||||
# Panko (OpenStack Installed)
|
||||
ProcessMatch "panko_wsgi" "panko_wsgi.*-DFOREGROUND" # 11
|
||||
ProcessMatch "panko_wsgi" "panko_wsgi.*-DFOREGROUND" # 11,12
|
||||
|
||||
# Swift (OpenStack Installed)
|
||||
ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" # 10,11
|
||||
ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" # 10,11
|
||||
ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" # 10,11
|
||||
ProcessMatch "swift-account-server" "python.+swift-account-server" # 10,11
|
||||
ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" # 10,11
|
||||
ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" # 10,11
|
||||
ProcessMatch "swift-container-server" "python.+swift-container-server" # 10,11
|
||||
ProcessMatch "swift-container-updater" "python.+swift-container-updater" # 10,11
|
||||
ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" # 10,11
|
||||
ProcessMatch "swift-object-expirer" "python.+swift-object-expirer" # 11
|
||||
ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" # 10,11
|
||||
ProcessMatch "swift-object-server" "python.+swift-object-server" # 10,11
|
||||
ProcessMatch "swift-object-updater" "python.+swift-object-updater" # 10,11
|
||||
ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" # 10,11
|
||||
ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" # 10,11,12
|
||||
ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" # 10,11,12
|
||||
ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" # 10,11,12
|
||||
ProcessMatch "swift-account-server" "python.+swift-account-server" # 10,11,12
|
||||
ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" # 10,11,12
|
||||
ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" # 10,11,12
|
||||
ProcessMatch "swift-container-server" "python.+swift-container-server" # 10,11,12
|
||||
ProcessMatch "swift-container-updater" "python.+swift-container-updater" # 10,11,12
|
||||
ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" # 10,11,12
|
||||
ProcessMatch "swift-object-expirer" "python.+swift-object-expirer" # 11,12
|
||||
ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" # 10,11,12
|
||||
ProcessMatch "swift-object-server" "python.+swift-object-server" # 10,11,12
|
||||
ProcessMatch "swift-object-updater" "python.+swift-object-updater" # 10,11,12
|
||||
ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" # 10,11,12
|
||||
</Plugin>
|
||||
|
||||
{%if rabbitmq_controller_collectd_plugin %}
|
||||
@ -449,7 +455,11 @@ PreCacheChain "PreCache"
|
||||
|
||||
# Tail httpd request time
|
||||
{%if apache_controller_collectd_request_time %}
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/gnocchi-api/gnocchi_wsgi_access.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/gnocchi_wsgi_access.log">
|
||||
{% endif %}
|
||||
Instance "gnocchi-api"
|
||||
|
||||
# Gnocchi API Post
|
||||
@ -549,7 +559,12 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/keystone/keystone_wsgi_admin_access.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/keystone_wsgi_admin_access.log">
|
||||
{% endif %}
|
||||
Instance "keystone-admin-api"
|
||||
|
||||
# Keystone Admin Post
|
||||
@ -623,7 +638,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/keystone/keystone_wsgi_main_access.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/keystone_wsgi_main_access.log">
|
||||
{% endif %}
|
||||
Instance "keystone-main-api"
|
||||
|
||||
# Keystone Main Post
|
||||
@ -697,7 +716,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/nova-placement/placement_wsgi_access.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/placement_wsgi_access.log">
|
||||
{% endif %}
|
||||
Instance "nova-placement-api"
|
||||
|
||||
# Nova Placement Post
|
||||
@ -809,7 +832,11 @@ PreCacheChain "PreCache"
|
||||
{% endif %}
|
||||
# End Tail httpd request time
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/aodh/aodh-evaluator.log">
|
||||
{% else %}
|
||||
<File "/var/log/aodh/evaluator.log">
|
||||
{% endif %}
|
||||
Instance "aodh-evaluator"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -834,7 +861,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/aodh/aodh-listener.log">
|
||||
{% else %}
|
||||
<File "/var/log/aodh/listener.log">
|
||||
{% endif %}
|
||||
Instance "aodh-listener"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -859,7 +890,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/aodh/aodh-notifier.log">
|
||||
{% else %}
|
||||
<File "/var/log/aodh/notifier.log">
|
||||
{% endif %}
|
||||
Instance "aodh-notifier"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -884,7 +919,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/aodh-api/aodh_wsgi_error.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/aodh_wsgi_error.log">
|
||||
{% endif %}
|
||||
Instance "aodh-wsgi-api"
|
||||
<Match>
|
||||
Regex ":error"
|
||||
@ -894,7 +933,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/ceilometer/agent-notification.log">
|
||||
{% else %}
|
||||
<File "/var/log/ceilometer/agent-notification.log">
|
||||
{% endif %}
|
||||
Instance "ceilometer-agent-notification"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -944,6 +987,9 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
# No need to tail for ceilometer-collector/ceilometer_wsgi in Pike
|
||||
{% else %}
|
||||
<File "/var/log/ceilometer/collector.log">
|
||||
Instance "ceilometer-collector"
|
||||
<Match>
|
||||
@ -952,22 +998,22 @@ PreCacheChain "PreCache"
|
||||
Type "counter"
|
||||
Instance "error"
|
||||
</Match>
|
||||
{%if regex_warn %}
|
||||
{%if regex_warn %}
|
||||
<Match>
|
||||
Regex " WARNING "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "warn"
|
||||
</Match>
|
||||
{% endif %}
|
||||
{%if regex_info %}
|
||||
{% endif %}
|
||||
{%if regex_info %}
|
||||
<Match>
|
||||
Regex " INFO "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "info"
|
||||
</Match>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</File>
|
||||
<File "/var/log/httpd/ceilometer_wsgi_error.log">
|
||||
Instance "ceilometer-wsgi-api"
|
||||
@ -978,6 +1024,7 @@ PreCacheChain "PreCache"
|
||||
Instance "error"
|
||||
</Match>
|
||||
</File>
|
||||
{% endif %}
|
||||
|
||||
<File "/var/log/ceph/ceph.log">
|
||||
Instance "ceph"
|
||||
@ -1005,34 +1052,11 @@ PreCacheChain "PreCache"
|
||||
{% endif %}
|
||||
</File>
|
||||
|
||||
# (Newton) api.log
|
||||
<File "/var/log/cinder/api.log">
|
||||
Instance "cinder-api"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "error"
|
||||
</Match>
|
||||
{%if regex_warn %}
|
||||
<Match>
|
||||
Regex " WARNING "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "warn"
|
||||
</Match>
|
||||
{% endif %}
|
||||
{%if regex_info %}
|
||||
<Match>
|
||||
Regex " INFO "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "info"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
# (Ocata) cinder-api.log
|
||||
{%if ('Pike' in osp_version['content'] | b64decode) or ('Ocata' in osp_version['content'] | b64decode) %}
|
||||
<File "/var/log/cinder/cinder-api.log">
|
||||
{% else %}
|
||||
<File "/var/log/cinder/api.log">
|
||||
{% endif %}
|
||||
Instance "cinder-api"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1108,7 +1132,11 @@ PreCacheChain "PreCache"
|
||||
{% endif %}
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/glance/api.log">
|
||||
{% else %}
|
||||
<File "/var/log/glance/api.log">
|
||||
{% endif %}
|
||||
Instance "glance-api"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1133,6 +1161,10 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
# No Glance registry in Pike
|
||||
{% else %}
|
||||
<File "/var/log/glance/registry.log">
|
||||
Instance "glance-registry"
|
||||
<Match>
|
||||
@ -1158,8 +1190,13 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{% endif %}
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/gnocchi/app.log">
|
||||
{% else %}
|
||||
<File "/var/log/gnocchi/app.log">
|
||||
{% endif %}
|
||||
Instance "gnocchi-app"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1184,7 +1221,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/gnocchi/gnocchi-metricd.log">
|
||||
{% else %}
|
||||
<File "/var/log/gnocchi/metricd.log">
|
||||
{% endif %}
|
||||
Instance "gnocchi-metricd"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1209,7 +1250,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/gnocchi/gnocchi-statsd.log">
|
||||
{% else %}
|
||||
<File "/var/log/gnocchi/statsd.log">
|
||||
{% endif %}
|
||||
Instance "gnocchi-statsd"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1234,7 +1279,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/gnocchi-api/gnocchi_wsgi_error.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/gnocchi_wsgi_error.log">
|
||||
{% endif %}
|
||||
Instance "gnocchi-wsgi-api"
|
||||
<Match>
|
||||
Regex ":error"
|
||||
@ -1244,7 +1293,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/heat/heat_api_cfn.log">
|
||||
{% else %}
|
||||
<File "/var/log/heat/heat-api-cfn.log">
|
||||
{% endif %}
|
||||
Instance "heat-api-cfn"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1269,7 +1322,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/heat/heat_api_cloudwatch.log">
|
||||
{% else %}
|
||||
<File "/var/log/heat/heat-api-cloudwatch.log">
|
||||
{% endif %}
|
||||
Instance "heat-api-cloudwatch"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1294,7 +1351,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/heat/heat_api.log">
|
||||
{% else %}
|
||||
<File "/var/log/heat/heat-api.log">
|
||||
{% endif %}
|
||||
Instance "heat-api"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1319,7 +1380,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/heat/heat-engine.log">
|
||||
{% else %}
|
||||
<File "/var/log/heat/heat-engine.log">
|
||||
{% endif %}
|
||||
Instance "heat-engine"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1345,7 +1410,11 @@ PreCacheChain "PreCache"
|
||||
{% endif %}
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/keystone/keystone.log">
|
||||
{% else %}
|
||||
<File "/var/log/keystone/keystone.log">
|
||||
{% endif %}
|
||||
Instance "keystone"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1370,7 +1439,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/keystone/keystone_wsgi_admin_error.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/keystone_wsgi_admin_error.log">
|
||||
{% endif %}
|
||||
Instance "keystone-wsgi-admin"
|
||||
<Match>
|
||||
Regex ":error"
|
||||
@ -1379,7 +1452,11 @@ PreCacheChain "PreCache"
|
||||
Instance "error"
|
||||
</Match>
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/keystone/keystone_wsgi_main_error.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/keystone_wsgi_main_error.log">
|
||||
{% endif %}
|
||||
Instance "keystone-wsgi-main"
|
||||
<Match>
|
||||
Regex ":error"
|
||||
@ -1542,7 +1619,11 @@ PreCacheChain "PreCache"
|
||||
{% endif %}
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/nova/nova-api.log">
|
||||
{% else %}
|
||||
<File "/var/log/nova/nova-api.log">
|
||||
{% endif %}
|
||||
Instance "nova-api"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1567,7 +1648,39 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/nova/nova-api-metadata.log">
|
||||
Instance "nova-api-metadata"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "error"
|
||||
</Match>
|
||||
{%if regex_warn %}
|
||||
<Match>
|
||||
Regex " WARNING "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "warn"
|
||||
</Match>
|
||||
{% endif %}
|
||||
{%if regex_info %}
|
||||
<Match>
|
||||
Regex " INFO "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "info"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{% endif %}
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/nova/nova-conductor.log">
|
||||
{% else %}
|
||||
<File "/var/log/nova/nova-conductor.log">
|
||||
{% endif %}
|
||||
Instance "nova-conductor"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1592,7 +1705,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/nova/nova-consoleauth.log">
|
||||
{% else %}
|
||||
<File "/var/log/nova/nova-consoleauth.log">
|
||||
{% endif %}
|
||||
Instance "nova-consoleauth"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1617,7 +1734,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/nova/nova-novncproxy.log">
|
||||
{% else %}
|
||||
<File "/var/log/nova/nova-novncproxy.log">
|
||||
{% endif %}
|
||||
Instance "nova-novncproxy"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1642,7 +1763,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/nova/nova-placement-api.log">
|
||||
{% else %}
|
||||
<File "/var/log/nova/nova-placement-api.log">
|
||||
{% endif %}
|
||||
Instance "nova-placement-api"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1667,7 +1792,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/nova/nova-scheduler.log">
|
||||
{% else %}
|
||||
<File "/var/log/nova/nova-scheduler.log">
|
||||
{% endif %}
|
||||
Instance "nova-scheduler"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1692,7 +1821,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/nova-placement/placement_wsgi_error.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/placement_wsgi_error.log">
|
||||
{% endif %}
|
||||
Instance "nova-placement-wsgi-api"
|
||||
<Match>
|
||||
Regex ":error"
|
||||
@ -1702,7 +1835,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/panko/app.log">
|
||||
{% else %}
|
||||
<File "/var/log/panko/app.log">
|
||||
{% endif %}
|
||||
Instance "panko"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
@ -1727,7 +1864,11 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
{%if 'Pike' in osp_version['content'] | b64decode %}
|
||||
<File "/var/log/containers/httpd/panko-api/panko_wsgi_error.log">
|
||||
{% else %}
|
||||
<File "/var/log/httpd/panko_wsgi_error.log">
|
||||
{% endif %}
|
||||
Instance "panko-wsgi-api"
|
||||
<Match>
|
||||
Regex ":error"
|
||||
|
@ -223,21 +223,21 @@ PreCacheChain "PreCache"
|
||||
ProcessMatch "collectd" "/usr/sbin/collectd"
|
||||
|
||||
# Docker (OpenStack Installed)
|
||||
ProcessMatch "docker-registry" "registry.+serve.+/etc/docker-distribution" # -10,11
|
||||
ProcessMatch "dockerd-current" "dockerd-current" # 11
|
||||
ProcessMatch "docker-containerd-current" "docker-containerd-current" # 11
|
||||
ProcessMatch "docker-registry" "registry.+serve.+/etc/docker-distribution" # 11,12
|
||||
ProcessMatch "dockerd-current" "dockerd-current" # 11,12
|
||||
ProcessMatch "docker-containerd-current" "docker-containerd-current" # 11,12
|
||||
|
||||
# Everything Else (OpenStack Installed)
|
||||
# (Processes displayed under "Everything Else" on Grafana Dashboards)
|
||||
Process "httpd" # 10,11
|
||||
Process "memcached" # 10,11
|
||||
Process "mongod" # 10,11
|
||||
ProcessMatch "mysqld" "/usr/libexec/mysqld" # 10,11
|
||||
ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" # 10,11
|
||||
Process "httpd" # 10,11,12
|
||||
Process "memcached" # 10,11,12
|
||||
Process "mongod" # 10,11,-12
|
||||
ProcessMatch "mysqld" "/usr/libexec/mysqld" # 10,11,12
|
||||
ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" # 10,11,12
|
||||
|
||||
# Glance (OpenStack Installed)
|
||||
ProcessMatch "glance-api" "python.+glance-api" # 10,11
|
||||
ProcessMatch "glance-registry" "python.+glance-registry" # 10,-11
|
||||
ProcessMatch "glance-api" "python.+glance-api" # 10,11,12
|
||||
ProcessMatch "glance-registry" "python.+glance-registry" # 10,-11,-12
|
||||
|
||||
# Gnocchi (OpenStack Installed)
|
||||
ProcessMatch "gnocchi-metricd-master" "gnocchi-metricd:.*master" # 11
|
||||
@ -249,69 +249,72 @@ PreCacheChain "PreCache"
|
||||
ProcessMatch "gnocchi_wsgi" "gnocchi_wsgi.*-DFOREGROUND" # 11
|
||||
|
||||
# Heat (OpenStack Installed)
|
||||
ProcessMatch "heat-api" "python.+heat-api" # 10,11
|
||||
ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" # 10,11
|
||||
ProcessMatch "heat-engine" "python.+heat-engine" # 10,11
|
||||
ProcessMatch "heat-api" "python.+heat-api" # 10,11,-12
|
||||
ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" # 10,11,-12
|
||||
ProcessMatch "heat-engine" "python.+heat-engine" # 10,11,12
|
||||
ProcessMatch "heat_api_wsgi" "heat_api_wsgi.*-DFOREGROUND" # 12
|
||||
ProcessMatch "heat_api_cfn_ws" "heat_api_cfn_ws.*-DFOREGROUND" # 12
|
||||
|
||||
# Ironic (OpenStack Installed)
|
||||
ProcessMatch "ironic-api" "python.+ironic-api" # 10,11
|
||||
ProcessMatch "ironic-conductor" "python.+ironic-conductor" # 10,11
|
||||
ProcessMatch "ironic-inspector" "python.+ironic-inspector" # 10,11
|
||||
ProcessMatch "dnsmasq-ironic" "dnsmasq.+/etc/dnsmasq-ironic.conf" # 10,11
|
||||
ProcessMatch "dnsmasq-ironicinspector" "/sbin/dnsmasq.+/etc/ironic-inspector/" # 10,11
|
||||
ProcessMatch "ironic-api" "python.+ironic-api" # 10,11,-12
|
||||
ProcessMatch "ironic-conductor" "python.+ironic-conductor" # 10,11,12
|
||||
ProcessMatch "ironic-inspector" "python.+ironic-inspector" # 10,11,12
|
||||
ProcessMatch "dnsmasq-ironic" "dnsmasq.+/etc/dnsmasq-ironic.conf" # 10,11,12
|
||||
ProcessMatch "dnsmasq-ironicinspector" "/sbin/dnsmasq.+/etc/ironic-inspector/" # 10,11,12
|
||||
ProcessMatch "ironic_wsgi" "ironic_wsgi.*-DFOREGROUND" # 12
|
||||
|
||||
# Keystone (OpenStack Installed)
|
||||
ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" # 10,11
|
||||
ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" # 10,11
|
||||
ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" # 10,11,12
|
||||
ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" # 10,11,12
|
||||
# Starting Ocata, fernet tokens are default thus token_flush not needed
|
||||
ProcessMatch "keystone-token-flush" "keystone-manage.*token_flush" # 10,11
|
||||
ProcessMatch "keystone-token-flush" "keystone-manage.*token_flush" # 10,11,-12
|
||||
|
||||
# Mistral (Openstack Installed)
|
||||
ProcessMatch "mistral-server-api" "python.+mistral-server.+api" # 10,11
|
||||
ProcessMatch "mistral-server-engine" "python.+mistral-server.+engine" # 10,11
|
||||
ProcessMatch "mistral-server-executor" "python.+mistral-server.+executor" # 10,11
|
||||
ProcessMatch "mistral-server-api" "python.+mistral-server.+api" # 10,11,12
|
||||
ProcessMatch "mistral-server-engine" "python.+mistral-server.+engine" # 10,11,12
|
||||
ProcessMatch "mistral-server-executor" "python.+mistral-server.+executor" # 10,11,12
|
||||
|
||||
# Neutron (OpenStack Installed)
|
||||
ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" # 10,11
|
||||
ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" # -10,-11
|
||||
ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" # -10,-11
|
||||
ProcessMatch "neutron-ns-metadata-proxy" "python.+neutron-ns-metadata-proxy" # -10,-11
|
||||
ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 10,11
|
||||
ProcessMatch "neutron-server" "python.+neutron-server" # 10,11
|
||||
ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" # 10,11,12
|
||||
ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 10,11,12
|
||||
ProcessMatch "neutron-server" "python.+neutron-server" # 10,11,12
|
||||
|
||||
# Nova (OpenStack Installed)
|
||||
ProcessMatch "nova-api" "python.+nova-api" # 10,11
|
||||
ProcessMatch "nova-cert" "python.+nova-cert" # 10,11
|
||||
ProcessMatch "nova-compute" "python.+nova-compute" # 10,11
|
||||
ProcessMatch "nova-conductor" "python.+nova-conductor" # 10,11
|
||||
ProcessMatch "nova-scheduler" "python.+nova-scheduler" # 10,11
|
||||
ProcessMatch "placement_wsgi" "placement_wsgi.*-DFOREGROUND" # 11
|
||||
ProcessMatch "nova-api" "python.+nova-api" # 10,11,12
|
||||
ProcessMatch "nova-cert" "python.+nova-cert" # 10,11,-12
|
||||
ProcessMatch "nova-compute" "python.+nova-compute" # 10,11,12
|
||||
ProcessMatch "nova-conductor" "python.+nova-conductor" # 10,11,12
|
||||
ProcessMatch "nova-scheduler" "python.+nova-scheduler" # 10,11,12
|
||||
ProcessMatch "placement_wsgi" "placement_wsgi.*-DFOREGROUND" # 11,12
|
||||
|
||||
# OVS (OpenStack Installed)
|
||||
ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 10,11
|
||||
ProcessMatch "ovsdb-client" "ovsdb-client" # 10,11
|
||||
ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 10,11
|
||||
ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 10,11,12
|
||||
ProcessMatch "ovsdb-client" "ovsdb-client" # 10,11,12
|
||||
ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 10,11,12
|
||||
|
||||
# Panko (OpenStack Installed)
|
||||
ProcessMatch "panko_wsgi" "panko_wsgi.*-DFOREGROUND" # 11
|
||||
|
||||
# Swift (OpenStack Installed)
|
||||
ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" # 10,-11
|
||||
ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" # 10,11
|
||||
ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" # 10,-11
|
||||
ProcessMatch "swift-account-server" "python.+swift-account-server" # 10,11
|
||||
ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" # 10,-11
|
||||
ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" # 10,-11
|
||||
ProcessMatch "swift-container-server" "python.+swift-container-server" # 10,11
|
||||
ProcessMatch "swift-container-updater" "python.+swift-container-updater" # 10,11
|
||||
ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" # 10,-11
|
||||
ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" # 10,-11
|
||||
ProcessMatch "swift-object-server" "python.+swift-object-server" # 10,11
|
||||
ProcessMatch "swift-object-updater" "python.+swift-object-updater" # 10,11
|
||||
ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" # 10,11
|
||||
ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" # 10,-11,-12
|
||||
ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" # 10,11,12
|
||||
ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" # 10,-11,-12
|
||||
ProcessMatch "swift-account-server" "python.+swift-account-server" # 10,11,12
|
||||
ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" # 10,-11,-12
|
||||
ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" # 10,-11,-12
|
||||
ProcessMatch "swift-container-server" "python.+swift-container-server" # 10,11,12
|
||||
ProcessMatch "swift-container-sync" "python.+swift-container-sync" # 12
|
||||
ProcessMatch "swift-container-updater" "python.+swift-container-updater" # 10,11,12
|
||||
ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" # 10,-11,-12
|
||||
ProcessMatch "swift-object-reconstructor" "python.+swift-object-reconstructor" # 12
|
||||
ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" # 10,-11,-12
|
||||
ProcessMatch "swift-object-server" "python.+swift-object-server" # 10,11,12
|
||||
ProcessMatch "swift-object-updater" "python.+swift-object-updater" # 10,11,12
|
||||
ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" # 10,11,12
|
||||
|
||||
# Zaqar (Openstack Installed)
|
||||
ProcessMatch "zaqar-server" "python.+zaqar-server" # 10,11
|
||||
ProcessMatch "zaqar-server" "python.+zaqar-server" # 10,11,12
|
||||
ProcessMatch "zaqar_wsgi" "zaqar_wsgi.*-DFOREGROUND" # 12
|
||||
</Plugin>
|
||||
|
||||
{%if rabbitmq_undercloud_collectd_plugin %}
|
||||
@ -535,7 +538,7 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
# Glance Registry does not exist in Ocata (OSP11)
|
||||
# Glance Registry does not exist in Ocata or Pike
|
||||
<File "/var/log/glance/registry.log">
|
||||
Instance "glance-registry"
|
||||
<Match>
|
||||
@ -647,6 +650,7 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
# Newton, Ocata
|
||||
<File "/var/log/heat/heat-api-cfn.log">
|
||||
Instance "heat-api-cfn"
|
||||
<Match>
|
||||
@ -672,6 +676,33 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
# Pike
|
||||
<File "/var/log/heat/heat_api_cfn.log">
|
||||
Instance "heat-api-cfn"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "error"
|
||||
</Match>
|
||||
{%if regex_warn %}
|
||||
<Match>
|
||||
Regex " WARNING "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "warn"
|
||||
</Match>
|
||||
{% endif %}
|
||||
{%if regex_info %}
|
||||
<Match>
|
||||
Regex " INFO "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "info"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
# Newton, Ocata
|
||||
<File "/var/log/heat/heat-api.log">
|
||||
Instance "heat-api"
|
||||
<Match>
|
||||
@ -688,6 +719,32 @@ PreCacheChain "PreCache"
|
||||
Instance "warn"
|
||||
</Match>
|
||||
{% endif %}
|
||||
{%if regex_info %}
|
||||
<Match>
|
||||
Regex " INFO "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "info"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
# Pike
|
||||
<File "/var/log/heat/heat_api.log">
|
||||
Instance "heat-api"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "error"
|
||||
</Match>
|
||||
{%if regex_warn %}
|
||||
<Match>
|
||||
Regex " WARNING "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "warn"
|
||||
</Match>
|
||||
{% endif %}
|
||||
{%if regex_info %}
|
||||
<Match>
|
||||
Regex " INFO "
|
||||
@ -773,6 +830,15 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
<File "/var/log/httpd/ironic_wsgi_error.log">
|
||||
Instance "ironic-api-wsgi"
|
||||
<Match>
|
||||
Regex ":error"
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "error"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
<File "/var/log/ironic-inspector/ironic-inspector.log">
|
||||
Instance "ironic-inspector"
|
||||
@ -1331,6 +1397,40 @@ PreCacheChain "PreCache"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
<File "/var/log/zaqar/zaqar-server.log">
|
||||
Instance "zaqar-server"
|
||||
<Match>
|
||||
Regex " ERROR "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "error"
|
||||
</Match>
|
||||
{%if regex_warn %}
|
||||
<Match>
|
||||
Regex " WARNING "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "warn"
|
||||
</Match>
|
||||
{% endif %}
|
||||
{%if regex_info %}
|
||||
<Match>
|
||||
Regex " INFO "
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "info"
|
||||
</Match>
|
||||
{% endif %}
|
||||
</File>
|
||||
<File "/var/log/httpd/zaqar_wsgi_error.log">
|
||||
Instance "zaqar-wsgi-api"
|
||||
<Match>
|
||||
Regex ":error"
|
||||
DSType "CounterInc"
|
||||
Type "counter"
|
||||
Instance "error"
|
||||
</Match>
|
||||
</File>
|
||||
|
||||
</Plugin>
|
||||
|
||||
|
@ -102,6 +102,8 @@ per_process_panels:
|
||||
- heat-api
|
||||
- heat-api-cfn
|
||||
- heat-engine
|
||||
- heat_api_wsgi
|
||||
- heat_api_cfn_ws
|
||||
- name: "Ironic"
|
||||
processes:
|
||||
- ironic-api
|
||||
@ -109,6 +111,7 @@ per_process_panels:
|
||||
- ironic-inspector
|
||||
- dnsmasq-ironic
|
||||
- dnsmasq-ironicinspector
|
||||
- ironic_wsgi
|
||||
- name: "Keystone"
|
||||
processes:
|
||||
- keystone-admin
|
||||
@ -122,9 +125,6 @@ per_process_panels:
|
||||
- name: "Neutron"
|
||||
processes:
|
||||
- neutron-dhcp-agent
|
||||
- neutron-l3-agent
|
||||
- neutron-metadata-agent
|
||||
- neutron-ns-metadata-proxy
|
||||
- neutron-openvswitch-agent
|
||||
- neutron-server
|
||||
- name: "Nova"
|
||||
@ -152,8 +152,10 @@ per_process_panels:
|
||||
- swift-container-auditor
|
||||
- swift-container-replicator
|
||||
- swift-container-server
|
||||
- swift-container-sync
|
||||
- swift-container-updater
|
||||
- swift-object-auditor
|
||||
- swift-object-reconstructor
|
||||
- swift-object-replicator
|
||||
- swift-object-server
|
||||
- swift-object-updater
|
||||
@ -161,6 +163,7 @@ per_process_panels:
|
||||
- name: "Zaqar"
|
||||
processes:
|
||||
- zaqar-server
|
||||
- zaqar_wsgi
|
||||
- name: "Collectd"
|
||||
processes:
|
||||
- collectd
|
||||
@ -178,7 +181,6 @@ per_process_panels:
|
||||
- name: "Ceilometer"
|
||||
processes:
|
||||
- ceilometer-agent-notification
|
||||
- ceilometer-api
|
||||
- ceilometer-collector
|
||||
- ceilometer-polling
|
||||
- ceilometer_wsgi
|
||||
@ -207,6 +209,7 @@ per_process_panels:
|
||||
- dnsmasq
|
||||
- haproxy
|
||||
- httpd
|
||||
- keepalived
|
||||
- memcached
|
||||
- mongod
|
||||
- mysqld
|
||||
@ -234,6 +237,9 @@ per_process_panels:
|
||||
- heat-api-cfn
|
||||
- heat-api-cloudwatch
|
||||
- heat-engine
|
||||
- heat_api_cfn
|
||||
- heat_api_cloudwatch
|
||||
- heat_api_wsgi
|
||||
- name: "Keystone"
|
||||
processes:
|
||||
- keystone-admin
|
||||
@ -250,6 +256,8 @@ per_process_panels:
|
||||
- name: "Nova"
|
||||
processes:
|
||||
- nova-api
|
||||
- nova-api-metadata
|
||||
- nova_api_wsgi
|
||||
- nova-conductor
|
||||
- nova-consoleauth
|
||||
- nova-novncproxy
|
||||
@ -420,6 +428,7 @@ per_process_panels:
|
||||
- dnsmasq
|
||||
- haproxy
|
||||
- httpd
|
||||
- keepalived
|
||||
- memcached
|
||||
- mongod
|
||||
- mysqld
|
||||
@ -447,6 +456,9 @@ per_process_panels:
|
||||
- heat-api-cfn
|
||||
- heat-api-cloudwatch
|
||||
- heat-engine
|
||||
- heat_api_cfn
|
||||
- heat_api_cloudwatch
|
||||
- heat_api_wsgi
|
||||
- name: "Ironic"
|
||||
processes:
|
||||
- ironic-api
|
||||
@ -454,6 +466,7 @@ per_process_panels:
|
||||
- ironic-inspector
|
||||
- dnsmasq-ironic
|
||||
- dnsmasq-ironicinspector
|
||||
- ironic_wsgi
|
||||
- name: "Keystone"
|
||||
processes:
|
||||
- keystone-admin
|
||||
@ -475,6 +488,8 @@ per_process_panels:
|
||||
- name: "Nova"
|
||||
processes:
|
||||
- nova-api
|
||||
- nova-api-metadata
|
||||
- nova_api_wsgi
|
||||
- nova-cert
|
||||
- nova-compute
|
||||
- nova-conductor
|
||||
@ -509,9 +524,11 @@ per_process_panels:
|
||||
- swift-container-auditor
|
||||
- swift-container-replicator
|
||||
- swift-container-server
|
||||
- swift-container-sync
|
||||
- swift-container-updater
|
||||
- swift-object-auditor
|
||||
- swift-object-expirer
|
||||
- swift-object-reconstructor
|
||||
- swift-object-replicator
|
||||
- swift-object-server
|
||||
- swift-object-updater
|
||||
@ -519,6 +536,7 @@ per_process_panels:
|
||||
- name: "Zaqar"
|
||||
processes:
|
||||
- zaqar-server
|
||||
- zaqar_wsgi
|
||||
- name: "Collectd"
|
||||
processes:
|
||||
- collectd
|
||||
|
25
ansible/install/roles/osp_version/tasks/main.yml
Normal file
25
ansible/install/roles/osp_version/tasks/main.yml
Normal file
@ -0,0 +1,25 @@
|
||||
---
|
||||
#
|
||||
# Slurp OSP version file
|
||||
#
|
||||
|
||||
- name: Check if /etc/rhosp-release exists
|
||||
stat:
|
||||
path: /etc/rhosp-release
|
||||
register: rhosp_release_stat
|
||||
|
||||
- name: Get OSP Version
|
||||
become: true
|
||||
slurp:
|
||||
src: "/etc/rhosp-release"
|
||||
register: osp_version
|
||||
when: rhosp_release_stat.stat.exists
|
||||
|
||||
- debug: msg="WARNING /etc/rhosp-release not found, defaulting version of OSP to Pike"
|
||||
when: not rhosp_release_stat.stat.exists
|
||||
|
||||
- name: Set OSP Version Default
|
||||
set_fact:
|
||||
osp_version:
|
||||
content: "{{'Pike' | b64encode}}"
|
||||
when: not rhosp_release_stat.stat.exists
|
@ -5,6 +5,7 @@
|
||||
- config_type: "{{group_names[0]}}"
|
||||
roles:
|
||||
- browbeat/common
|
||||
- browbeat/osp_version
|
||||
- browbeat/epel
|
||||
- browbeat/collectd-openstack
|
||||
- browbeat/rsyslog-install
|
||||
|
Loading…
Reference in New Issue
Block a user