У меня есть настройка сервера master и slave postgresql. Мне нужен мой сервер dbslave для просмотра моего сервера dbmaster. Итак, в моем pg_hba.conf
у меня есть имя переменной ruby private_ip
внутри узла.Разбор IP ADDR в атрибуте, который будет использоваться в конфигурации
Шаблон pg_hba.conf
выглядит следующим образом:
<% node["postgresql"]["pg_hba"].each do |hba| %>
<%= hba['type'] %> <%= hba['db'] %> <%= hba['user'] %> <%= hba['addr'] %> <%= hba['method'] %>
<% end %>
А в рецепте выглядеть следующим образом. Он получит значение каждого хэша для узла.
slave.rb
рецепт:
# hba
node.override["postgresql"]["pg_hba"] = [ { "type" => "host", "db" => "all", "user" =>"all", "addr" => "<%= private_ip %>", "method" => "trust"}
Чтобы получить адрес IP-я использую метод поиска.
dbserver = search(:node, "role:pg_server_master")
private_ip = "#{dbserver[0][:private_ip]}"
puts private_ip
Вопрос теперь - как я могу поставить значение результата поиска по node.override переменной <%= private_ip =>
.
Любые идеи, пожалуйста?
Im мой рецепт я использовал метод поиска от шеф-повара. Как и ниже: – colido