kube-prometheus: Add etcd dashboard

This commit is contained in:
Frederic Branczyk
2018-01-10 12:27:14 +01:00
parent 68517f63b5
commit 5392443721
8 changed files with 2368 additions and 10 deletions

View File

@@ -1 +0,0 @@
*-dashboard.json

2
assets/grafana/generated/.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
*-dashboard.json
*-datasource.json

View File

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,6 @@
#!/bin/bash
set -e
set +x
cat <<-EOF
apiVersion: v1
@@ -9,23 +10,42 @@ metadata:
data:
EOF
for f in assets/grafana/generated/*-dashboard.json
do
rm -rf $f
done
for f in assets/grafana/generated/*-datasource.json
do
rm -rf $f
done
virtualenv -p python3 .env
source .env/bin/activate
pip install -Ur requirements.txt
for f in assets/grafana/*.dashboard.py
do
JSON_FILENAME="$(pwd)/${f%%.*}-dashboard.json"
basefilename=$(basename $f)
JSON_FILENAME="assets/grafana/generated/${basefilename%%.*}-dashboard.json"
generate-dashboard $f -o $JSON_FILENAME 2>&1 > /dev/null
done
for f in assets/grafana/*-dashboard.json
cp assets/grafana/raw-json-dashboards/*-dashboard.json assets/grafana/generated/
for f in assets/grafana/generated/*-dashboard.json
do
echo " $(basename $f): |+"
hack/scripts/wrap-dashboard.sh $f | sed "s/^/ /g"
basefilename=$(basename $f)
echo " $basefilename: |+"
if [ "$basefilename" -eq "etcd-dashboard.json" ]; then
hack/scripts/wrap-dashboard.sh $f prometheus-etcd | sed "s/^/ /g"
else
hack/scripts/wrap-dashboard.sh $f prometheus-k8s | sed "s/^/ /g"
fi
done
for f in assets/grafana/*-datasource.json
do
cp $f assets/grafana/generated/
echo " $(basename $f): |+"
cat $f | sed "s/^/ /g"
done

View File

@@ -1,5 +1,6 @@
#!/bin/bash
set -e
set +x
# Generate Alert Rules ConfigMap
hack/scripts/generate-rules-configmap.sh > manifests/prometheus/prometheus-k8s-rules.yaml
@@ -14,7 +15,7 @@ hack/scripts/generate-dashboards-configmap.sh > manifests/grafana/grafana-dashbo
# grafana deployment output file: manifests/grafana/grafana-deployment.yaml
test -f manifests/grafana/grafana-dashboards.yaml && rm -f manifests/grafana/grafana-dashboards.yaml
test -f manifests/grafana/grafana-deployment.yaml && rm -f manifests/grafana/grafana-deployment.yaml
hack/grafana-dashboards-configmap-generator/bin/grafana_dashboards_generate.sh -s 240000 -i assets/grafana -o manifests/grafana/grafana-dashboards.yaml -g manifests/grafana/grafana-deployment.yaml
hack/grafana-dashboards-configmap-generator/bin/grafana_dashboards_generate.sh -s 240000 -i assets/grafana/generated -o manifests/grafana/grafana-dashboards.yaml -g manifests/grafana/grafana-deployment.yaml
# Generate Grafana Credentials Secret
hack/scripts/generate-grafana-credentials-secret.sh admin admin > manifests/grafana/grafana-credentials.yaml

View File

@@ -15,12 +15,18 @@
# * Apply new configmap:
# kubectl -n monitoring apply -f manifests/grafana/grafana-cm.yaml
if [ "$#" -ne 1 ]; then
echo "Usage: $0 path-to-dashboard.json"
if [ "$#" -ne 2 ]; then
echo "Usage: $0 path-to-dashboard.json grafana-prometheus-datasource-name"
exit 1
fi
dashboardjson=$1
datasource_name=$2
inputname="DS_PROMETHEUS"
if [ "$datasource_name" -eq "prometheus-etcd" ]; then
$inputname="DS_PROMETHEUS-ETCD"
fi
cat <<EOF
{
@@ -33,10 +39,10 @@ cat <<EOF
,
"inputs": [
{
"name": "DS_PROMETHEUS",
"name": "$inputname",
"pluginId": "prometheus",
"type": "datasource",
"value": "prometheus"
"value": "$datasource_name"
}
],
"overwrite": true

File diff suppressed because it is too large Load Diff