2020-02-16 20:54:18 +00:00
|
|
|
local k = import 'ksonnet/ksonnet.beta.4/k.libsonnet';
|
|
|
|
local endpoints = k.core.v1.endpoints;
|
|
|
|
local endpointSubset = endpoints.subsetsType;
|
|
|
|
local endpointPort = endpointSubset.portsType;
|
2020-02-17 19:31:57 +00:00
|
|
|
local service = k.core.v1.service;
|
|
|
|
local servicePort = k.core.v1.service.mixin.spec.portsType;
|
|
|
|
local masterIP = '185.95.218.11';
|
2020-02-16 20:54:18 +00:00
|
|
|
|
|
|
|
{
|
|
|
|
prometheus+:: {
|
2020-02-17 19:31:57 +00:00
|
|
|
kubeSchedulerPrometheusDiscoveryService:
|
|
|
|
local p = servicePort.newNamed('http-metrics', 10251, 10251);
|
|
|
|
service.new('kube-scheduler', { 'k8s-app': 'kube-scheduler' }, p) +
|
|
|
|
service.mixin.metadata.withNamespace('kube-system') +
|
2020-02-25 20:49:33 +00:00
|
|
|
service.mixin.metadata.withLabels({ 'k8s-app': 'kube-scheduler' }) +
|
|
|
|
service.mixin.spec.withClusterIp('None') +
|
2020-02-25 21:30:39 +00:00
|
|
|
service.mixin.spec.withSelector({}),
|
2020-02-16 20:54:18 +00:00
|
|
|
kubeSchedulerPrometheusDiscoveryEndpoints:
|
|
|
|
local port = endpointPort.new() +
|
|
|
|
endpointPort.withName('http-metrics') +
|
|
|
|
endpointPort.withPort(10251) +
|
|
|
|
endpointPort.withProtocol('TCP');
|
|
|
|
local subset = endpointSubset.new() +
|
|
|
|
endpointSubset.withAddresses([
|
2020-02-17 19:31:57 +00:00
|
|
|
{ ip: masterIP },
|
2020-02-16 20:54:18 +00:00
|
|
|
]) +
|
|
|
|
endpointSubset.withPorts(port);
|
|
|
|
|
|
|
|
endpoints.new() +
|
2020-02-17 19:31:57 +00:00
|
|
|
endpoints.mixin.metadata.withName('kube-scheduler') +
|
2020-02-16 20:54:18 +00:00
|
|
|
endpoints.mixin.metadata.withNamespace('kube-system') +
|
|
|
|
endpoints.mixin.metadata.withLabels({ 'k8s-app': 'kube-scheduler' }) +
|
|
|
|
endpoints.withSubsets(subset),
|
2020-02-17 19:31:57 +00:00
|
|
|
kubeControllerManagerPrometheusDiscoveryService:
|
|
|
|
local p = servicePort.newNamed('http-metrics', 10252, 10252);
|
|
|
|
service.new('kube-controller-manager', { 'k8s-app': 'kube-controller-manager' }, p) +
|
|
|
|
service.mixin.metadata.withNamespace('kube-system') +
|
2020-02-25 20:49:33 +00:00
|
|
|
service.mixin.metadata.withLabels({ 'k8s-app': 'kube-controller-manager' }) +
|
|
|
|
service.mixin.spec.withClusterIp('None') +
|
2020-02-25 21:30:39 +00:00
|
|
|
service.mixin.spec.withSelector({}),
|
2020-02-16 20:54:18 +00:00
|
|
|
kubeControllerManagerPrometheusDiscoveryEndpoints:
|
|
|
|
local port = endpointPort.new() +
|
|
|
|
endpointPort.withName('http-metrics') +
|
|
|
|
endpointPort.withPort(10252) +
|
|
|
|
endpointPort.withProtocol('TCP');
|
|
|
|
local subset = endpointSubset.new() +
|
|
|
|
endpointSubset.withAddresses([
|
2020-02-17 19:31:57 +00:00
|
|
|
{ ip: masterIP },
|
2020-02-16 20:54:18 +00:00
|
|
|
]) +
|
|
|
|
endpointSubset.withPorts(port);
|
|
|
|
|
|
|
|
endpoints.new() +
|
2020-02-17 19:31:57 +00:00
|
|
|
endpoints.mixin.metadata.withName('kube-controller-manager') +
|
2020-02-16 20:54:18 +00:00
|
|
|
endpoints.mixin.metadata.withNamespace('kube-system') +
|
|
|
|
endpoints.mixin.metadata.withLabels({ 'k8s-app': 'kube-controller-manager' }) +
|
|
|
|
endpoints.withSubsets(subset),
|
2020-08-24 18:18:04 +00:00
|
|
|
serviceMonitorKubeScheduler+:
|
|
|
|
{
|
|
|
|
spec+: {
|
|
|
|
endpoints: [
|
|
|
|
{
|
|
|
|
port: 'http-metrics',
|
|
|
|
interval: '30s',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
|
|
|
},
|
|
|
|
serviceMonitorKubeControllerManager+:
|
|
|
|
{
|
|
|
|
spec+: {
|
|
|
|
endpoints: [
|
|
|
|
{
|
|
|
|
port: 'http-metrics',
|
|
|
|
interval: '30s',
|
2021-05-01 14:24:35 +00:00
|
|
|
metricRelabelings: (import 'kube-prometheus/addons/dropping-deprecated-metrics-relabelings.libsonnet') + [
|
2020-08-24 18:18:04 +00:00
|
|
|
{
|
|
|
|
sourceLabels: ['__name__'],
|
|
|
|
regex: 'etcd_(debugging|disk|request|server).*',
|
|
|
|
action: 'drop',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
|
|
|
},
|
2020-02-16 20:54:18 +00:00
|
|
|
},
|
|
|
|
}
|