Remove checks as they are not maintained anymore
Change-Id: Iad45c255a62c2eac0c1feaaa5fa60604508a72cb
This commit is contained in:
parent
1af066a000
commit
94d0d29f52
@ -1,21 +0,0 @@
|
||||
Browbeat Ansible Checks
|
||||
=======================
|
||||
|
||||
The Browbeat Ansible checks playbook will scan a given deployment to
|
||||
check for known configuration issues.
|
||||
|
||||
Output from Checks
|
||||
------------------
|
||||
|
||||
Once the Checks playbook completes there will be a report generated in
|
||||
the browbeat results directory.
|
||||
|
||||
::
|
||||
|
||||
bug_report.log
|
||||
|
||||
This will contain each of the hosts that were scanned, and their known
|
||||
issues. Some of the issues will have BZ's associated with them, use the
|
||||
BZ link to learn more about the bug, and how it can impact your
|
||||
deployment. There will be Checks that do not have a BZ associated, these
|
||||
are simply suggestions.
|
@ -1,76 +0,0 @@
|
||||
# Browbeat generated bug report
|
||||
|
||||
---------------------------------------
|
||||
| Issues for host : undercloud
|
||||
---------------------------------------
|
||||
Bug: bz1281584
|
||||
Description: Director does not create an haproxy configuration that conforms to our best-practice recommendations
|
||||
URL: https://bugzilla.redhat.com/show_bug.cgi?id=1281584
|
||||
Severity: Suggestion
|
||||
Impact: HAProxy config should match our best practices
|
||||
|
||||
Bug: neutron_rootwrap_daemon
|
||||
Description: Ensure rootwrap has daemon mode enabled
|
||||
URL: none
|
||||
Severity: Suggestion
|
||||
Impact: The Red Hat Neutron team recommends having rootwrap in Daemon mode
|
||||
|
||||
Bug: bz1330980
|
||||
Description: Undercloud deployed with 1 keystone worker and cpu_count for threads
|
||||
URL: https://bugzilla.redhat.com/show_bug.cgi?id=1330980
|
||||
Severity: Critical
|
||||
Impact: Not tuning the workers properly can cause degraded performance
|
||||
|
||||
|
||||
---------------------------------------
|
||||
| Issues for host : overcloud-controller-0
|
||||
---------------------------------------
|
||||
Bug: bz1095811
|
||||
Description: Network connectivity issues after 1000 netns
|
||||
URL: https://bugzilla.redhat.com/show_bug.cgi?id=1095811
|
||||
Severity: Suggestion
|
||||
Impact: Networking can become flaky after 1000 net namespaces
|
||||
|
||||
Bug: neutron_rootwrap_daemon
|
||||
Description: Ensure rootwrap has daemon mode enabled
|
||||
URL: none
|
||||
Severity: Suggestion
|
||||
Impact: Neutron team recommends to have rootwrap daemon enabled
|
||||
|
||||
Bug: buffer_pool_size
|
||||
Description: mariadb buffer pool size tuning
|
||||
URL: none
|
||||
Severity: Suggestion
|
||||
Impact: Tune the buffer pool size to increase performance
|
||||
|
||||
|
||||
---------------------------------------
|
||||
| Issues for host : overcloud-novacompute-0
|
||||
---------------------------------------
|
||||
Bug: tuned_profile_result
|
||||
Description: Ensure Tuned Profile is set to virtual-host
|
||||
URL: none
|
||||
Severity: Suggestion
|
||||
Impact: Incorrect Tuned Profile will not result in better performance
|
||||
|
||||
Bug: bz1245714
|
||||
Description: No Swap Space allocated
|
||||
URL: https://bugzilla.redhat.com/show_bug.cgi?id=1245714
|
||||
Severity: Critical
|
||||
Impact: The Compute node can hit OOM since we deploy with no swap
|
||||
|
||||
---------------------------------------
|
||||
| Issues for host : overcloud-novacompute-1
|
||||
---------------------------------------
|
||||
Bug: tuned_profile_result
|
||||
Description: Ensure Tuned Profile is set to virtual-host
|
||||
URL: none
|
||||
Severity: Suggestion
|
||||
Impact: Incorrect Tuned Profile will not result in better performance
|
||||
|
||||
Bug: bz1245714
|
||||
Description: No Swap Space allocated
|
||||
URL: https://bugzilla.redhat.com/show_bug.cgi?id=1245714
|
||||
Severity: Critical
|
||||
Impact: The Compute node can hit OOM since we deploy with no swap
|
||||
|
@ -1,4 +0,0 @@
|
||||
---
|
||||
result_dir: "{{ playbook_dir }}/../../results"
|
||||
|
||||
mysql_tuner_script: https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl
|
@ -1,3 +0,0 @@
|
||||
---
|
||||
ansible_become: true
|
||||
tuned_profile: throughput-performance
|
@ -1,32 +0,0 @@
|
||||
---
|
||||
ansible_become: true
|
||||
reserved_host_memory_check: 2048
|
||||
tuned_profile: virtual-host
|
||||
nova_vif_timeout: 300
|
||||
|
||||
checks:
|
||||
bz1245714:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1245714"
|
||||
description: "No Swap Space allocated"
|
||||
severity: "Critical"
|
||||
impact: "The Compute node can hit OOM since we deploy with no swap"
|
||||
bz1282644:
|
||||
url : "https://bugzilla.redhat.com/show_bug.cgi?id=1282644"
|
||||
description: "increase reserved_host_memory_mb"
|
||||
severity: "Critical"
|
||||
impact: "The Compute node can hit OOM if we do not reserve enough memory"
|
||||
tuned_profile_result :
|
||||
url: "none"
|
||||
description: "Ensure Tuned Profile is set to virtual-host"
|
||||
severity: "Suggestion"
|
||||
impact: "Incorrect Tuned Profile will not result in better performance"
|
||||
nova_vif_timeout_result:
|
||||
url: "none"
|
||||
description: "Nova VIF timeout should be >= 300"
|
||||
severity: "Critical"
|
||||
impact: "This could cause guests to fail to boot if not properly set."
|
||||
bz1264740:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1264740"
|
||||
description: "RHEL OSP Director must be configured with nova-event-callback by default"
|
||||
severity: "Critical"
|
||||
impact: "This could cause guests to fail to boot if not properly set."
|
@ -1,104 +0,0 @@
|
||||
---
|
||||
ansible_become: true
|
||||
tuned_profile: throughput-performance
|
||||
rabbitmq_fd: 1600
|
||||
haproxy_max_connections: 4096
|
||||
mariadb_max_connections: 4096
|
||||
mysqld_soft_fd: 16384
|
||||
nova_vif_timeout: 300
|
||||
netdev_max_backlog: 100000
|
||||
keystone_threads: 6
|
||||
keystone_processes: 2
|
||||
gnocchi_api_processes: 2
|
||||
|
||||
checks :
|
||||
bz1095811 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1095811"
|
||||
description: "Network connectivity issues after 1000 netns"
|
||||
severity: "Suggestion"
|
||||
impact: "Networking can become flaky after 1000 net namespaces"
|
||||
bz1282491 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1282491"
|
||||
description: "update default file descriptor setting"
|
||||
severity: "Critical"
|
||||
impact: "RabbitMQ can become unreliable after it runs out of FDs"
|
||||
bz1281584 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1281584"
|
||||
description: "Director does not create an haproxy configuration that conforms to our best-practice recommendations"
|
||||
severity: "Suggestion"
|
||||
impact: "HAProxy config should match our best practices"
|
||||
bz1266253 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1266253"
|
||||
description: "increase mariadb max_connection default value"
|
||||
severity: "Critical"
|
||||
impact: "With the max_connection set too low, MariaDB will fail at scale"
|
||||
buffer_pool_size:
|
||||
url: "none"
|
||||
description: "mariadb buffer pool size tuning"
|
||||
severity: "Suggestion"
|
||||
impact: "Tune the buffer pool size to increase performance"
|
||||
mysqld_safe_soft_fd:
|
||||
url: "none"
|
||||
description: "mariadb file descriptor setting not high enough"
|
||||
severity: "Suggesiton"
|
||||
impact: "If the FD setting is not set very high, the scale of the cloud might be impacted."
|
||||
bz1293712 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1293712"
|
||||
description: "/etc/udev/rules.d/99-dhcp-all-interfaces.rules causes a slow and miserable degradation until things fail"
|
||||
severity: "Critical"
|
||||
impact: "This bug will cause the controllers to slowly degrade with increasing neutron networks"
|
||||
nova_vif_timeout_result:
|
||||
url: "none"
|
||||
description: "Nova VIF timeout should be >= 300"
|
||||
severity: "Suggestion"
|
||||
impact: "Best practices from the Neutron team"
|
||||
bz1264740:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1264740"
|
||||
description: "RHEL OSP Director must be configured with nova-event-callback by default"
|
||||
severity: "Critical"
|
||||
impact: "nova-event-callback should be enabled, nova will launch guests with possibly no networking"
|
||||
rabbit_partitioned:
|
||||
url: "none"
|
||||
description: "RabbitMQ is currently partitioned - YMMV... Good luck."
|
||||
severity: "Critical"
|
||||
impact: "RabbitMQ has become partitioned, the cloud is useless"
|
||||
tuned_profile_result:
|
||||
url: "none"
|
||||
description: "Ensure TuneD Profile is set to throughput-performance"
|
||||
severity: "Suggestion"
|
||||
impact: "Incorrect TuneD Profile could result in degraded performance"
|
||||
neutron_rootwrap_daemon:
|
||||
url: "none"
|
||||
description: "Ensure rootwrap has daemon mode enabled"
|
||||
severity: "Suggestion"
|
||||
impact: "Neutron team recommends to have rootwrap daemon enabled"
|
||||
neutron_dnsmasq_mtu:
|
||||
url: "https://bugs.launchpad.net/tripleo/+bug/1590100"
|
||||
description: "Ensure there is no dnsmasq setting to force MTU"
|
||||
severity: "Critical"
|
||||
impact: "MTU mismatches can cause SSH and other services to fail"
|
||||
neutron_conf_mtu:
|
||||
url: "https://bugs.launchpad.net/tripleo/+bug/1590101"
|
||||
description: "The global_physnet_mtu should not be set unless by Administrator"
|
||||
severity: "Critical"
|
||||
impact: "MTU mismatches can cause SSH and other services to fail"
|
||||
glance_api_workers:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1361285"
|
||||
description: "Glance API workers should be set to None, thereby defaulting to number of cores"
|
||||
severity: "Suggestion"
|
||||
impact: "Not tuning the workers properly can cause degraded performance"
|
||||
glance_registry_workers:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1361285"
|
||||
description: "Glance Registry workers should be set to None, thereby defaulting to number of cores"
|
||||
severity: "Suggestion"
|
||||
impact: "Not tuning the workers properly can cause degraded performance"
|
||||
bz1347305:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1347305"
|
||||
description: "Overcloud deployed with keystone as single process leads to abysmal performance"
|
||||
severity: "Critical"
|
||||
impact: "Not tuning the workers properly can cause degraded performance"
|
||||
bz1372821:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1372821"
|
||||
description: "Gnocchi API processes tuned to 1 process"
|
||||
severity: "Suggestion"
|
||||
impact: "Not tuning the workers properly can cause degraded performance"
|
@ -1,73 +0,0 @@
|
||||
---
|
||||
ansible_become: true
|
||||
tuned_profile: throughput-performance
|
||||
rabbitmq_fd: 1600
|
||||
haproxy_max_connections: 4096
|
||||
mariadb_max_connections: 4096
|
||||
mysqld_soft_fd: 16384
|
||||
nova_vif_timeout: 300
|
||||
netdev_max_backlog: 100000
|
||||
keystone_threads: 6
|
||||
keystone_processes: 2
|
||||
|
||||
checks :
|
||||
bz1282491 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1282491"
|
||||
description: "update RabbitMQ default file descriptor setting"
|
||||
severity: "Suggestion"
|
||||
impact: "RabbitMQ can become unreliable after it runs out of FDs"
|
||||
bz1281584 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1281584"
|
||||
description: "Director does not create an haproxy configuration that conforms to our best-practice recommendations"
|
||||
severity: "Suggestion"
|
||||
impact: "HAProxy config should match our best practices"
|
||||
bz1266253 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1266253"
|
||||
description: "increase mariadb max_connection default value"
|
||||
severity: "Critical"
|
||||
impact: "With the max_connection set too low, MariaDB will fail at scale"
|
||||
buffer_pool_size:
|
||||
url: "none"
|
||||
description: "mariadb buffer pool size tuning"
|
||||
severity: "Suggestion"
|
||||
impact: "Tune the buffer pool size to increase performance"
|
||||
mysqld_safe_soft_fd:
|
||||
url: "none"
|
||||
description: "mariadb file descriptor setting not high enough"
|
||||
severity: "Suggestion"
|
||||
impact: "If the FD setting is not set very high, the Scale of the cloud might be impacted."
|
||||
bz1293712 :
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1293712"
|
||||
description: "/etc/udev/rules.d/99-dhcp-all-interfaces.rules causes a slow and miserable degradation until things fail"
|
||||
severity: "Suggestion"
|
||||
impact: "This will slow down the machine due to all the dhcp-namespaces"
|
||||
nova_vif_timeout_result:
|
||||
url: "none"
|
||||
description: "Nova VIF timeout should be >= 300"
|
||||
severity: "Suggestion"
|
||||
impact: "Best practices from the Neutron team"
|
||||
bz1264740:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1264740"
|
||||
description: "RHEL OSP Director must be configured with nova-event-callback by default"
|
||||
severity: "Critical"
|
||||
impact: "nova-event-callback should be enabled, nova will launch guests with possibly no networking"
|
||||
rabbit_partitioned:
|
||||
url: "none"
|
||||
description: "RabbitMQ is currently partitioned - YMMV... Good luck."
|
||||
severity: "Critical"
|
||||
impact: "RabbitMQ is partitioned - The deployment is broken"
|
||||
tuned_profile_result:
|
||||
url: "none"
|
||||
description: "Ensure TuneD Profile is set to throughput-performance"
|
||||
severity: "Suggestion"
|
||||
impact: "Set the right TuneD profile for the host"
|
||||
neutron_rootwrap_daemon:
|
||||
url: "none"
|
||||
description: "Ensure rootwrap has daemon mode enabled"
|
||||
severity: "Suggestion"
|
||||
impact: "The Red Hat Neutron team recommends having rootwrap in Daemon mode"
|
||||
bz1330980:
|
||||
url: "https://bugzilla.redhat.com/show_bug.cgi?id=1330980"
|
||||
description: "Undercloud deployed with 1 keystone worker and cpu_count for threads"
|
||||
severity: "Critical"
|
||||
impact: "Not tuning the workers properly can cause degraded performance"
|
@ -1,25 +0,0 @@
|
||||
---
|
||||
#
|
||||
# Checks specific to ceph nodes
|
||||
#
|
||||
|
||||
- name: Check Ceph cluster health status
|
||||
command: ceph status
|
||||
register: ceph_status
|
||||
failed_when: "'HEALTH_OK' not in '{{ ceph_status.stdout }}'"
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- name: Verify RBD caching
|
||||
shell: ceph --admin-daemon `ls /var/run/ceph/ceph-osd.*.asok|tail -1` config show|grep '"rbd_cache":'|grep -i true|awk '{print tolower($0)}'
|
||||
register: ceph_rbd_caching
|
||||
failed_when : "'true' not in '{{ ceph_rbd_caching.stdout }}'"
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- name: Verify RBD cache writethrough
|
||||
shell: ceph --admin-daemon `ls /var/run/ceph/ceph-osd.*.asok|tail -1` config show|grep "rbd_cache_writethrough"|grep -i true|awk '{print tolower($0)}'
|
||||
register: ceph_rbd_cache_writethrough
|
||||
failed_when: "'false' not in '{{ ceph_rbd_cache_writethrough.stdout }}'"
|
||||
changed_when: false
|
||||
ignore_errors: True
|
@ -1,35 +0,0 @@
|
||||
---
|
||||
#
|
||||
# Tests common to Director/Controller/Compute/Ceph
|
||||
#
|
||||
- name: Ensure crudini
|
||||
command: which crudini
|
||||
changed_when: no
|
||||
register: crudini
|
||||
ignore_errors: True
|
||||
|
||||
- name: Install Crudini if it is not there
|
||||
package:
|
||||
name: crudini
|
||||
state: present
|
||||
when: crudini.rc == 1
|
||||
|
||||
- name: Get selinux mode
|
||||
command: getenforce
|
||||
changed_when: no
|
||||
register: sestatus
|
||||
|
||||
- name: Check tuned running on host
|
||||
command: tuned-adm active
|
||||
register: tuned_result
|
||||
changed_when: no
|
||||
failed_when: tuned_result.rc == -1
|
||||
ignore_errors: True
|
||||
|
||||
- name: Check tuned for correct profile on host
|
||||
command: tuned-adm active
|
||||
register: tuned_profile_result
|
||||
changed_when: no
|
||||
failed_when: "'{{ tuned_profile }}' not in '{{ tuned_profile_result.stdout }}'"
|
||||
ignore_errors: True
|
||||
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
#
|
||||
# Tests specific to compute hosts
|
||||
#
|
||||
|
||||
- name: Check if swap device exists
|
||||
command: swapon -s
|
||||
register: bz1245714
|
||||
changed_when: no
|
||||
failed_when: "'dev' not in '{{ bz1245714.stdout }}'"
|
||||
ignore_errors: True
|
||||
|
||||
- name: Check reserved_host_memory_mb
|
||||
shell: grep reserved_host_memory /etc/nova/nova.conf | grep -v "#" | cut -f2 -d =
|
||||
register: bz1282644
|
||||
failed_when: bz1282644.stdout|int < reserved_host_memory_check
|
||||
changed_when: no
|
||||
ignore_errors: True
|
||||
|
@ -1,71 +0,0 @@
|
||||
---
|
||||
#
|
||||
# Performance checks specific to controller hosts
|
||||
#
|
||||
|
||||
- name: Check max_connections on the database
|
||||
shell: mysql -e "show variables like 'max_connections';" | grep max_connections | awk '{print $2}'
|
||||
register: bz1266253
|
||||
changed_when: no
|
||||
failed_when: bz1266253.stdout|int < mariadb_max_connections
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Suggested buffer_pool_size
|
||||
shell: mysql -Bse "SELECT CEILING(Total_InnoDB_Bytes*1.6/POWER(1024,2)) RIBPS FROM (SELECT SUM(data_length+index_length) Total_InnoDB_Bytes FROM information_schema.tables WHERE engine='InnoDB') A;"
|
||||
register: suggested_buffer_pool_size
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name : Current buffer_pool_size
|
||||
shell: echo $(mysql -Bse " select @@innodb_buffer_pool_size")/1024/1024 | bc
|
||||
register: buffer_pool_size
|
||||
failed_when: buffer_pool_size.stdout|int < suggested_buffer_pool_size.stdout|int
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name : File descriptors for the mysql process
|
||||
shell: cat /proc/$(pgrep mysqld_safe)/limits | grep "open files" | awk '{print $4}'
|
||||
register: mysqld_safe_soft_fd
|
||||
failed_when: mysqld_safe_soft_fd.stdout|int < mysqld_soft_fd
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name : Check rabbitmq file descriptors
|
||||
shell: rabbitmqctl status | grep file_descriptors | awk -F',' '{print $3}' | sed 's/.$//'
|
||||
register: bz1282491
|
||||
changed_when: no
|
||||
failed_when: bz1282491.stdout|int < rabbitmq_fd
|
||||
ignore_errors: yes
|
||||
|
||||
- name : Check HAProxy Default maxconn
|
||||
shell : cat /etc/haproxy/haproxy.cfg | grep -iPzo '(?s)defaults.*?\n(\n|$)' | grep maxconn | awk '{print $2}'
|
||||
register: bz1281584
|
||||
failed_when: bz1281584.stdout|int < mariadb_max_connections
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name : Check netns tuning
|
||||
shell : sysctl net.core.netdev_max_backlog | awk '{print $3}'
|
||||
register: bz1095811
|
||||
failed_when: bz1095811.stdout|int < netdev_max_backlog
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name : Check udev performance issue
|
||||
shell : grep -q 'SUBSYSTEM=="net", ACTION=="add", TAG+="systemd", ENV{SYSTEMD_WANTS}+="dhcp-interface@$name.service"' /etc/udev/rules.d/99-dhcp-all-interfaces.rules
|
||||
register : bz1293712
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
failed_when: bz1293712.rc == 0
|
||||
|
||||
- name : Check rabbitmq for partitions
|
||||
shell: rabbitmqctl cluster_status | grep partitions -A 1 | grep -v alarm | grep -q controller
|
||||
register: rabbit_partitioned
|
||||
changed_when: no
|
||||
failed_when: rabbit_partitioned.rc == 0
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Run MySQL Tuner script
|
||||
script: mysqltuner.pl --nocolor
|
||||
register: mysql_out
|
||||
ignore_errors: yes
|
@ -1,12 +0,0 @@
|
||||
- name: Glance API worker count
|
||||
command: crudini --get /etc/glance/glance-api.conf DEFAULT workers
|
||||
register: glance_api_workers
|
||||
failed_when: glance_api_workers.rc == 1
|
||||
changed_when: false
|
||||
ignore_errors: true
|
||||
- name: Glance Registry worker count
|
||||
command: crudini --get /etc/glance/glance-registry.conf DEFAULT workers
|
||||
register: glance_registry_workers
|
||||
failed_when: glance_registry_workers.rc == 1
|
||||
changed_when: false
|
||||
ignore_errors: true
|
@ -1,15 +0,0 @@
|
||||
---
|
||||
#
|
||||
# Gnocchi tasks for performance checks
|
||||
#
|
||||
|
||||
- name: Get httpd configuration files
|
||||
command: 'ls /etc/httpd/conf.d/'
|
||||
register: httpd_confd_files
|
||||
|
||||
- name: Gnocchi API httpd process count
|
||||
shell: egrep -o "processes=[0-9]+" /etc/httpd/conf.d/*gnocchi_wsgi.conf | egrep -o "[0-9]+"
|
||||
register: bz1372821
|
||||
failed_when: bz1372821.stdout|int < gnocchi_api_processes and 'gnocchi' in httpd_confd_files.stdout
|
||||
when: (inventory_hostname in groups.controller)
|
||||
ignore_errors: True
|
@ -1,63 +0,0 @@
|
||||
---
|
||||
#
|
||||
# Keystone tasks for performance checks
|
||||
#
|
||||
|
||||
- name: Check Keystone cron job
|
||||
shell: crontab -l -u keystone | grep -v "#"
|
||||
register: keystone_cron_result
|
||||
changed_when: false
|
||||
failed_when: "'token_flush' not in '{{ keystone_cron_result.stdout }}'"
|
||||
ignore_errors: True
|
||||
|
||||
- name: Check Keystone Token Provider
|
||||
command: crudini --get /etc/keystone/keystone.conf token provider
|
||||
register: keystone_token_provider
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- debug: msg="Keystone Token Provider:{{ keystone_token_provider.stdout }}"
|
||||
|
||||
- name: Determine if Keystone is deployed in eventlet
|
||||
shell: ps afx | grep "[Kk]eystone-all" -c
|
||||
register: keystone_in_eventlet
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- name: Set keystone_deployment variable to httpd
|
||||
set_fact: keystone_deployment='httpd'
|
||||
when: keystone_in_eventlet.stdout|int == 0
|
||||
|
||||
- name: Set keystone_deployment variable to eventlet
|
||||
set_fact: keystone_deployment='eventlet'
|
||||
when: keystone_in_eventlet.stdout|int > 0
|
||||
|
||||
- debug: msg="Keystone deployed in:{{ keystone_deployment }}"
|
||||
|
||||
- name: Keystone HTTP admin processes (Undercloud)
|
||||
shell: egrep -o "processes=[0-9]+" /etc/httpd/conf.d/*keystone*admin.conf | egrep -o "[0-9]+"
|
||||
register: bz1330980
|
||||
failed_when: bz1330980.stdout|int < keystone_processes
|
||||
when: (keystone_in_eventlet.stdout|int == 0) and (inventory_hostname in groups.undercloud)
|
||||
ignore_errors: True
|
||||
|
||||
- name: Keystone HTTP main processes (Undercloud)
|
||||
shell: egrep -o "processes=[0-9]+" /etc/httpd/conf.d/*keystone*main.conf | egrep -o "[0-9]+"
|
||||
register: bz1330980
|
||||
failed_when: bz1330980.stdout|int < keystone_processes
|
||||
when: (keystone_in_eventlet.stdout|int == 0) and (inventory_hostname in groups.undercloud)
|
||||
ignore_errors: True
|
||||
|
||||
- name: Keystone HTTP admin processes (Controller)
|
||||
shell: egrep -o "processes=[0-9]+" /etc/httpd/conf.d/*keystone*admin.conf | egrep -o "[0-9]+"
|
||||
register: bz1347305
|
||||
failed_when: bz1347305.stdout|int < keystone_processes
|
||||
when: (keystone_in_eventlet.stdout|int == 0) and (inventory_hostname in groups.controller)
|
||||
ignore_errors: True
|
||||
|
||||
- name: Keystone HTTP main processes (Controller)
|
||||
shell: egrep -o "processes=[0-9]+" /etc/httpd/conf.d/*keystone*main.conf | egrep -o "[0-9]+"
|
||||
register: bz1347305
|
||||
failed_when: bz1347305.stdout|int < keystone_processes
|
||||
when: (keystone_in_eventlet.stdout|int == 0) and (inventory_hostname in groups.controller)
|
||||
ignore_errors: True
|
@ -1,28 +0,0 @@
|
||||
---
|
||||
- name: Check nova is configured in neutron config
|
||||
command: crudini --get /etc/neutron/neutron.conf DEFAULT nova_admin_tenant_id
|
||||
register: neutron_nova_creds
|
||||
failed_when: neutron_nova_creds.rc == 1
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- name: Check for rootwrap daemon
|
||||
command: crudini --get /etc/neutron/neutron.conf agent root_helper_daemon
|
||||
register: neutron_rootwrap_daemon
|
||||
failed_when: neutron_rootwrap_daemon.rc == 1
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- name: Check MTU
|
||||
shell: cat /etc/neutron/dnsmasq-neutron.conf | grep 'dhcp\-option\-force=26'
|
||||
register: neutron_dnsmasq_mtu
|
||||
failed_when: neutron_dnsmasq_mtu.rc == 0
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- name: Check Neutron.conf MTU
|
||||
command: crudini --get /etc/neutron/neutron.conf DEFAULT global_physnet_mtu
|
||||
register: neutron_conf_mtu
|
||||
failed_when: neutron_conf_mtu.rc == 0
|
||||
changed_when: false
|
||||
ignore_errors: True
|
@ -1,14 +0,0 @@
|
||||
---
|
||||
- name: Check Nova vif_plugging
|
||||
command: crudini --get /etc/nova/nova.conf DEFAULT vif_plugging_is_fatal
|
||||
register: bz1264740
|
||||
failed_when: "'True' not in '{{ bz1264740.stdout }}'"
|
||||
changed_when: false
|
||||
ignore_errors: True
|
||||
|
||||
- name: Check Nova vif_plugging_timeout
|
||||
command: crudini --get /etc/nova/nova.conf DEFAULT vif_plugging_timeout
|
||||
register: nova_vif_timeout_result
|
||||
failed_when: nova_vif_timeout > nova_vif_timeout_result.stdout|int
|
||||
changed_when: false
|
||||
ignore_errors: True
|
@ -1,43 +0,0 @@
|
||||
---
|
||||
#
|
||||
# Performance checks specific to controller hosts
|
||||
#
|
||||
|
||||
- name: Check max_connections on the database
|
||||
shell: mysql -e "show variables like 'max_connections';" | grep max_connections | awk '{print $2}'
|
||||
register: bz1266253
|
||||
changed_when: no
|
||||
failed_when: bz1266253.stdout|int < mariadb_max_connections
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Suggested buffer_pool_size
|
||||
shell: mysql -Bse "SELECT CEILING(Total_InnoDB_Bytes*1.6/POWER(1024,2)) RIBPS FROM (SELECT SUM(data_length+index_length) Total_InnoDB_Bytes FROM information_schema.tables WHERE engine='InnoDB') A;"
|
||||
register: suggested_buffer_pool_size
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name : Current buffer_pool_size
|
||||
shell: echo $(mysql -Bse " select @@innodb_buffer_pool_size")/1024/1024 | bc
|
||||
register: buffer_pool_size
|
||||
failed_when: buffer_pool_size.stdout|int < suggested_buffer_pool_size.stdout|int
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name : File descriptors for the mysql process
|
||||
shell: cat /proc/$(pgrep mysqld_safe)/limits | grep "open files" | awk '{print $4}'
|
||||
register: mysqld_safe_soft_fd
|
||||
failed_when: mysqld_safe_soft_fd.stdout|int < mysqld_soft_fd
|
||||
changed_when: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name : Check rabbitmq file descriptors
|
||||
shell: rabbitmqctl status | grep total_limit | awk -F',' '{print $2}' | sed 's/.$//'
|
||||
register: bz1282491
|
||||
changed_when: no
|
||||
failed_when: bz1282491.stdout|int < rabbitmq_fd
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Run MySQL Tuner script
|
||||
script: mysqltuner.pl --nocolor
|
||||
register: mysql_out
|
||||
ignore_errors: yes
|
@ -1,71 +0,0 @@
|
||||
---
|
||||
#
|
||||
# Playbook to check OSP install for common performance tuning issues
|
||||
#
|
||||
|
||||
- hosts: localhost
|
||||
name: Get MySQL Tuner Script
|
||||
gather_facts: false
|
||||
vars:
|
||||
ansible_connection: local
|
||||
tasks:
|
||||
- name: Get MySQL Tuner Script
|
||||
get_url: url={{mysql_tuner_script}} dest={{playbook_dir}}
|
||||
|
||||
- hosts: undercloud
|
||||
name: Checking Undercloud for common Performance Issues
|
||||
remote_user: stack
|
||||
roles:
|
||||
- common
|
||||
- controller
|
||||
- undercloud
|
||||
- keystone
|
||||
- neutron
|
||||
- nova
|
||||
|
||||
- hosts: controller
|
||||
name: Checking Controller Nodes for common Performance Issues
|
||||
remote_user: heat-admin
|
||||
roles:
|
||||
- common
|
||||
- controller
|
||||
- keystone
|
||||
- neutron
|
||||
- nova
|
||||
- glance
|
||||
- gnocchi
|
||||
|
||||
- hosts: compute
|
||||
name: Checking Compute Nodes for common Performance Issues
|
||||
remote_user: heat-admin
|
||||
roles:
|
||||
- common
|
||||
- compute
|
||||
- nova
|
||||
|
||||
- hosts: cephstorage
|
||||
name: Checking Ceph Hosts for common Performance Issues
|
||||
remote_user: heat-admin
|
||||
roles:
|
||||
- common
|
||||
- ceph
|
||||
|
||||
- hosts: localhost
|
||||
gather_facts: False
|
||||
become: false
|
||||
vars:
|
||||
ansible_python_interpreter: "/usr/bin/python"
|
||||
name: Generating bug report
|
||||
tasks:
|
||||
- name: Create results dir
|
||||
file: "path={{result_dir}} state=directory"
|
||||
- name: Template Bug report
|
||||
template: src=templates/bug_report.j2 dest={{result_dir}}/bug_report.log
|
||||
become: false
|
||||
- name: Template MySQL report
|
||||
template: src=templates/mysql_report.j2 dest={{result_dir}}/mysql_report.log
|
||||
become: false
|
||||
- name: Run MySQL report regex
|
||||
replace: dest={{result_dir}}/mysql_report.log regexp='\[([^\s+]+)' replace=''
|
||||
- name: Run MySQL report regex
|
||||
replace: dest={{result_dir}}/mysql_report.log regexp='\r' replace=''
|
@ -1,49 +0,0 @@
|
||||
# Browbeat generated bug report
|
||||
|
||||
{% for host in groups['undercloud'] %}
|
||||
---------------------------------------
|
||||
| Issues for host : {{ host }}
|
||||
---------------------------------------
|
||||
{% for check in hostvars[host]['checks'] %}
|
||||
{% if hostvars[host][check]['failed'] == true %}
|
||||
Bug: {{ check }}
|
||||
Description: {{ hostvars[host]['checks'][check]['description'] }}
|
||||
URL: {{ hostvars[host]['checks'][check]['url'] }}
|
||||
Severity: {{ hostvars[host]['checks'][check]['severity'] }}
|
||||
Impact: {{ hostvars[host]['checks'][check]['impact'] }}
|
||||
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
|
||||
{% for host in groups['controller'] %}
|
||||
---------------------------------------
|
||||
| Issues for host : {{ host }}
|
||||
---------------------------------------
|
||||
{% for check in hostvars[host]['checks'] %}
|
||||
{% if hostvars[host][check]['failed'] == true %}
|
||||
Bug: {{ check }}
|
||||
Description: {{ hostvars[host]['checks'][check]['description'] }}
|
||||
URL: {{ hostvars[host]['checks'][check]['url'] }}
|
||||
Severity: {{ hostvars[host]['checks'][check]['severity'] }}
|
||||
Impact: {{ hostvars[host]['checks'][check]['impact'] }}
|
||||
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
|
||||
{% for host in groups['compute'] %}
|
||||
---------------------------------------
|
||||
| Issues for host : {{ host }}
|
||||
---------------------------------------
|
||||
{% for check in hostvars[host]['checks'] %}
|
||||
{% if hostvars[host][check]['failed'] == true %}
|
||||
Bug: {{ check }}
|
||||
Description: {{ hostvars[host]['checks'][check]['description'] }}
|
||||
URL: {{ hostvars[host]['checks'][check]['url'] }}
|
||||
Severity: {{ hostvars[host]['checks'][check]['severity'] }}
|
||||
Impact: {{ hostvars[host]['checks'][check]['impact'] }}
|
||||
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
@ -1,16 +0,0 @@
|
||||
# MYSQL Tuner Report
|
||||
|
||||
{% for host in groups['undercloud'] %}
|
||||
-------------------------------------------
|
||||
| Results for host : {{ host }}
|
||||
-------------------------------------------
|
||||
{{hostvars[host]['mysql_out']['stdout']}}
|
||||
{% endfor %}
|
||||
|
||||
|
||||
{% for host in groups['controller'] %}
|
||||
-------------------------------------------
|
||||
| Results for host : {{ host }}
|
||||
-------------------------------------------
|
||||
{{hostvars[host]['mysql_out']['stdout']}}
|
||||
{% endfor %}
|
@ -2,17 +2,6 @@
|
||||
Usage
|
||||
========
|
||||
|
||||
- No longer Maintained since Pike - Run Overcloud checks
|
||||
----------------------------------------------------------
|
||||
|
||||
::
|
||||
|
||||
$ ansible-playbook -i hosts check/site.yml
|
||||
|
||||
Your Overcloud check output is located in results/bug_report.log
|
||||
|
||||
NOTE: It is strongly advised to not run the ansible playbooks in a virtual environment.
|
||||
|
||||
Run Browbeat performance tests from Undercloud
|
||||
----------------------------------------------
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user