mirror of
https://github.com/outbackdingo/cozystack.git
synced 2026-01-27 10:18:39 +00:00
117 lines
5.7 KiB
Bash
Executable File
117 lines
5.7 KiB
Bash
Executable File
#https://github.com/deckhouse/deckhouse/blob/main/modules/340-monitoring-kubernetes-control-plane/monitoring/grafana-dashboards/kubernetes-cluster/control-plane-status.json
|
|
base=https://github.com/deckhouse/deckhouse/raw/main/
|
|
dir="dashboards"
|
|
mkdir -p "$dir"
|
|
|
|
|
|
|
|
add_ds_prometheus(){
|
|
jq '.templating.list |= [{"current":{"selected":false,"text":"default","value":"default"},"description":null,"error":null,"hide":0,"includeAll":false,"label":"datasource","multi":false,"name":"ds_prometheus","options":[],"query":"prometheus","refresh":1,"regex":"","skipUrlSync":false,"type":"datasource"}] + .'
|
|
}
|
|
|
|
indent() {
|
|
sed "s/^/$(head -c "$1" < /dev/zero | tr '\0' ' ')/"
|
|
}
|
|
|
|
fix_d8() {
|
|
sed \
|
|
-e 's|$__interval_sx3|$__rate_interval|g' \
|
|
-e 's|$__interval_sx4|$__rate_interval|g' \
|
|
-e 's|P0D6E4079E36703EB|$ds_prometheus|g'
|
|
}
|
|
|
|
swap_pvc_overview() {
|
|
jq '(.panels[] | select(.title=="PVC Detailed") | .panels[] | select(.title=="Overview")) as $a | del(.panels[] | select(.title=="PVC Detailed").panels[] | select(.title=="Overview")) | ( (.panels[] | select(.title=="PVC Detailed"))) as $b | del( .panels[] | select(.title=="PVC Detailed")) | (.panels[.panels|length]=($a|.gridPos.y=$b.gridPos.y)) | (.panels[.panels|length]=($b|.gridPos.y=$a.gridPos.y))'
|
|
}
|
|
|
|
deprectaed_remove_faq() {
|
|
jq 'del(.panels[] | select(.title == "How to find who sends requests to deprecated APIs"))| (.panels[]|select(.type == "text")).gridPos.x = 12 | (.panels[]|select(.type == "text")).gridPos.w = 12'
|
|
}
|
|
|
|
while read url others; do
|
|
name="$(basename "$url" .json | tr _ -)"
|
|
case $url in
|
|
modules/042-kube-dns/*)
|
|
ddir=control-plane
|
|
;;
|
|
modules/402-ingress-nginx/*)
|
|
ddir=ingress
|
|
;;
|
|
modules/340-monitoring-kubernetes/*)
|
|
ddir=main
|
|
;;
|
|
modules/340-monitoring-kubernetes-control-plane/*)
|
|
ddir=control-plane
|
|
;;
|
|
esac
|
|
file="$dir/$ddir/$name.json"
|
|
echo "$file"
|
|
mkdir -p "$dir/$ddir"
|
|
curl -sSL "$base$url" -o "$file.tmp"
|
|
|
|
case "$name" in
|
|
"deprecated-resources")
|
|
filters="add_ds_prometheus | deprectaed_remove_faq | fix_d8"
|
|
;;
|
|
*)
|
|
filters="fix_d8"
|
|
;;
|
|
esac
|
|
|
|
cat "$file.tmp" | eval "$filters" > "$file"
|
|
done <<\EOT
|
|
modules/042-kube-dns/monitoring/grafana-dashboards/kubernetes-cluster/dns/dns-coredns.json
|
|
modules/402-ingress-nginx/monitoring/grafana-dashboards/kubernetes-cluster/controllers.json
|
|
modules/402-ingress-nginx/monitoring/grafana-dashboards/kubernetes-cluster/controller-detail.json
|
|
modules/402-ingress-nginx/monitoring/grafana-dashboards/ingress-nginx/namespace/namespace_detail.json
|
|
modules/402-ingress-nginx/monitoring/grafana-dashboards/ingress-nginx/namespace/namespaces.json
|
|
modules/402-ingress-nginx/monitoring/grafana-dashboards/ingress-nginx/vhost/vhost_detail.json
|
|
modules/402-ingress-nginx/monitoring/grafana-dashboards/ingress-nginx/vhost/vhosts.json
|
|
modules/340-monitoring-kubernetes-control-plane/monitoring/grafana-dashboards/kubernetes-cluster/control-plane-status.json
|
|
modules/340-monitoring-kubernetes-control-plane/monitoring/grafana-dashboards/kubernetes-cluster/kube-etcd.json #TODO
|
|
modules/340-monitoring-kubernetes-control-plane/monitoring/grafana-dashboards/kubernetes-cluster/deprecated-resources.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//kubernetes-cluster/nodes/ntp.json #TODO
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//kubernetes-cluster/nodes/nodes.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//kubernetes-cluster/nodes/node.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//main/controller.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//main/pod.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//main/namespace/namespaces.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//main/namespace/namespace.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//main/capacity-planning/capacity-planning.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//flux/flux-control-plane.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//flux/flux-stats.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//kafka/strimzi-kafka.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//seaweedfs/seaweedfs.json
|
|
modules/340-monitoring-kubernetes/monitoring/grafana-dashboards//goldpinger/goldpinger.json
|
|
EOT
|
|
|
|
|
|
|
|
while read url others; do
|
|
name="$(basename "$url" .json | tr _ -)"
|
|
case $url in
|
|
*VictoriaMetrics*)
|
|
ddir=victoria-metrics
|
|
;;
|
|
*/dotdc/*)
|
|
ddir=dotdc
|
|
;;
|
|
esac
|
|
file="$dir/$ddir/$name.json"
|
|
|
|
mkdir -p "$dir/$ddir"
|
|
echo "$file"
|
|
curl -sSL "$url" -o "$file"
|
|
done <<\EOT
|
|
https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/victoriametrics.json
|
|
https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/vmagent.json
|
|
https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/victoriametrics-cluster.json
|
|
https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/vmalert.json
|
|
https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/operator.json
|
|
https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/backupmanager.json
|
|
https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-system-coredns.json
|
|
https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-global.json
|
|
https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-namespaces.json
|
|
https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-pods.json
|
|
EOT
|