57 lines
1.2 KiB
Plaintext
57 lines
1.2 KiB
Plaintext
local service(name, namespace, labels, selector, ports) = {
|
|
apiVersion: 'v1',
|
|
kind: 'Service',
|
|
metadata: {
|
|
name: name,
|
|
namespace: namespace,
|
|
labels: labels,
|
|
},
|
|
spec: {
|
|
ports+: ports,
|
|
selector: selector,
|
|
clusterIP: 'None',
|
|
},
|
|
};
|
|
|
|
{
|
|
|
|
prometheus+: {
|
|
kubeControllerManagerPrometheusDiscoveryService: service(
|
|
'kube-controller-manager-prometheus-discovery',
|
|
'kube-system',
|
|
{ 'k8s-app': 'kube-controller-manager' },
|
|
{ 'k8s-app': 'kube-controller-manager' },
|
|
[{ name: 'https-metrics', port: 10257, targetPort: 10257 }]
|
|
),
|
|
|
|
kubeSchedulerPrometheusDiscoveryService: service(
|
|
'kube-scheduler-prometheus-discovery',
|
|
'kube-system',
|
|
{ 'k8s-app': 'kube-scheduler' },
|
|
{ 'k8s-app': 'kube-scheduler' },
|
|
[{ name: 'https-metrics', port: 10259, targetPort: 10259 }],
|
|
),
|
|
|
|
serviceMonitorKubeScheduler+: {
|
|
spec+: {
|
|
selector+: {
|
|
matchLabels: {
|
|
'k8s-app': 'kube-scheduler',
|
|
},
|
|
},
|
|
},
|
|
},
|
|
|
|
serviceMonitorKubeControllerManager+: {
|
|
spec+: {
|
|
selector+: {
|
|
matchLabels: {
|
|
'k8s-app': 'kube-controller-manager',
|
|
},
|
|
},
|
|
},
|
|
},
|
|
|
|
},
|
|
}
|