mirror of
https://github.com/carlosedp/cluster-monitoring.git
synced 2024-11-20 19:07:17 +01:00
Added nginx module
This commit is contained in:
parent
e7c456f380
commit
f7f93e63ea
1464
grafana-dashboards/nginx-dashboard.json
Normal file
1464
grafana-dashboards/nginx-dashboard.json
Normal file
File diff suppressed because it is too large
Load Diff
46
modules/nginx.jsonnet
Normal file
46
modules/nginx.jsonnet
Normal file
@ -0,0 +1,46 @@
|
||||
local utils = import '../utils.libsonnet';
|
||||
local k = import 'ksonnet/ksonnet.beta.4/k.libsonnet';
|
||||
|
||||
{
|
||||
_config+:: {
|
||||
namespace: 'monitoring',
|
||||
// Add custom dashboards
|
||||
grafanaDashboards+:: {
|
||||
'nginx-dashboard.json': (import '../grafana-dashboards/nginx-dashboard.json'),
|
||||
},
|
||||
},
|
||||
|
||||
nginxExporter+:: {
|
||||
serviceMonitor:
|
||||
utils.newServiceMonitor('nginx', $._config.namespace, { 'app.kubernetes.io/name': 'ingress-nginx' }, 'ingress-nginx', 'prometheus', 'http'),
|
||||
|
||||
service:
|
||||
local service = k.core.v1.service;
|
||||
local servicePort = k.core.v1.service.mixin.spec.portsType;
|
||||
local nginxPort = servicePort.newNamed('prometheus', 10254, 10254);
|
||||
|
||||
service.new('nginx-ingress-metrics', {'app.kubernetes.io/name': 'ingress-nginx'}, nginxPort) +
|
||||
service.mixin.metadata.withNamespace('nginx-ingress') +
|
||||
service.mixin.metadata.withLabels({'app.kubernetes.io/name': 'ingress-nginx'}) +
|
||||
service.mixin.spec.withClusterIp('None'),
|
||||
|
||||
clusterRole:
|
||||
utils.newClusterRole('nginx-exporter', [
|
||||
{
|
||||
apis: [''],
|
||||
res: ['services', 'endpoints', 'pods'],
|
||||
verbs: ['get', 'list', 'watch'],
|
||||
},
|
||||
], null),
|
||||
|
||||
|
||||
serviceAccount:
|
||||
utils.newServiceAccount('nginx-exporter', $._config.namespace, null),
|
||||
|
||||
|
||||
// Creates a ClusterRoleBinding between a `clusterRole` and a `serviceAccount` on `serviceAccountNamespace`
|
||||
clusterRoleBinding:
|
||||
utils.newClusterRoleBinding('nginx-exporter', 'nginx-exporter', $._config.namespace, 'nginx-exporter', null),
|
||||
|
||||
},
|
||||
}
|
@ -25,6 +25,11 @@
|
||||
enabled: false,
|
||||
file: import 'modules/metallb.jsonnet',
|
||||
},
|
||||
{
|
||||
name: 'nginxExporter',
|
||||
enabled: true,
|
||||
file: import 'modules/nginx.jsonnet',
|
||||
},
|
||||
{
|
||||
name: 'traefikExporter',
|
||||
enabled: false,
|
||||
|
Loading…
Reference in New Issue
Block a user