Files
browbeat/ansible/install/group_vars/all.yml
Masco 8632866417 add ilm policies to handle the life of the es indices
two policies are added to handle short and long term indices.

life of the indices can be configured using the 'elasticsearch.life'
field at browbeat-config.yml file
shortterm will have: 125 days
longterm will have 2 years

the policy and the policy based templates can be created using the
'es-template' install playbook.

Change-Id: I0f4a4a9acc03092fd582ae4ff50f688850def953
2023-09-07 15:29:11 +05:30

560 lines
17 KiB
YAML

---
########################################
# Browbeat Install Configuration
########################################
# Adjust Browbeat user if you are deploying Browbeat on a different machine than the Undercloud
browbeat_user: stack
# Login user for the local/jump machine (Typically Undercloud)
local_remote_user: stack
# Login user for the Overcloud hosts
host_remote_user: heat-admin
# OpenStack Installer
# Tripleo is the only installer supported currently
tripleo: true
home_dir: "/home/{{browbeat_user}}"
browbeat_path: "{{home_dir}}/browbeat"
# Creates rally deployment Undercloud
rally_undercloud_enabled: true
# The Undercloud RC file
stackrc: "{{home_dir}}/stackrc"
# The Overcloud RC file
overcloudrc: "{{home_dir}}/overcloudrc"
# The Overcloud CA cert file
# overcloud_ca_path: /etc/pki/ca-trust/source/anchors/overcloud.crt.pem
# The default Browbeat venv
browbeat_venv: "{{browbeat_path}}/.browbeat-venv"
# The default Rally venv
rally_venv: "{{browbeat_path}}/.rally-venv"
# Rally version to install
rally_openstack_version: 2.2.0
# The default Shaker venv
shaker_venv: "{{browbeat_path}}/.shaker-venv"
# Shaker version to Install
shaker_version: 1.4.2
# Custom name to use for the cloud
cloud_prefix: openstack
# Configuration items to adjust browbeat results served through httpd
browbeat_results_port: 9001
browbeat_results_in_httpd: true
supported_distro: ((ansible_distribution == "CentOS" && ansible_distribution_major_version >= "7") or
(ansible_distribution == "RedHat" && ansible_distribution_major_version >= "7"))
# iptables file - RHEL (/etc/sysconfig/iptables) CentOS (/etc/sysconfig/iptables-config)
iptables_file: /etc/sysconfig/iptables
########################################
# Octavia
########################################
#test_server.bin is a static application that
#simulates HTTP, HTTPS, and UDP servers.
#octavia_test_bin_path:
########################################
# Browbeat Workloads
########################################
# Install Browbeat workloads
install_browbeat_workloads: false
# Install e2e-benchmarking for shift-on-stack workloads
install_e2e_benchmarking: false
# Network ID which has external access
browbeat_network:
# For Pbench Repos - Provide the internal RPM URL
pbench_internal_url:
# linpack url
linpack_url: http://registrationcenter-download.intel.com/akdlm/irc_nas/9752/l_mklb_p_2018.3.011.tgz
linpack_path: /benchmarks_2018/linux/mkl/benchmarks/linpack/
sysbench_url : http://pkgs.fedoraproject.org/repo/pkgs/sysbench/sysbench-0.4.12.tar.gz/3a6d54fdd3fe002328e4458206392b9d/sysbench-0.4.12.tar.gz
# Browbeat Rally workloads
browbeat_workloads:
sysbench:
name: browbeat-sysbench
src: sysbench-user.file
dest: "{{ browbeat_path }}/sysbench-user.file"
image: centos7
enabled: false
flavor: m1.small
linpack:
name: browbeat-linpack
src: linpack-user.file
dest: "{{ browbeat_path }}/linpack-user.file"
image: centos7
enabled: false
flavor: m1.small
uperf:
name: browbeat-uperf
src: pbench-uperf-user.file
dest: "{{ browbeat_path }}/pbench-uperf-user.file"
image: centos7
enabled: false
flavor: m1.small
abench:
name: browbeat-abench
src: abench-user.file
dest: "{{ browbeat_path }}/abench-user.file"
image: centos7
enabled: false
flavor: m1.small
octavia:
name: custom-cirros
src: custom-cirros.file
dest: "{{ browbeat_path }}/custom-cirros.file"
image: cirro5
enabled: false
flavor: m1.tiny-cirros
stress_ng:
name: browbeat-stress-ng
src: stress-ng-user.file
dest: "{{ browbeat_path }}/stress-ng-user.file"
image: centos7
enabled: false
flavor: m1.small
########################################
# Other Install Configuration Items
########################################
# Toggle creating flavors:
browbeat_create_flavors: true
# Guest images for the Overcloud
# Note hash key name must match intended name for image upload to
# work consistently (Ex. images['cirros'].name == 'cirros')
browbeat_upload_guest_images: true
browbeat_guest_images:
centos7:
name: centos7
url: http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2
type: qcow2
convert_to_raw: false
cirros:
name: cirros
url: https://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img
type: qcow2
convert_to_raw: false
cirro5:
name: cirro5
url: https://download.cirros-cloud.net/0.5.1/cirros-0.5.1-x86_64-disk.img
type: qcow2
convert_to_raw: false
# DNS Server to add
dns_server: 8.8.8.8
# Proxy Settings
proxy_env: {}
# Example use:
# proxy_env:
# http_proxy: http://proxy.example.com:80
# https_proxy: http://proxy.example.com:80
# no_proxy: localhost, example.sat6.com, graphite-server.com, elk-server.com
# Disables dns lookup by overcloud sshd process
disable_ssh_dns: false
# Extra Repos to add during collectd install
repos: {}
# repos:
# rhel-7-server-beta:
# baseurl: http://walkabout.foobar.com/released/RHEL-7/7.3-Beta/Server/x86_64/os/
########################################
# Collectd Configuration
########################################
# Install release specific templates
# Install collectd from EPEL
collectd_from_epel: true
# Interval in seconds
collectd_interval: 10
# Typically: carbon-cache port=2003 or Graphite with carbon-relay=2013
collectd_write_graphite_port: 2003
# Run collectd on specific openstack nodes:
collectd_undercloud: true
collectd_controller: true
collectd_networker: true
collectd_blockstorage: true
collectd_objectstorage: true
collectd_cephstorage: true
collectd_compute: false
collectd_graphite: true
collectd_prometheus: false
########################
# Opt-In Collectd plugins configuration:
########################
# Apache plugin
########################
# Undercloud
apache_undercloud_collectd_plugin: false
apache_undercloud_mod_status_port: 5001
# Overcloud Controller
# Apache is not installed on controllers from RHOSP 16(Train) onwards.
# This option can be enabled only for RHOSP<16.
apache_controller_collectd_plugin: false
apache_controller_mod_status_port: 5001
########################
# Apache request time
########################
# Setups up Apache to log request time and collectd to grab request time from
# httpd log files. This provides request times from Apache for Keystone,
# Gnocchi, and Nova Placement APIs hosted under httpd.
apache_controller_collectd_request_time: false
########################
# Ceph plugin
########################
# Overcloud Controller
# Python plugin is prefered (At the Current Moment)
ceph_controller_collectd_radosbench_plugin: false
ceph_controller_collectd_radosbench_interval: 30
ceph_controller_collectd_mon_plugin: false
ceph_controller_collectd_mon_interval: 10
ceph_controller_collectd_osd_plugin: false
ceph_controller_collectd_osd_interval: 10
ceph_controller_collectd_pg_plugin: false
ceph_controller_collectd_pg_interval: 10
ceph_controller_collectd_pool_plugin: false
ceph_controller_collectd_pool_interval: 10
# Collectd provided Ceph plugins
ceph_controller_collectd_plugin: false
ceph_storage_collectd_plugin: false
############################
# sqlalchemy plugin
###########################
sqlalchemy_collectd_plugin: false
########################
# Gnocchi Status plugin
########################
gnocchi_status_undercloud_collectd_plugin: false
gnocchi_status_undercloud_collectd_interval: 10
gnocchi_status_controller_collectd_plugin: false
gnocchi_status_controller_collectd_interval: 10
########################
# Disk/IOStat plugin
########################
# Disk plugin metrics are opt-out, IOStat metrics are opt-in
disk_undercloud_collectd_plugin: true
disk_controller_collectd_plugin: true
disk_networker_collectd_plugin: true
disk_cephstorage_collectd_plugin: true
disk_compute_collectd_plugin: true
disk_blockstorage_collectd_plugin: true
disk_objectstorage_collectd_plugin: true
# Enable these for more comprehensive IOStat metrics
iostat_undercloud_collectd_plugin: false
iostat_undercloud_collectd_interval: 10
iostat_controller_collectd_plugin: false
iostat_controller_collectd_interval: 10
iostat_networker_collectd_plugin: false
iostat_networker_collectd_interval: 10
iostat_cephstorage_collectd_plugin: false
iostat_cephstorage_collectd_interval: 10
iostat_compute_collectd_plugin: false
iostat_compute_collectd_interval: 10
iostat_blockstorage_collectd_plugin: false
iostat_blockstorage_collectd_interval: 10
iostat_objectstorage_collectd_plugin: false
iostat_objectstorage_collectd_interval: 10
########################
# Keystone token count
########################
# If you have UUID tokens, we can count those via the collectd dbi plugin
keystone_undercloud_collectd_plugin: false
keystone_overcloud_collectd_plugin: false
########################
# Rabbitmq plugin
########################
rabbitmq_undercloud_collectd_plugin: false
rabbitmq_undercloud_collectd_interval: 10
rabbitmq_controller_collectd_plugin: false
rabbitmq_controller_collectd_interval: 10
# Queues to monitor message count on Undercloud
undercloud_monitored_queues:
- "metering.sample"
- "event.sample"
- "notifications.sample"
- "notifications.audit"
- "notifications.info"
- "notifications.warn"
- "notifications.error"
- "notifications.critical"
# Queues to monitor message count on Controllers
controller_monitored_queues:
- "metering.sample"
- "event.sample"
- "notifications.sample"
- "notifications.audit"
- "notifications.info"
- "notifications.warn"
- "notifications.error"
- "notifications.critical"
########################
# ovsagent monitoring
########################
ovsagent_compute_monitor: false
ovsagent_controller_monitor: false
ovsagent_networker_monitor: false
ovs_flows_monitoring: false
######################################
# OVN DB Tables Rows Count Monitoring
######################################
# Monitors OVN DB Tables rows count on controller.
# You have to add wheel to sudo list with no password prompt on the controller host,
# before enabling this plugin.
ovn_monitoring: false
#######################
# OVN RAFT Monitoring
#######################
# Monitors OVN RAFT cluster status metrics on controllers.
ovn_raft_monitoring: false
ovn_raft_controller_collectd_interval: 30
#######################
# Pacemaker Monitoring
#######################
# Monitors pcs status metrics on controller.
pacemaker_monitoring: true
pacemaker_controller_collectd_interval: 15
controller_monitored_ints:
- "tap"
networker_monitored_ints:
- "tap"
compute_monitored_ints:
- "qvo"
controller_monitored_ns:
- "qrouter"
- "qdhcp"
networker_monitored_ns:
- "qrouter"
- "qdhcp"
########################
# Swift stat plugin
########################
# Provides metrics on Swift Account using Gnocchi Swift Configuration
swift_stat_controller_collectd_plugin: false
swift_stat_controller_collectd_interval: 10
########################
# tail plugin
########################
# Determines if WARN/INFO messages are also counted
regex_warn: false
regex_info: false
########################################################
# Ping Plugin for Latency and Jitter between controllers
########################################################
# Might result in more network traffic
ping_plugin: false
ping_interval: 1
########################################################
# OSP resources collectd plugin on controllers
########################################################
# Monitors OSP resources (networks, instances ..) created in DB.
osp_resources_collectd_plugin: true
#######################################################################
# OSP individual resources collectd response time plugin on controllers
#######################################################################
# Monitors response time for individual OSP resources (networks, subnets, routers ..) created in DB.
osp_individual_resources_response_time: false
########################################################
# OVN compute Plugin for OVN monitoring on computes
########################################################
# Usually we avoid running collectd on computes as cluster
# will have large number of compute nodes and the metrics
# from these nodes will saturate the graphite host.
# This plugin allows to collect only OVN statistics on
# compute nodes. Turn it off when you want to collect
# all metrics on all compute nodes
ovn_compute_collectd_plugin: false
#######################################################################
# Virt plugin to monitor resources in VMs on computes
#######################################################################
virt_collectd_plugin: false
############################################
# Prometheus/Collectd-Exporter Configuration
############################################
prometheus_host:
#Avoid using underscore for prometheus_prefix
prometheus_prefix:
prometheus_port: 25826
#collectd_exporter_port: 9103
########################################
# Carbon/Graphite Configuration
########################################
# Graphite Server ip address (Collectd -> Graphite server)
# you must fill out graphite_host prior to playbook execution
graphite_host:
graphite_port: 80
carbon_cache_port: 2003
# Graphite prefix / Cloud name used both with graphite and grafana dashboards
graphite_prefix: "{{cloud_prefix}}"
# Graphite username and password for login on the dashboard
# credential aren't created when you deploy graphite, use manage.py
graphite_username: root
graphite_password: calvin
# List of cloud names taken by other infrastructure
# attempting to use them should fail.
forbidden_cloud_names:
- "statsd"
- "stats"
- "stats_counts"
########################################
# Grafana Dashboarding Configuration
########################################
# Grafana Server IP Address/Port (Can be hosted on the Graphite server)
# you must fill out grafana_host prior to playbook execution
# If you are deploying grafana the username/password combination will be set
# (if you're using the grafana-docker playbook this does not currently work,
# it will deploy with admin/admin). If you're uploading dashboards be sure to
# set the password here to whatever it actually is.
grafana_host:
grafana_port: 3000
grafana_username: admin
grafana_password: admin
grafana_apikey:
# Batch number of hosts per row for all-{cpu, memory, disk, network} openstack dashboards
dashboards_batch: 20
# For use with all-{cpu, memory, disk, network} openstack dashboards, uses the graphite prefix to create dashboards for specific openstack cloud
dashboard_cloud_name: "{{graphite_prefix}}"
# Dashboard UID to create Grafana annotations for Browbeat/Rally scenarios.
# This is optional unless create_grafana_annotations is enabled in browbeat-config.yaml.
grafana_dashboard_uid:
########################################
# StatsD Configuration
# Points at configured Graphite instance
########################################
statsd_host:
statsd_port: 8125
statsd_enabled: False
########################################
# Shaker Configuration
########################################
# Port for Shaker (5555 should suffice)
shaker_port: 5555
# Base image for disk image builder
shaker_image: centos7
shaker_region: regionOne
########################################
# ELK Server Variables
########################################
#
# port filebeat client grabs the client SSL certificate
# e.g. 9999
elk_server_ssl_cert_port: 8080
#
### logging backend ###
# you can pick between logstash or fluentd
# if left empty logstash will be used
### accepted options ###
# logging_backend:
# logging_backend: logstash
# logging_backend: fluentd
# logging_backend: rsyslog
logging_backend:
#
### logstash options ###
logstash_syslog_port: 5044
### fluentd options ###
fluentd_syslog_port: 42185
fluentd_http_port: 9919
fluentd_debug_port: 24230
### rsyslog options ###
# Used for the rsyslog -> elasticsearch
# or rsyslog forwarder -> rsyslog aggregator -> elasticsearch
# logging pattern
rsyslog_elasticsearch_server: "{{es_ip}}"
rsyslog_elasticsearch_port: "{{es_local_port}}"
rsyslog_aggregator_server: "{{es_ip}}"
rsyslog_aggregator_port: "7894"
rsyslog_cloud_name: "{{cloud_prefix}}"
disk_backed_rsyslog: false
rsyslog_forwarding: true
# If true up to 2gb of messages will be logged
# to disk if es goes down vs a 100mb in memory
# cache otherwise
## elasticsearch local port listener
# we will enable localhost listening on TCP/9200
# due to utilizing elasticsearch connectors, general
# usage may want to disable this option due to security reasons
# in which case you should set this to false
## Elasticsearch options ##
es_ip: 1.1.1.1
es_local_port: 9200
es_listen_external: true
elastic5: false
elastic7: true
shortterm_age: '125d'
longterm_age: '750d'
## Filebeat options ##
filebeat_url: https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.6.0-x86_64.rpm
### kibana options ###
# change this to affect nginx-wrapped htpasswd authentication
kibana_user: admin
kibana_password: admin
es_kibana_index: .kibana
### kibana nginx ###
# add nonstandard port here for undercloud usage
# usage: port nginx listens to reverse-proxy Kibana
# e.g. 8888
nginx_kibana_port: 80
### install curator tool ###
# curator is the recommended tool for managing elasticsearch indexes
# https://www.elastic.co/guide/en/elasticsearch/client/curator/current/index.html
# default is no (set to blank) or false
# set the below variable to 'true' to activate
install_curator_tool: false