File tree Expand file tree Collapse file tree 3 files changed +6
-18
lines changed Expand file tree Collapse file tree 3 files changed +6
-18
lines changed Original file line number Diff line number Diff line change @@ -14,22 +14,12 @@ def local_routes
1414 routes
1515 end
1616
17- # Queries Serf members to find the master node's IP.
18- def find_master_ip_from_serf ( postgresql_hosts )
19- postgresql_master_node = postgresql_hosts . first
20- serf_output = `serf members`
17+ def find_master_ip
18+ postgres_ips = node [ 'redborder' ] [ 'cluster_info' ]
19+ . select { | m , _ | node [ 'redborder' ] [ 'managers_per_services' ] [ 'postgresql' ] . include? ( m ) }
20+ . map { | _ , v | v [ 'ipaddress_sync' ] }
2121
22- master_ip = serf_output . lines . find do |line |
23- next unless line . include? ( 'alive' )
24-
25- node_name = line . split [ 0 ]
26- node_name == postgresql_master_node
27- end
28-
29- return unless master_ip
30-
31- ip_part = master_ip . split [ 1 ]
32- ip_part &.split ( ':' ) &.first
22+ postgres_ips . first
3323 end
3424 end
3525end
Original file line number Diff line number Diff line change 66action :add do
77 begin
88 user = new_resource . user
9- postgresql_hosts = new_resource . postgresql_hosts
109 routes = local_routes
1110
1211 dnf_package 'postgresql' do
4241
4342 ruby_block 'sync_if_not_master' do
4443 block do
45- master_ip = find_master_ip_from_serf ( postgresql_hosts )
44+ master_ip = find_master_ip
4645 if master_ip
4746 local_ips = `hostname -I` . split
4847 unless local_ips . include? ( master_ip )
Original file line number Diff line number Diff line change 88attribute :postgresql_port , kind_of : Integer , default : 5432
99attribute :cdomain , kind_of : String , default : 'redborder.cluster'
1010attribute :ipaddress , kind_of : String , default : '127.0.0.1'
11- attribute :postgresql_hosts , kind_of : Array , default : [ ]
You can’t perform that action at this time.
0 commit comments