diff --git a/README.md b/README.md index b8f69a8b71e4d9b7ec5189cf616479d89a1ac47f..5901d192bc9ac93d00e008e76d29d02d7d437358 100644 --- a/README.md +++ b/README.md @@ -359,6 +359,17 @@ kops: (import 'kube-prometheus/kube-prometheus-kops.libsonnet') ``` +kops with CoreDNS: + +If your kops cluster is using CoreDNS, there is an additional mixin to import. + +[embedmd]:# (examples/jsonnet-snippets/kops-coredns.jsonnet) +```jsonnet +(import 'kube-prometheus/kube-prometheus.libsonnet') + +(import 'kube-prometheus/kube-prometheus-kops.libsonnet') + +(import 'kube-prometheus/kube-prometheus-kops-coredns.libsonnet') +``` + kubespray: [embedmd]:# (examples/jsonnet-snippets/kubespray.jsonnet) diff --git a/examples/jsonnet-snippets/kops-coredns.jsonnet b/examples/jsonnet-snippets/kops-coredns.jsonnet new file mode 100644 index 0000000000000000000000000000000000000000..4988ef0cebfcd75f06fd5538364353c6e56383fe --- /dev/null +++ b/examples/jsonnet-snippets/kops-coredns.jsonnet @@ -0,0 +1,3 @@ +(import 'kube-prometheus/kube-prometheus.libsonnet') + +(import 'kube-prometheus/kube-prometheus-kops.libsonnet') + +(import 'kube-prometheus/kube-prometheus-kops-coredns.libsonnet') diff --git a/jsonnet/kube-prometheus/kube-prometheus-kops-coredns.libsonnet b/jsonnet/kube-prometheus/kube-prometheus-kops-coredns.libsonnet new file mode 100644 index 0000000000000000000000000000000000000000..4c61087263dc4ce5a6c7485d821b8c1d0428baa2 --- /dev/null +++ b/jsonnet/kube-prometheus/kube-prometheus-kops-coredns.libsonnet @@ -0,0 +1,13 @@ +local k = import 'ksonnet/ksonnet.beta.3/k.libsonnet'; +local service = k.core.v1.service; +local servicePort = k.core.v1.service.mixin.spec.portsType; + +{ + prometheus+:: { + kubeDnsPrometheusDiscoveryService: + service.new('kube-dns-prometheus-discovery', { 'k8s-app': 'kube-dns' }, [servicePort.newNamed('metrics', 9153, 9153)]) + + service.mixin.metadata.withNamespace('kube-system') + + service.mixin.metadata.withLabels({ 'k8s-app': 'kube-dns' }) + + service.mixin.spec.withClusterIp('None'), + }, +}