From 95954ae1847bcdf2fef9839b580d679233b9d996 Mon Sep 17 00:00:00 2001 From: Stephen Smoogen Date: Fri, 29 May 2020 15:02:07 -0400 Subject: [PATCH] add in vars for db-qa boxes and fix fedmsg relay --- .../host_vars/db-qa01.iad2.fedoraproject.org | 55 ++++++ .../host_vars/db-qa02.iad2.fedoraproject.org | 38 +++++ .../host_vars/db-qa03.iad2.fedoraproject.org | 35 ++++ roles/fedmsg/base/templates/relay.py.j2 | 1 - .../my.cnf.db-qa01.iad2.fedoraproject.org | 156 ++++++++++++++++++ 5 files changed, 284 insertions(+), 1 deletion(-) create mode 100644 inventory/host_vars/db-qa01.iad2.fedoraproject.org create mode 100644 inventory/host_vars/db-qa02.iad2.fedoraproject.org create mode 100644 inventory/host_vars/db-qa03.iad2.fedoraproject.org create mode 100644 roles/mariadb_server/files/my.cnf.db-qa01.iad2.fedoraproject.org diff --git a/inventory/host_vars/db-qa01.iad2.fedoraproject.org b/inventory/host_vars/db-qa01.iad2.fedoraproject.org new file mode 100644 index 0000000000..ef991332a6 --- /dev/null +++ b/inventory/host_vars/db-qa01.iad2.fedoraproject.org @@ -0,0 +1,55 @@ +--- +nm: 255.255.255.0 +gw: 10.3.174.254 +dns: 10.3.163.33 +ks_url: http://10.3.163.35/repo/rhel/ks/kvm-rhel-8-iad2 +ks_repo: http://10.3.163.35/repo/rhel/RHEL8-x86_64/ +volgroup: /dev/vg_guests +eth0_ip: 10.3.174.53 +vmhost: qvmhost-x86-02.iad2.fedoraproject.org +datacenter: iad2 + +# This is a generic list, monitored by collectd +databases: +- postgres +- buildmaster +- execdb +- openqa +- resultsdb +- vault + +# This is a more strict list, to be made publicly available +dbs_to_backup: +- postgres +- buildmaster +- buildmaster_dev +- buildmaster_stg +- execdb +- execdb_stg +- execdb_dev +# these names are also stored as host vars 'openqa_dbname', +# make sure to keep in sync +- openqa +- openqa-stg +- resultsdb +- resultsdb_stg +- resultsdb_dev +- vault_dev + +mariadb_root_password: "{{ dbqa01_mysql_root_password }}" + +# These are normally group variables, but in this case db servers are often different +lvm_size: 300000 +mem_size: 16384 +num_cpus: 10 +tcp_ports: [ 5432, 443, 3306 ] +fas_client_groups: sysadmin-qa,sysadmin-noc,sysadmin-veteran +sudoers: "{{ private }}/files/sudo/qavirt-sudoers" + +# kernel SHMMAX value +kernel_shmmax: 68719476736 + +db_backup_dir: ['/backups'] +shared_buffers: "2GB" +effective_cache_size: "6GB" +host_backup_targets: ['/backups'] diff --git a/inventory/host_vars/db-qa02.iad2.fedoraproject.org b/inventory/host_vars/db-qa02.iad2.fedoraproject.org new file mode 100644 index 0000000000..2caf1937c8 --- /dev/null +++ b/inventory/host_vars/db-qa02.iad2.fedoraproject.org @@ -0,0 +1,38 @@ +--- +nm: 255.255.255.0 +gw: 10.3.174.254 +dns: 10.3.163.33 +ks_url: http://10.3.163.35/repo/rhel/ks/kvm-rhel-8-iad2 +ks_repo: http://10.3.163.35/repo/rhel/RHEL8-x86_64/ +volgroup: /dev/vg_guests +eth0_ip: 10.3.174.54 +vmhost: qvmhost-x86-02.iad2.fedoraproject.org +datacenter: iad2 + + + +# This is a generic list, monitored by collectd +databases: +- resultsdb + +# This is a more strict list, to be made publicly available +dbs_to_backup: +- postgres +- resultsdb + +# These are normally group variables, but in this case db servers are often different +lvm_size: 300000 +mem_size: 16384 +max_mem_size: "{{ mem_size * 2 }}" +num_cpus: 6 +tcp_ports: [ 5432, 443, 3306 ] +fas_client_groups: sysadmin-qa,sysadmin-noc,sysadmin-veteran +sudoers: "{{ private }}/files/sudo/qavirt-sudoers" + +# kernel SHMMAX value +kernel_shmmax: 68719476736 + +db_backup_dir: ['/backups'] +shared_buffers: "2GB" +effective_cache_size: "6GB" +host_backup_targets: ['/backups'] diff --git a/inventory/host_vars/db-qa03.iad2.fedoraproject.org b/inventory/host_vars/db-qa03.iad2.fedoraproject.org new file mode 100644 index 0000000000..48192325de --- /dev/null +++ b/inventory/host_vars/db-qa03.iad2.fedoraproject.org @@ -0,0 +1,35 @@ +--- +nm: 255.255.255.0 +gw: 10.3.174.254 +dns: 10.3.163.33 +ks_url: http://10.3.163.35/repo/rhel/ks/kvm-fedora-32-iad2 +ks_repo: http://10.3.163.35/pub/fedora/linux/releases/32/Server/x86_64/os/ +volgroup: /dev/vg_guests +eth0_ip: 10.3.174.55 +vmhost: qvmhost-x86-02.iad2.fedoraproject.org +datacenter: iad2 + +# This is a generic list, monitored by collectd +databases: +- postgres + +# This is a more strict list, to be made publicly available +dbs_to_backup: +- postgres + +# These are normally group variables, but in this case db servers are often different +lvm_size: 300000 +mem_size: 16384 +max_mem_size: "{{ mem_size * 2 }}" +num_cpus: 6 +tcp_ports: [ 5432, 443, 3306 ] +fas_client_groups: sysadmin-qa,sysadmin-noc,sysadmin-veteran +sudoers: "{{ private }}/files/sudo/qavirt-sudoers" + +# kernel SHMMAX value +kernel_shmmax: 68719476736 + +db_backup_dir: ['/backups'] +shared_buffers: "2GB" +effective_cache_size: "6GB" +host_backup_targets: ['/backups'] diff --git a/roles/fedmsg/base/templates/relay.py.j2 b/roles/fedmsg/base/templates/relay.py.j2 index f98b80a4b9..bd80bec580 100644 --- a/roles/fedmsg/base/templates/relay.py.j2 +++ b/roles/fedmsg/base/templates/relay.py.j2 @@ -48,6 +48,5 @@ config = dict( # Scripts from the vpn (people03, anitya) connect here "tcp://busgateway01.vpn.fedoraproject.org:3998", - {% endif %} ], ) diff --git a/roles/mariadb_server/files/my.cnf.db-qa01.iad2.fedoraproject.org b/roles/mariadb_server/files/my.cnf.db-qa01.iad2.fedoraproject.org new file mode 100644 index 0000000000..fd9d75a333 --- /dev/null +++ b/roles/mariadb_server/files/my.cnf.db-qa01.iad2.fedoraproject.org @@ -0,0 +1,156 @@ +# Example MariaDB config file for medium systems. +# +# This is for a system with little memory (32M - 64M) where MariaDB plays +# an important part, or systems up to 128M where MariaDB is used together with +# other programs (such as a web server) +# +# MariaDB programs look for option files in a set of +# locations which depend on the deployment platform. +# You can copy this option file to one of those +# locations. For information about these locations, do: +# 'my_print_defaults --help' and see what is printed under +# Default options are read from the following files in the given order: +# More information at: http://dev.mysql.com/doc/mysql/en/option-files.html +# +# In this file, you can use all long options that a program supports. +# If you want to know which options a program supports, run the program +# with the "--help" option. + +# The following options will be passed to all MariaDB clients +[client] +#password = your_password +port = 3306 +socket = /var/lib/mysql/mysql.sock + +# Here follows entries for some specific programs + +# The MariaDB server +[mysqld] +port = 3306 +socket = /var/lib/mysql/mysql.sock +skip-external-locking +key_buffer_size = 16M +max_allowed_packet = 1M +table_open_cache = 64 +sort_buffer_size = 512K +net_buffer_length = 8K +read_buffer_size = 256K +read_rnd_buffer_size = 512K +myisam_sort_buffer_size = 8M + +# setting STRICT_ALL_TABLES for phabricator +sql_mode=STRICT_ALL_TABLES + +# Point the following paths to different dedicated disks +#tmpdir = /tmp/ + +# Don't listen on a TCP/IP port at all. This can be a security enhancement, +# if all processes that need to connect to mysqld run on the same host. +# All interaction with mysqld must be made via Unix sockets or named pipes. +# Note that using this option without enabling named pipes on Windows +# (via the "enable-named-pipe" option) will render mysqld useless! +# +#skip-networking + +# Replication Master Server (default) +# binary logging is required for replication +log-bin=mysql-bin + +# binary logging format - mixed recommended +binlog_format=mixed + +# required unique id between 1 and 2^32 - 1 +# defaults to 1 if master-host is not set +# but will not function as a master if omitted +server-id = 1 + +# Replication Slave (comment out master section to use this) +# +# To configure this host as a replication slave, you can choose between +# two methods : +# +# 1) Use the CHANGE MASTER TO command (fully described in our manual) - +# the syntax is: +# +# CHANGE MASTER TO MASTER_HOST=, MASTER_PORT=, +# MASTER_USER=, MASTER_PASSWORD= ; +# +# where you replace , , by quoted strings and +# by the master's port number (3306 by default). +# +# Example: +# +# CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306, +# MASTER_USER='joe', MASTER_PASSWORD='secret'; +# +# OR +# +# 2) Set the variables below. However, in case you choose this method, then +# start replication for the first time (even unsuccessfully, for example +# if you mistyped the password in master-password and the slave fails to +# connect), the slave will create a master.info file, and any later +# change in this file to the variables' values below will be ignored and +# overridden by the content of the master.info file, unless you shutdown +# the slave server, delete master.info and restart the slaver server. +# For that reason, you may want to leave the lines below untouched +# (commented) and instead use CHANGE MASTER TO (see above) +# +# required unique id between 2 and 2^32 - 1 +# (and different from the master) +# defaults to 2 if master-host is set +# but will not function as a slave if omitted +#server-id = 2 +# +# The replication master for this slave - required +#master-host = +# +# The username the slave will use for authentication when connecting +# to the master - required +#master-user = +# +# The password the slave will authenticate with when connecting to +# the master - required +#master-password = +# +# The port the master is listening on. +# optional - defaults to 3306 +#master-port = +# +# binary logging - not required for slaves, but recommended +#log-bin=mysql-bin + +# Uncomment the following if you are using InnoDB tables +innodb_data_home_dir = /var/lib/mysql +innodb_data_file_path = ibdata1:10M:autoextend +innodb_log_group_home_dir = /var/lib/mysql +# You can set .._buffer_pool_size up to 50 - 80 % +# of RAM but beware of setting memory usage too high +innodb_buffer_pool_size = 1600M +innodb_additional_mem_pool_size = 200M +# Set .._log_file_size to 25 % of buffer pool size +innodb_log_file_size = 400M +innodb_log_buffer_size = 800M +innodb_flush_log_at_trx_commit = 1 +innodb_lock_wait_timeout = 50 + +# added as per reccommended by phab setup +ft_stopword_file=/usr/share/phabricator/resources/sql/stopwords.txt +ft_min_word_len=3 + +[mysqldump] +quick +max_allowed_packet = 16M + +[mysql] +no-auto-rehash +# Remove the next comment character if you are not familiar with SQL +#safe-updates + +[myisamchk] +key_buffer_size = 20M +sort_buffer_size = 20M +read_buffer = 2M +write_buffer = 2M + +[mysqlhotcopy] +interactive-timeout