diff --git a/hieradata/roles/infra/sql/galera.yaml b/hieradata/roles/infra/sql/galera.yaml index 28f9034..64df7d9 100644 --- a/hieradata/roles/infra/sql/galera.yaml +++ b/hieradata/roles/infra/sql/galera.yaml @@ -6,3 +6,22 @@ profiles::sql::galera_member::galera_members_role: roles::infra::sql::galera profiles::sql::galera_member::datadir: /data/mariadb profiles::sql::galera_member::innodb_file_per_table: 1 profiles::sql::galera_member::package_name: mariadb-galera-server + +consul::services: + puppet: + service_name: "mariadb-%{lookup('profiles::sql::galera_member::cluster_name')}" + tags: + - 'database' + - 'mariadb' + address: "%{facts.networking.ip}" + port: 3306 + checks: + - id: 'mariadb_tcp_check' + name: 'MariaDB TCP Check' + tcp: "%{facts.networking.ip}:3306" + interval: '10s' + timeout: '1s' +profiles::consul::client::node_rules: + - resource: service + segment: "mariadb-%{lookup('profiles::sql::galera_member::cluster_name')}" + disposition: write diff --git a/site/profiles/manifests/sql/galera_member.pp b/site/profiles/manifests/sql/galera_member.pp index a55d5fd..24fab57 100644 --- a/site/profiles/manifests/sql/galera_member.pp +++ b/site/profiles/manifests/sql/galera_member.pp @@ -103,7 +103,8 @@ class profiles::sql::galera_member ( 'binlog_format' => 'ROW', 'default-storage-engine' => 'innodb', 'query_cache_size' => '0', - 'query_cache_type' => '0' + 'query_cache_type' => '0', + 'bind-address' => $local_ip, } } $default_override_options_galera = {