Add all nodes with base role as node exporter targets
This commit is contained in:
@@ -13,7 +13,7 @@ node.default["kosmos_prometheus"]["global"] = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
node.default["kosmos_prometheus"]["jobs"] = {
|
node.default["kosmos_prometheus"]["jobs"] = {
|
||||||
"prometheus" => { "targets" => ["localhost:9090"] }
|
"prometheus" => { "targets" => ["localhost:9090"] },
|
||||||
}
|
}
|
||||||
|
|
||||||
node.default["kosmos_prometheus"]["rule_files"] = []
|
node.default["kosmos_prometheus"]["rule_files"] = []
|
||||||
|
|||||||
@@ -62,6 +62,15 @@ file "/usr/local/bin/prometheus" do
|
|||||||
notifies :restart, "service[prometheus]", :delayed
|
notifies :restart, "service[prometheus]", :delayed
|
||||||
end
|
end
|
||||||
|
|
||||||
|
node_targets = search(:node, "role:base").map { |n| n["knife_zero"]["host"] }
|
||||||
|
.compact
|
||||||
|
.sort_by { |ip| ip.split(".").map(&:to_i) }
|
||||||
|
.map { |ip| "#{ip}:9100" }
|
||||||
|
|
||||||
|
jobs = node["kosmos_prometheus"]["jobs"].merge(
|
||||||
|
"node" => { "targets" => node_targets }
|
||||||
|
)
|
||||||
|
|
||||||
template "/etc/prometheus/prometheus.yml" do
|
template "/etc/prometheus/prometheus.yml" do
|
||||||
source "prometheus.yml.erb"
|
source "prometheus.yml.erb"
|
||||||
owner "root"
|
owner "root"
|
||||||
@@ -69,7 +78,7 @@ template "/etc/prometheus/prometheus.yml" do
|
|||||||
mode "0644"
|
mode "0644"
|
||||||
variables(
|
variables(
|
||||||
global_config: node["kosmos_prometheus"]["global"],
|
global_config: node["kosmos_prometheus"]["global"],
|
||||||
jobs: node["kosmos_prometheus"]["jobs"],
|
jobs: jobs,
|
||||||
rule_files: node["kosmos_prometheus"]["rule_files"]
|
rule_files: node["kosmos_prometheus"]["rule_files"]
|
||||||
)
|
)
|
||||||
notifies :reload, "service[prometheus]", :delayed
|
notifies :reload, "service[prometheus]", :delayed
|
||||||
|
|||||||
Reference in New Issue
Block a user