@@ -120,10 +120,11 @@ def create_proposal
120120
121121 osd_nodes = select_nodes_for_role ( nodes , "ceph-osd" , "storage" )
122122 if osd_nodes . size < 2
123- osd_nodes_controller = select_nodes_for_role ( nodes , "ceph-osd" , "controller" )
124123 osd_nodes_all = select_nodes_for_role ( nodes , "ceph-osd" )
125124 # avoid controllers if possible (ceph should not be used with openstack roles)
126- osd_nodes_no_controller = osd_nodes_all - osd_nodes_controller
125+ osd_nodes_no_controller = osd_nodes_all . reject do |n |
126+ n . intended_role == "controller" || n . roles . include? ( "pacemaker-cluster-member" )
127+ end
127128 osd_nodes = [ osd_nodes , osd_nodes_no_controller , osd_nodes_all ] . flatten . uniq ( &:name )
128129 osd_nodes = osd_nodes . take ( 2 )
129130 end
@@ -132,14 +133,14 @@ def create_proposal
132133
133134 if mon_nodes . size < 3
134135 mon_nodes_more = select_nodes_for_role ( nodes , "ceph-mon" ) . reject do |n |
135- n . intended_role == "controller"
136+ n . intended_role == "controller" || n . roles . include? ( "pacemaker-cluster-member" )
136137 end
137138 mon_nodes = [ mon_nodes , mon_nodes_more ] . flatten . uniq ( &:name )
138139 end
139140 mon_nodes = mon_nodes . take ( mon_nodes . length > 2 ? 3 : 1 )
140141
141142 mds_node = select_nodes_for_role ( nodes , "ceph-mds" ) . reject do |n |
142- n . intended_role == "controller" or osd_nodes . include? n
143+ n . intended_role == "controller" or osd_nodes . include? n or n . roles . include? ( "pacemaker-cluster-member" )
143144 end . first
144145 if mds_node . nil?
145146 mds_node = select_nodes_for_role ( nodes , "ceph-mds" , "controller" ) . first
0 commit comments