diff --git a/assets/prometheus-k8s/kube-controllers-service.yaml b/assets/prometheus-k8s/kube-controllers-service.yaml deleted file mode 100644 index 0060f0bb72..0000000000 --- a/assets/prometheus-k8s/kube-controllers-service.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - k8s-app: kube-controllers - name: kube-controllers - namespace: kube-system -spec: - clusterIP: None - ports: - - name: http-metrics - port: 8444 - targetPort: 8444 - selector: - openshift.io/component: controllers - openshift.io/control-plane: "true" diff --git a/assets/prometheus-k8s/role-binding-specific-namespaces.yaml b/assets/prometheus-k8s/role-binding-specific-namespaces.yaml index 3d11722705..286590b1fb 100644 --- a/assets/prometheus-k8s/role-binding-specific-namespaces.yaml +++ b/assets/prometheus-k8s/role-binding-specific-namespaces.yaml @@ -65,4 +65,30 @@ items: - kind: ServiceAccount name: prometheus-k8s namespace: openshift-monitoring +- apiVersion: rbac.authorization.k8s.io/v1 + kind: RoleBinding + metadata: + name: prometheus-k8s + namespace: openshift-kube-scheduler + roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: prometheus-k8s + subjects: + - kind: ServiceAccount + name: prometheus-k8s + namespace: openshift-monitoring +- apiVersion: rbac.authorization.k8s.io/v1 + kind: RoleBinding + metadata: + name: prometheus-k8s + namespace: openshift-kube-controller-manager + roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: prometheus-k8s + subjects: + - kind: ServiceAccount + name: prometheus-k8s + namespace: openshift-monitoring kind: RoleBindingList diff --git a/assets/prometheus-k8s/role-specific-namespaces.yaml b/assets/prometheus-k8s/role-specific-namespaces.yaml index 8f18a3cfa4..7976f1f415 100644 --- a/assets/prometheus-k8s/role-specific-namespaces.yaml +++ b/assets/prometheus-k8s/role-specific-namespaces.yaml @@ -85,4 +85,38 @@ items: - get - list - watch +- apiVersion: rbac.authorization.k8s.io/v1 + kind: Role + metadata: + name: prometheus-k8s + namespace: openshift-kube-scheduler + rules: + - apiGroups: + - "" + resources: + - nodes + - services + - endpoints + - pods + verbs: + - get + - list + - watch +- apiVersion: rbac.authorization.k8s.io/v1 + kind: Role + metadata: + name: prometheus-k8s + namespace: openshift-kube-controller-manager + rules: + - apiGroups: + - "" + resources: + - nodes + - services + - endpoints + - pods + verbs: + - get + - list + - watch kind: RoleList diff --git a/assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml b/assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml new file mode 100644 index 0000000000..58c7bddbc0 --- /dev/null +++ b/assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml @@ -0,0 +1,28 @@ +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + labels: + k8s-app: kube-controller-manager + name: kube-controller-manager + namespace: openshift-monitoring +spec: + endpoints: + - interval: 30s + metricRelabelings: + - action: drop + regex: etcd_(debugging|disk|request|server).* + sourceLabels: + - __name__ + port: https + relabelings: + - action: replace + regex: (.+)(?::\d+) + replacement: $1:10252 + sourceLabels: + - __address__ + targetLabel: __address__ + jobLabel: null + namespaceSelector: + matchNames: + - openshift-kube-controller-manager + selector: {} diff --git a/assets/prometheus-k8s/service-monitor-kube-controllers.yaml b/assets/prometheus-k8s/service-monitor-kube-controllers.yaml deleted file mode 100644 index 78590dda58..0000000000 --- a/assets/prometheus-k8s/service-monitor-kube-controllers.yaml +++ /dev/null @@ -1,21 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - labels: - k8s-app: kube-controllers - name: kube-controllers -spec: - endpoints: - - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token - interval: 30s - port: http-metrics - scheme: https - tlsConfig: - caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt - jobLabel: k8s-app - namespaceSelector: - matchNames: - - kube-system - selector: - matchLabels: - k8s-app: kube-controllers diff --git a/assets/prometheus-k8s/service-monitor-kube-scheduler.yaml b/assets/prometheus-k8s/service-monitor-kube-scheduler.yaml new file mode 100644 index 0000000000..4d8ce03cb2 --- /dev/null +++ b/assets/prometheus-k8s/service-monitor-kube-scheduler.yaml @@ -0,0 +1,23 @@ +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + labels: + k8s-app: kube-scheduler + name: kube-scheduler + namespace: openshift-monitoring +spec: + endpoints: + - interval: 30s + port: https + relabelings: + - action: replace + regex: (.+)(?::\d+) + replacement: $1:10251 + sourceLabels: + - __address__ + targetLabel: __address__ + jobLabel: null + namespaceSelector: + matchNames: + - openshift-kube-scheduler + selector: {} diff --git a/hack/build-jsonnet.sh b/hack/build-jsonnet.sh index 1443150abb..c1de5b662b 100755 --- a/hack/build-jsonnet.sh +++ b/hack/build-jsonnet.sh @@ -39,16 +39,10 @@ done # # * CoreDNS is not used in OpenShift # -# * kube-controller-manager and kube-scheduler don't exist in OpenShift, but -# instead are grouped into the kube-scheduler component, which is separately -# handled in `jsonnet/prometheus.jsonnet`. rm -rf "assets/prometheus-operator/0alertmanager-custom-resource-definition.yaml" rm -rf "assets/prometheus-operator/0prometheus-custom-resource-definition.yaml" rm -rf "assets/prometheus-operator/0prometheusrule-custom-resource-definition.yaml" rm -rf "assets/prometheus-operator/0servicemonitor-custom-resource-definition.yaml" rm -rf "assets/prometheus-k8s/service-monitor-core-d-n-s.yaml" -rm -rf "assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml" -rm -rf "assets/prometheus-k8s/service-monitor-kube-scheduler.yaml" -rm -rf "assets/prometheus-k8s/service-monitor-kube-scheduler.yaml" diff --git a/jsonnet/main.jsonnet b/jsonnet/main.jsonnet index 33af35f03f..42f25e7263 100644 --- a/jsonnet/main.jsonnet +++ b/jsonnet/main.jsonnet @@ -49,6 +49,8 @@ local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + namespaces+: [ 'openshift-cluster-version', 'openshift-apiserver', + 'openshift-kube-scheduler', + 'openshift-kube-controller-manager', ], }, }, diff --git a/jsonnet/prometheus.jsonnet b/jsonnet/prometheus.jsonnet index 20b97a84a8..ce140b5629 100644 --- a/jsonnet/prometheus.jsonnet +++ b/jsonnet/prometheus.jsonnet @@ -104,59 +104,8 @@ local namespacesRole = clusterRole+: clusterRole.withRulesMixin([authenticationRole, authorizationRole, namespacesRole]), - // OpenShift currently has the kube-controller-manager and - // kube-scheduler combined in one component called the - // kube-controllers. This Service and ServiceMonitor enable scraping - // its metrics. - - kubeControllersService: - local service = k.core.v1.service; - local servicePort = k.core.v1.service.mixin.spec.portsType; - - local kubeControllersPort = servicePort.newNamed('http-metrics', 8444, 8444); - - service.new('kube-controllers', { - 'openshift.io/component': 'controllers', - 'openshift.io/control-plane': 'true', - }, kubeControllersPort) + - service.mixin.metadata.withNamespace('kube-system') + - service.mixin.metadata.withLabels({ 'k8s-app': 'kube-controllers' }) + - service.mixin.spec.withClusterIp('None'), - - serviceMonitorKubeControllers: - { - apiVersion: 'monitoring.coreos.com/v1', - kind: 'ServiceMonitor', - metadata: { - labels: { - 'k8s-app': 'kube-controllers', - }, - name: 'kube-controllers', - }, - spec: { - endpoints: [ - { - bearerTokenFile: '/var/run/secrets/kubernetes.io/serviceaccount/token', - interval: '30s', - port: 'http-metrics', - scheme: 'https', - tlsConfig: { - caFile: '/var/run/secrets/kubernetes.io/serviceaccount/ca.crt', - }, - }, - ], - jobLabel: 'k8s-app', - namespaceSelector: { - matchNames: ['kube-system'], - }, - selector: { - matchLabels: { - 'k8s-app': 'kube-controllers', - }, - }, - }, - }, - + // OpenShift has the kube-apiserver as well as an aggregated API called + // OpenShift apiserver, containing all the extended APIs. serviceMonitorClusterVersionOperator: { apiVersion: 'monitoring.coreos.com/v1', @@ -331,6 +280,92 @@ local namespacesRole = }, }, + // In OpenShift the kube-scheduler runs in its own namespace, and has a TLS + // cert from the serving certs controller. + + serviceMonitorKubeScheduler+: + { + spec+: { + jobLabel: null, + namespaceSelector: { + matchNames: [ + 'openshift-kube-scheduler', + ], + }, + selector: {}, + endpoints: + std.map( + function(a) a { + + //TODO(brancz): Once OpenShift is based on Kubernetes 1.12 the + //scheduler will serve metrics on a secure port, then the below + //commented out code is what we will need without the relabel + //configs. + + //bearerTokenFile: '/var/run/secrets/kubernetes.io/serviceaccount/token', + interval: '30s', + port: 'https', + //scheme: 'https', + //tlsConfig: { + // caFile: '/etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt', + // serverName: 'scheduler.openshift-kube-scheduler.svc', + //}, + relabelings: [{ + sourceLabels: ['__address__'], + action: 'replace', + targetLabel: '__address__', + regex: '(.+)(?::\\d+)', + replacement: '$1:10251', + }], + }, + super.endpoints, + ), + }, + }, + + // In OpenShift the kube-controller-manager runs in its own namespace, and + // has a TLS cert from the serving certs controller. + + serviceMonitorKubeControllerManager+: + { + spec+: { + jobLabel: null, + namespaceSelector: { + matchNames: [ + 'openshift-kube-controller-manager', + ], + }, + selector: {}, + endpoints: + std.map( + function(a) a { + + //TODO(brancz): Once OpenShift is based on Kubernetes 1.12 the + //controller-manager will serve metrics on a secure port, then + //the below commented out code is what we will need without the + //relabel configs. + + //bearerTokenFile: '/var/run/secrets/kubernetes.io/serviceaccount/token', + interval: '30s', + port: 'https', + //scheme: 'https', + //tlsConfig: { + // caFile: '/etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt', + // serverName: 'controller-manager.openshift-kube-controller-manager.svc', + //}, + relabelings: [{ + sourceLabels: ['__address__'], + action: 'replace', + targetLabel: '__address__', + regex: '(.+)(?::\\d+)', + replacement: '$1:10252', + }], + }, + super.endpoints, + ), + }, + }, + // These patches inject the oauth proxy as a sidecar and configures it with // TLS. Additionally as the Alertmanager is protected with TLS, authN and // authZ it requires some additonal configuration. diff --git a/pkg/manifests/bindata.go b/pkg/manifests/bindata.go index 153bc6bafd..9865b9eb97 100644 --- a/pkg/manifests/bindata.go +++ b/pkg/manifests/bindata.go @@ -54,7 +54,6 @@ // assets/prometheus-k8s/cluster-role-binding.yaml // assets/prometheus-k8s/cluster-role.yaml // assets/prometheus-k8s/htpasswd-secret.yaml -// assets/prometheus-k8s/kube-controllers-service.yaml // assets/prometheus-k8s/kube-rbac-proxy-secret.yaml // assets/prometheus-k8s/prometheus.yaml // assets/prometheus-k8s/proxy-secret.yaml @@ -68,7 +67,8 @@ // assets/prometheus-k8s/service-monitor-apiserver.yaml // assets/prometheus-k8s/service-monitor-cluster-version-operator.yaml // assets/prometheus-k8s/service-monitor-etcd.yaml -// assets/prometheus-k8s/service-monitor-kube-controllers.yaml +// assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml +// assets/prometheus-k8s/service-monitor-kube-scheduler.yaml // assets/prometheus-k8s/service-monitor-kubelet.yaml // assets/prometheus-k8s/service-monitor-open-shift-apiserver.yaml // assets/prometheus-k8s/service-monitor.yaml @@ -1236,26 +1236,6 @@ func assetsPrometheusK8sHtpasswdSecretYaml() (*asset, error) { return a, nil } -var _assetsPrometheusK8sKubeControllersServiceYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\x8e\x41\x4a\x04\x41\x0c\x45\xf7\x75\x8a\x30\xfb\x56\x84\x5e\x0c\x75\x03\x37\x32\x20\xb8\xcf\xd4\x7c\x9d\xa2\xab\x2a\x21\x49\x0f\x78\x7b\xe9\x56\x41\x11\x77\x49\xde\xe7\xe7\xb1\xd6\x17\x98\x57\x19\x99\x6e\x0f\x69\xa9\xe3\x92\xe9\x19\x76\xab\x05\xa9\x23\xf8\xc2\xc1\x39\x11\x35\x3e\xa3\xf9\x36\x11\x2d\x47\x9f\x58\x35\xd3\xb2\x9e\x31\x15\x19\x61\xd2\x1a\xcc\x13\xd1\xe0\x8e\x7f\x81\x2b\x97\x6f\xea\xef\x1e\xe8\xc9\x15\x65\x6b\x2d\x6d\xf5\x80\x3d\x9e\x32\x3d\xc9\x40\x22\x52\xb1\xd8\x1f\x4e\x5f\xa5\xd7\x08\x9d\x3a\xc2\x6a\xf1\xdd\x63\x4b\x64\x3a\xce\xf3\xbc\xaf\xc1\xf6\x86\x38\xfd\x3c\x3a\x1a\x4a\x88\x7d\x7a\x8b\x62\xf8\xb5\xbe\xc6\x5d\x95\xfb\x22\x5d\x65\x60\x44\xa6\xdf\xa2\x7f\x72\x3b\x9c\xb4\xf1\x40\xa6\x43\xd8\x8a\x43\xfa\x08\x00\x00\xff\xff\x08\x0c\x53\x1b\x38\x01\x00\x00") - -func assetsPrometheusK8sKubeControllersServiceYamlBytes() ([]byte, error) { - return bindataRead( - _assetsPrometheusK8sKubeControllersServiceYaml, - "assets/prometheus-k8s/kube-controllers-service.yaml", - ) -} - -func assetsPrometheusK8sKubeControllersServiceYaml() (*asset, error) { - bytes, err := assetsPrometheusK8sKubeControllersServiceYamlBytes() - if err != nil { - return nil, err - } - - info := bindataFileInfo{name: "assets/prometheus-k8s/kube-controllers-service.yaml", size: 312, mode: os.FileMode(420), modTime: time.Unix(1, 0)} - a := &asset{bytes: bytes, info: info} - return a, nil -} - var _assetsPrometheusK8sKubeRbacProxySecretYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x5c\xd0\xdd\x6e\xdb\x20\x1c\x05\xf0\x7b\x3f\x05\x2f\xe0\xa9\x4e\x9b\xae\x45\xda\x45\x1a\xcd\x1e\xde\xba\x4a\xad\x82\x3f\xee\xf8\x0a\xa6\x06\xc3\x0c\x8e\x82\x9f\x7e\x62\x9a\xb5\xa9\x77\xe8\xe8\x1c\xf1\xd3\x9f\x38\x85\xc5\xec\x95\x9d\x20\xb8\x14\x19\x27\x81\xc0\x0c\x00\x66\xa7\xb3\x92\x9f\x22\x31\x1a\x02\x64\xca\x82\x57\xc3\x85\x19\x7d\xdf\xb5\xaf\x8e\xee\xee\xd4\x8b\x3a\x7c\x47\xc7\x83\x62\x06\xaf\xf4\x16\xc7\x6e\x87\x9f\xf8\xb7\xd7\x48\x9a\xba\xe0\x15\x5e\xd1\xbb\x95\x47\x75\x90\xa9\xd3\xb5\x4f\x0e\x1b\x1c\xd9\x4e\x5f\xa8\x42\xf7\xe8\x58\x87\xbe\x4d\xdd\x9f\xeb\x0f\xe3\xef\x58\xdc\x3b\x1a\x1f\x77\xcf\x4d\xad\x79\xf5\xf5\x8a\xa4\x4d\x3b\x89\xcc\x7e\xa0\x0d\x5e\x59\x55\xbe\xf7\x6f\x7f\x76\x9f\x45\x3c\x2c\xd8\x94\x9e\x37\x27\x79\x6e\x6f\xd4\xf6\xc7\x3f\xc7\x29\xd9\x14\xab\x1e\x47\x16\xd1\x66\xbc\x65\x46\xdf\xf4\xed\xf3\xe6\x96\xe8\x58\x2b\x81\xcb\xa2\x6f\xeb\xfd\xa9\x2a\x63\xd7\x14\x9a\x57\x38\xfe\xe7\x4e\x9d\x25\xe5\x29\xfb\x60\xf9\x92\x8d\x6a\xe2\x10\xbc\x09\x36\x8b\x90\x19\x11\xc8\x76\x3a\x4d\xa8\xd0\x3e\xbd\x00\x18\x1f\x7c\x4e\x9c\x83\xc0\xcd\xd6\x88\x30\x88\xc5\xe7\xe3\x83\xcf\x00\x98\x88\x11\x10\x8c\x0b\x15\xf9\x4c\x09\xcb\xdd\x6c\xaf\xf1\x6f\xee\x1d\x61\x02\x02\xeb\xc4\xe4\x07\x75\x0e\xb9\xb1\x93\x0a\x76\x56\x93\xcc\x42\x74\x02\x82\x17\x47\x7e\x2d\x22\xfb\x1d\x00\x00\xff\xff\xb3\xed\x24\x96\xbd\x01\x00\x00") func assetsPrometheusK8sKubeRbacProxySecretYamlBytes() ([]byte, error) { @@ -1336,7 +1316,7 @@ func assetsPrometheusK8sRoleBindingConfigYaml() (*asset, error) { return a, nil } -var _assetsPrometheusK8sRoleBindingSpecificNamespacesYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xd0\xb1\x4e\xc3\x30\x10\x06\xe0\xdd\x4f\x71\x2f\xe0\x20\xb6\xca\x1b\x2c\x2c\x4c\x45\x62\xbf\x38\x17\x72\x24\xf6\x59\xbe\x73\x24\x78\x7a\x54\x8a\x60\x00\x55\xa5\x0b\x42\xca\x6c\xff\xfe\x7f\x7f\x58\xf8\x91\xaa\xb2\xe4\x00\xb5\xc7\xd8\x61\xb3\x49\x2a\xbf\xa2\xb1\xe4\x6e\xde\x69\xc7\x72\xb5\x5e\x3b\x36\x4a\x1a\x9c\x87\xb3\x13\x00\x33\xe7\x21\xc0\x5e\x16\xba\xe5\x3c\x70\x7e\x72\x00\x89\x0c\x07\x34\x0c\x0e\x00\x20\x63\xa2\x00\xa5\x4a\x22\x9b\xa8\xa9\x9f\x77\xfa\x79\xa0\x05\x23\x05\x18\x68\xc4\xb6\x98\x03\xa8\xb2\xd0\x9e\xc6\x63\x14\x0b\xdf\x55\x69\xe5\xc4\x8a\xf7\x7b\x5f\x23\x4e\x35\x6a\xeb\x9f\x29\x9a\x1e\xde\xf6\x1f\x99\x07\xaa\x2b\x47\xba\x89\x51\x5a\xb6\xb3\xf7\x4a\xa1\xac\x13\x8f\xe6\x93\x64\x36\xa9\x87\x8f\xff\x81\xdb\xdc\x7a\xf2\xfa\xa2\x46\x69\xb3\xfb\xa5\xdd\x8f\x3b\x36\xc4\x4b\x11\xe3\xd2\xd4\xa8\xfa\xf5\xd8\xbf\x49\x5e\x2c\x89\x85\x95\xea\x4a\xf5\x7f\x1b\x7e\x63\xb9\x67\x35\xf7\x16\x00\x00\xff\xff\xd0\x08\x16\x9a\x8d\x06\x00\x00") +var _assetsPrometheusK8sRoleBindingSpecificNamespacesYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xd4\xb1\x4e\x03\x31\x0c\x06\xe0\xfd\x9e\xc2\x2f\x90\x22\xb6\xea\x36\x58\x58\x98\x8a\xc4\xee\xe6\xdc\x9e\xb9\x24\x8e\x6c\xe7\x24\x78\x7a\x54\x8a\x60\x00\x55\xa5\x0c\x08\xe9\xe6\xe4\x8f\xff\x7c\x83\xb1\xf2\x23\xa9\xb1\x94\x1e\x74\x8b\x71\x85\xcd\x47\x51\x7e\x41\x67\x29\xab\x69\x6d\x2b\x96\xab\xf9\xba\x63\xa7\x6c\x7d\x17\xe0\xec\x04\xc0\xc4\x65\xe8\x61\x23\x89\x6e\xb9\x0c\x5c\xf6\x1d\x40\x26\xc7\x01\x1d\xfb\x0e\x00\xa0\x60\xa6\x1e\xaa\x4a\x26\x1f\xa9\x59\x98\xd6\xf6\x71\x60\x15\x23\xf5\x30\xd0\x0e\x5b\xf2\x0e\x40\x25\xd1\x86\x76\xc7\x28\x56\xbe\x53\x69\xf5\x44\x8b\xb7\x7b\x9f\x25\x4e\x4d\xb4\xb6\x7d\xa2\xe8\x76\x78\x3b\xbc\x67\x1e\x48\x67\x8e\x74\x13\xa3\xb4\xe2\x67\xf7\x95\x4a\xc5\x46\xde\x79\xc8\x52\xd8\x45\x0f\x1f\xff\x03\xb7\xa9\x6d\x29\xd8\xb3\x39\xe5\xc5\xee\x87\x76\xdf\xf6\x58\x10\x2f\x45\x8c\xa9\x99\x93\x86\xf9\x38\x7f\x91\xbc\x58\x12\x2b\x1b\xe9\x4c\xba\x18\x5e\x6c\x78\x5c\x8c\x71\xa4\xa1\xa5\x05\xf2\xb7\x90\x51\x8a\xab\xa4\x44\x1a\x32\x16\xdc\xff\x77\xd1\x2f\x48\xf7\x6c\xde\xbd\x06\x00\x00\xff\xff\xe9\xd7\xa3\x61\x28\x09\x00\x00") func assetsPrometheusK8sRoleBindingSpecificNamespacesYamlBytes() ([]byte, error) { return bindataRead( @@ -1351,7 +1331,7 @@ func assetsPrometheusK8sRoleBindingSpecificNamespacesYaml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "assets/prometheus-k8s/role-binding-specific-namespaces.yaml", size: 1677, mode: os.FileMode(420), modTime: time.Unix(1, 0)} + info := bindataFileInfo{name: "assets/prometheus-k8s/role-binding-specific-namespaces.yaml", size: 2344, mode: os.FileMode(420), modTime: time.Unix(1, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -1376,7 +1356,7 @@ func assetsPrometheusK8sRoleConfigYaml() (*asset, error) { return a, nil } -var _assetsPrometheusK8sRoleSpecificNamespacesYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x90\x31\x6e\xeb\x30\x0c\x86\x77\x9f\x82\xc8\xae\x3c\xbc\x2d\xd0\x05\xba\x74\xea\xd0\x9d\x91\x98\x98\xb0\x25\x0a\x24\xe5\xa2\x3d\x7d\x91\xc4\x71\xd7\x4e\x45\x81\x66\xfb\x48\x82\x24\xfe\x0f\x1b\xbf\x92\x1a\x4b\x8d\xa0\x47\x4c\x7b\xec\x3e\x8a\xf2\x07\x3a\x4b\xdd\x4f\x07\xdb\xb3\xfc\x5b\xfe\x0f\xec\x54\x2c\x0e\x01\xbe\xbd\x01\x30\x71\xcd\x11\x5e\x64\xa6\x01\xa0\x90\x63\x46\xc7\x38\x00\x00\x54\x2c\x14\xa1\xa9\x14\xf2\x91\xba\x85\xe9\x60\xdb\xc0\x1a\x26\x8a\x90\xe9\x84\x7d\xf6\x01\x40\xfb\x4c\x76\x59\xbc\xbe\x7f\x52\xe9\xcd\x6e\x77\x02\xec\x76\x57\x50\x32\xe9\x9a\x68\xeb\x57\xc9\x64\x2b\x1b\xe9\xc2\x69\x2b\xa9\xe6\x26\x5c\xfd\x5e\x37\xc9\x37\x5c\x48\x8f\xdb\x81\x33\xf9\x4a\x33\xdb\x1d\xdf\xd0\xd3\xf8\xa3\x16\xa6\x7e\xa4\x60\xef\xe6\x54\xfe\xb8\x09\x69\x54\x6d\xe4\x93\x87\x22\x95\x5d\x94\xeb\xf9\xa1\x64\x55\x92\xe6\x6e\x4e\x1a\x96\xdb\xe3\x87\x97\xd5\x0b\x36\xbe\x04\x21\xfd\x85\x46\xbe\x42\x3e\x5f\x46\x9f\x01\x00\x00\xff\xff\xc1\x3a\x21\x83\x8c\x05\x00\x00") +var _assetsPrometheusK8sRoleSpecificNamespacesYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xd4\xb1\x6e\xe3\x30\x0c\x06\xe0\xdd\x4f\x41\x64\x77\x0e\xb7\x05\x7e\x81\x5b\x6e\xea\xd0\x9d\x91\x98\x98\xb0\x24\x0a\x24\xe5\xa2\x7d\xfa\x22\xb1\xe3\xa2\x5b\xa7\xa2\x40\xbd\xfd\x32\x41\x12\xfc\x06\x63\xe5\x67\x52\x63\x29\x03\xe8\x19\xc3\x11\x9b\x8f\xa2\xfc\x86\xce\x52\x8e\xd3\xc9\x8e\x2c\x7f\xe6\xbf\x1d\x3b\x65\x1b\xba\x1e\xbe\xdc\x01\x30\x71\x89\x03\x3c\x49\xa2\x0e\x20\x93\x63\x44\xc7\xa1\x03\x00\x28\x98\x69\x80\xaa\x92\xc9\x47\x6a\xd6\x4f\x27\xdb\x0a\x56\x31\xd0\x00\x91\x2e\xd8\x92\x77\x00\xda\x12\xd9\xad\xf1\xbe\xfe\x9f\x4a\xab\xb6\xcc\xe9\xe1\x70\xb8\x07\x25\x93\xa6\x81\xb6\xef\x45\x22\xd9\x9a\x8d\x74\xe6\xb0\x3d\xa9\xc4\x2a\x5c\xfc\xf1\xae\x12\x97\x38\x93\x9e\xb7\x01\x57\xf2\x35\x25\xb6\x47\x7c\x41\x0f\xe3\xb7\x2a\x4c\xed\x4c\xbd\xbd\x9a\x53\xfe\xe5\x12\x52\xa9\xd8\xc8\x17\xef\xb3\x14\x76\x51\x2e\xd7\x9d\x64\x25\x09\xa9\x99\x93\xf6\xf3\xb2\x78\x77\x59\x5d\xb0\xf2\xed\x10\xd2\x5d\x64\x15\x59\x7e\x28\x61\xa4\xd8\xd2\xce\xf2\x99\x25\x48\x71\x95\x94\x48\xfb\x8c\x05\xaf\x3f\xd2\xe7\xe3\xe4\xff\xb7\xd2\x7b\x00\x00\x00\xff\xff\xb6\xbe\x01\xc7\xc3\x07\x00\x00") func assetsPrometheusK8sRoleSpecificNamespacesYamlBytes() ([]byte, error) { return bindataRead( @@ -1391,7 +1371,7 @@ func assetsPrometheusK8sRoleSpecificNamespacesYaml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "assets/prometheus-k8s/role-specific-namespaces.yaml", size: 1420, mode: os.FileMode(420), modTime: time.Unix(1, 0)} + info := bindataFileInfo{name: "assets/prometheus-k8s/role-specific-namespaces.yaml", size: 1987, mode: os.FileMode(420), modTime: time.Unix(1, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -1516,22 +1496,42 @@ func assetsPrometheusK8sServiceMonitorEtcdYaml() (*asset, error) { return a, nil } -var _assetsPrometheusK8sServiceMonitorKubeControllersYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x91\xb1\x4e\x24\x31\x0c\x86\xfb\x79\x0a\xbf\xc0\xcc\xdc\xe9\x9a\x53\xda\x93\xae\x5a\x68\x16\xd1\x7b\xbc\x66\x37\x4c\xc6\x8e\x6c\xef\x48\xbc\x3d\xca\x06\x24\x24\x10\x05\x5d\xf2\xff\xb6\xf3\xe7\x33\xd6\xfc\xc8\xe6\x59\x25\xc1\xa6\x92\x43\x2d\xcb\x79\x22\x35\x56\x9f\x48\xb7\x79\xff\x3d\xac\x59\x4e\x09\x8e\x6c\x7b\x26\xbe\xeb\x55\xc3\xc6\x81\x27\x0c\x4c\x03\x40\xc1\x85\x8b\xb7\x13\xc0\xfa\xd7\x47\xac\x35\xc1\x7a\x5d\x78\x24\x95\x30\x2d\x85\xcd\x07\x00\xc1\x8d\xbf\x30\xbc\x32\xb5\x66\x96\x53\xd5\x2c\x71\x9b\x34\xc2\xc2\x68\x6c\x0f\xba\xb2\xfc\xcf\x85\x13\xcc\x3b\xda\x6c\x57\x99\x9d\xc9\x38\x7c\x6e\x93\x4c\x38\xd8\xa7\xac\xb3\xf7\x80\x48\xa4\x57\x89\x39\x5a\xe3\x2d\x52\x96\x60\xdb\xb1\x24\xf8\xf3\xcb\x6f\x4a\x55\x8b\x04\x97\x88\x3a\x6e\x1c\x96\xa9\xcb\x4e\x17\x6e\x09\x9b\xd1\x95\x28\xfe\x4f\xe5\x29\x9f\xfb\xe7\x00\x08\x7f\x92\x85\x70\x22\x8b\x01\xe0\x59\x97\x43\x83\x95\xde\x39\xbd\x51\xf1\x8a\xc4\x47\x2e\x4c\xa1\xd6\xdf\xda\x30\xe8\x72\xdf\xbc\x7e\x1f\x3b\x38\x7f\xf1\xe0\x6d\x00\xf0\xcf\xd5\x87\x0f\x7b\xf8\x6e\x13\xaf\x01\x00\x00\xff\xff\x82\xfd\xf3\x2f\xf6\x01\x00\x00") +var _assetsPrometheusK8sServiceMonitorKubeControllerManagerYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x91\xcd\x8e\x13\x31\x10\x84\xef\xf3\x14\x7d\xe0\x90\xb0\x9a\xb0\x59\x84\x84\x7c\xe1\x05\x80\x03\x2b\x71\x42\x1a\x75\xec\xc2\x31\xf1\x1f\xed\x9e\x08\x89\xf0\xee\x68\x9c\x2c\xbb\xac\xb4\xca\xcd\xea\x6a\x57\x7f\xa5\xe2\x1a\xbe\x42\x5a\x28\xd9\x50\x2a\x39\x68\x91\x90\xfd\xc6\x16\x41\x69\x1b\x5b\xd2\x9b\xe3\x76\x38\x84\xec\x0c\xdd\x43\x8e\xc1\xe2\xd3\x79\x6b\x48\x50\x76\xac\x6c\x06\xa2\xc8\x3b\xc4\xb6\xbc\x88\x0e\xef\xdb\xc8\xb5\x1a\x3a\xcc\x3b\x8c\xb6\x64\x95\x12\x23\x64\x4c\x9c\xd9\x43\x06\xa2\xcc\x09\xd7\xf4\x56\xd9\xc2\x50\xa9\xc8\x6d\x1f\xbe\xeb\xf8\x48\x37\xb4\x0a\xbb\x1c\x43\x76\xb5\x84\xac\xfd\xf2\x48\x21\x2b\xe4\xc8\xd1\xd0\xdb\xdb\xd6\x59\x12\x54\x82\xfd\x82\xce\x17\xb2\xbf\x20\x8e\xc4\x56\x7b\x64\x27\xa5\xf6\x11\x91\xc0\xe3\x97\x21\xa8\x75\xd3\xca\x61\x37\x7b\x1f\xb2\x3f\xb9\xd0\x0e\x27\xc1\xcf\x19\x4d\x4f\x0d\x72\x84\xac\x37\xaf\x2f\x7f\x5a\x99\xc5\xe2\xe3\x93\xf4\x8b\xf9\x34\x2d\x01\xa6\xa9\x0f\x6a\x11\x35\xb4\x57\xad\x67\x24\x79\x19\x46\x50\x23\x5b\xfc\xcf\xb3\xda\xdc\xac\x57\x1f\x8c\xf9\xe6\x6e\xd6\xff\x94\xbe\x97\x90\xd5\xd0\xab\xad\xd9\xde\xde\xbd\xbb\xbb\x42\xc4\xce\x09\x5a\xbb\x40\x11\x29\x8b\x87\xf6\x3d\xf3\x4c\xfe\x51\x76\x97\x79\x9e\x63\x7c\x5a\xc7\x3d\x22\xac\x16\x39\x1b\x27\x56\xbb\xff\xbc\x68\x0f\x41\x1e\xcb\x7a\xb9\xdb\xf6\xe0\x41\xbf\xff\x0c\x7f\x03\x00\x00\xff\xff\x9a\xed\x6f\x9c\x7e\x02\x00\x00") + +func assetsPrometheusK8sServiceMonitorKubeControllerManagerYamlBytes() ([]byte, error) { + return bindataRead( + _assetsPrometheusK8sServiceMonitorKubeControllerManagerYaml, + "assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml", + ) +} + +func assetsPrometheusK8sServiceMonitorKubeControllerManagerYaml() (*asset, error) { + bytes, err := assetsPrometheusK8sServiceMonitorKubeControllerManagerYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml", size: 638, mode: os.FileMode(420), modTime: time.Unix(1, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _assetsPrometheusK8sServiceMonitorKubeSchedulerYaml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\x50\x4d\x4b\xc3\x40\x10\xbd\xe7\x57\xcc\xc1\x43\x4b\x49\x6d\x14\x41\xf6\xe2\x1f\x50\x2f\x05\x4f\x42\x98\xee\x8e\xc9\xda\xcd\xee\x32\x33\x29\x82\xf8\xdf\x25\xdb\xd4\x16\xc5\x5b\xf2\xde\xdb\x79\x1f\x98\xfd\x0b\xb1\xf8\x14\x0d\x0c\x29\x7a\x4d\xec\x63\xb7\xb6\x89\x29\xc9\xda\xa6\xe1\xfa\xd0\x54\x7b\x1f\x9d\x81\x2d\xf1\xc1\x5b\x7a\x3a\xaa\xaa\x81\x14\x1d\x2a\x9a\x0a\x20\xe0\x8e\x82\x4c\x5f\x00\xfb\x7b\xa9\x31\x67\x03\xfb\x71\x47\xb5\xd8\x9e\xdc\x18\x88\x2b\x80\x88\x03\xfd\x03\x4b\x46\x4b\x06\x52\xa6\x28\xbd\x7f\xd3\xfa\x9c\xa5\x92\x4c\x76\x3a\x4d\xd1\xe5\xe4\xa3\x16\x9f\x1a\x7c\x54\xe2\x03\x06\x03\xb7\x1b\x29\xce\x39\xb1\x1a\xe8\x55\xf3\xf1\x9f\xa9\xe4\xf2\xb1\x9b\xa3\xd5\x80\x56\x4b\x55\xa6\x1c\xd0\x52\x41\x27\x61\x47\x1f\x06\x16\xeb\xd5\x72\xf1\x60\xcc\xab\x5b\x2d\x7f\x98\xa2\x1b\x28\xaa\x81\xab\xc6\x34\x9b\x9b\xbb\x66\xe6\x24\x8d\x6c\xe9\xf1\xa2\xfa\xe4\xd0\xb6\xe8\x1c\x93\x48\xdb\xce\x98\x22\x77\xa4\x45\x67\x7e\xd1\xef\x69\x37\xe3\x71\x0c\xe1\x72\x8b\x2d\x05\xb2\x9a\xf8\x78\x78\x40\xb5\xfd\xf3\xc4\x9d\x8a\x9c\x97\xfa\xb3\xa7\x9c\x9e\xc2\xe7\x57\xf5\x1d\x00\x00\xff\xff\x11\x5a\xfc\xd7\xe0\x01\x00\x00") -func assetsPrometheusK8sServiceMonitorKubeControllersYamlBytes() ([]byte, error) { +func assetsPrometheusK8sServiceMonitorKubeSchedulerYamlBytes() ([]byte, error) { return bindataRead( - _assetsPrometheusK8sServiceMonitorKubeControllersYaml, - "assets/prometheus-k8s/service-monitor-kube-controllers.yaml", + _assetsPrometheusK8sServiceMonitorKubeSchedulerYaml, + "assets/prometheus-k8s/service-monitor-kube-scheduler.yaml", ) } -func assetsPrometheusK8sServiceMonitorKubeControllersYaml() (*asset, error) { - bytes, err := assetsPrometheusK8sServiceMonitorKubeControllersYamlBytes() +func assetsPrometheusK8sServiceMonitorKubeSchedulerYaml() (*asset, error) { + bytes, err := assetsPrometheusK8sServiceMonitorKubeSchedulerYamlBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "assets/prometheus-k8s/service-monitor-kube-controllers.yaml", size: 502, mode: os.FileMode(420), modTime: time.Unix(1, 0)} + info := bindataFileInfo{name: "assets/prometheus-k8s/service-monitor-kube-scheduler.yaml", size: 480, mode: os.FileMode(420), modTime: time.Unix(1, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -2042,7 +2042,6 @@ var _bindata = map[string]func() (*asset, error){ "assets/prometheus-k8s/cluster-role-binding.yaml": assetsPrometheusK8sClusterRoleBindingYaml, "assets/prometheus-k8s/cluster-role.yaml": assetsPrometheusK8sClusterRoleYaml, "assets/prometheus-k8s/htpasswd-secret.yaml": assetsPrometheusK8sHtpasswdSecretYaml, - "assets/prometheus-k8s/kube-controllers-service.yaml": assetsPrometheusK8sKubeControllersServiceYaml, "assets/prometheus-k8s/kube-rbac-proxy-secret.yaml": assetsPrometheusK8sKubeRbacProxySecretYaml, "assets/prometheus-k8s/prometheus.yaml": assetsPrometheusK8sPrometheusYaml, "assets/prometheus-k8s/proxy-secret.yaml": assetsPrometheusK8sProxySecretYaml, @@ -2056,7 +2055,8 @@ var _bindata = map[string]func() (*asset, error){ "assets/prometheus-k8s/service-monitor-apiserver.yaml": assetsPrometheusK8sServiceMonitorApiserverYaml, "assets/prometheus-k8s/service-monitor-cluster-version-operator.yaml": assetsPrometheusK8sServiceMonitorClusterVersionOperatorYaml, "assets/prometheus-k8s/service-monitor-etcd.yaml": assetsPrometheusK8sServiceMonitorEtcdYaml, - "assets/prometheus-k8s/service-monitor-kube-controllers.yaml": assetsPrometheusK8sServiceMonitorKubeControllersYaml, + "assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml": assetsPrometheusK8sServiceMonitorKubeControllerManagerYaml, + "assets/prometheus-k8s/service-monitor-kube-scheduler.yaml": assetsPrometheusK8sServiceMonitorKubeSchedulerYaml, "assets/prometheus-k8s/service-monitor-kubelet.yaml": assetsPrometheusK8sServiceMonitorKubeletYaml, "assets/prometheus-k8s/service-monitor-open-shift-apiserver.yaml": assetsPrometheusK8sServiceMonitorOpenShiftApiserverYaml, "assets/prometheus-k8s/service-monitor.yaml": assetsPrometheusK8sServiceMonitorYaml, @@ -2187,7 +2187,6 @@ var _bintree = &bintree{nil, map[string]*bintree{ "cluster-role-binding.yaml": &bintree{assetsPrometheusK8sClusterRoleBindingYaml, map[string]*bintree{}}, "cluster-role.yaml": &bintree{assetsPrometheusK8sClusterRoleYaml, map[string]*bintree{}}, "htpasswd-secret.yaml": &bintree{assetsPrometheusK8sHtpasswdSecretYaml, map[string]*bintree{}}, - "kube-controllers-service.yaml": &bintree{assetsPrometheusK8sKubeControllersServiceYaml, map[string]*bintree{}}, "kube-rbac-proxy-secret.yaml": &bintree{assetsPrometheusK8sKubeRbacProxySecretYaml, map[string]*bintree{}}, "prometheus.yaml": &bintree{assetsPrometheusK8sPrometheusYaml, map[string]*bintree{}}, "proxy-secret.yaml": &bintree{assetsPrometheusK8sProxySecretYaml, map[string]*bintree{}}, @@ -2201,7 +2200,8 @@ var _bintree = &bintree{nil, map[string]*bintree{ "service-monitor-apiserver.yaml": &bintree{assetsPrometheusK8sServiceMonitorApiserverYaml, map[string]*bintree{}}, "service-monitor-cluster-version-operator.yaml": &bintree{assetsPrometheusK8sServiceMonitorClusterVersionOperatorYaml, map[string]*bintree{}}, "service-monitor-etcd.yaml": &bintree{assetsPrometheusK8sServiceMonitorEtcdYaml, map[string]*bintree{}}, - "service-monitor-kube-controllers.yaml": &bintree{assetsPrometheusK8sServiceMonitorKubeControllersYaml, map[string]*bintree{}}, + "service-monitor-kube-controller-manager.yaml": &bintree{assetsPrometheusK8sServiceMonitorKubeControllerManagerYaml, map[string]*bintree{}}, + "service-monitor-kube-scheduler.yaml": &bintree{assetsPrometheusK8sServiceMonitorKubeSchedulerYaml, map[string]*bintree{}}, "service-monitor-kubelet.yaml": &bintree{assetsPrometheusK8sServiceMonitorKubeletYaml, map[string]*bintree{}}, "service-monitor-open-shift-apiserver.yaml": &bintree{assetsPrometheusK8sServiceMonitorOpenShiftApiserverYaml, map[string]*bintree{}}, "service-monitor.yaml": &bintree{assetsPrometheusK8sServiceMonitorYaml, map[string]*bintree{}}, diff --git a/pkg/manifests/manifests.go b/pkg/manifests/manifests.go index 78b2db5dcc..348b848212 100644 --- a/pkg/manifests/manifests.go +++ b/pkg/manifests/manifests.go @@ -75,7 +75,8 @@ var ( PrometheusK8sKubeletServiceMonitor = "assets/prometheus-k8s/service-monitor-kubelet.yaml" PrometheusK8sApiserverServiceMonitor = "assets/prometheus-k8s/service-monitor-apiserver.yaml" PrometheusK8sPrometheusServiceMonitor = "assets/prometheus-k8s/service-monitor.yaml" - PrometheusK8sKubeControllersServiceMonitor = "assets/prometheus-k8s/service-monitor-kube-controllers.yaml" + PrometheusK8sKubeControllerManagerServiceMonitor = "assets/prometheus-k8s/service-monitor-kube-controller-manager.yaml" + PrometheusK8sKubeSchedulerServiceMonitor = "assets/prometheus-k8s/service-monitor-kube-scheduler.yaml" PrometheusK8sServiceMonitorClusterVersionOperator = "assets/prometheus-k8s/service-monitor-cluster-version-operator.yaml" PrometheusK8sServiceMonitorOpenShiftApiserver = "assets/prometheus-k8s/service-monitor-open-shift-apiserver.yaml" PrometheusK8sService = "assets/prometheus-k8s/service.yaml" @@ -106,8 +107,6 @@ var ( PrometheusOperatorService = "assets/prometheus-operator/service.yaml" PrometheusOperatorServiceMonitor = "assets/prometheus-operator/service-monitor.yaml" - KubeControllersService = "assets/prometheus-k8s/kube-controllers-service.yaml" - GrafanaClusterRoleBinding = "assets/grafana/cluster-role-binding.yaml" GrafanaClusterRole = "assets/grafana/cluster-role.yaml" GrafanaConfigSecret = "assets/grafana/config.yaml" @@ -738,8 +737,19 @@ func (f *Factory) PrometheusK8sPrometheusServiceMonitor() (*monv1.ServiceMonitor return sm, nil } -func (f *Factory) PrometheusK8sKubeControllersServiceMonitor() (*monv1.ServiceMonitor, error) { - s, err := f.NewServiceMonitor(MustAssetReader(PrometheusK8sKubeControllersServiceMonitor)) +func (f *Factory) PrometheusK8sKubeSchedulerServiceMonitor() (*monv1.ServiceMonitor, error) { + s, err := f.NewServiceMonitor(MustAssetReader(PrometheusK8sKubeSchedulerServiceMonitor)) + if err != nil { + return nil, err + } + + s.Namespace = f.namespace + + return s, nil +} + +func (f *Factory) PrometheusK8sKubeControllerManagerServiceMonitor() (*monv1.ServiceMonitor, error) { + s, err := f.NewServiceMonitor(MustAssetReader(PrometheusK8sKubeControllerManagerServiceMonitor)) if err != nil { return nil, err } @@ -977,10 +987,6 @@ func (f *Factory) PrometheusK8sService() (*v1.Service, error) { return s, nil } -func (f *Factory) KubeControllersService() (*v1.Service, error) { - return f.NewService(MustAssetReader(KubeControllersService)) -} - func (f *Factory) GrafanaClusterRoleBinding() (*rbacv1beta1.ClusterRoleBinding, error) { crb, err := f.NewClusterRoleBinding(MustAssetReader(GrafanaClusterRoleBinding)) if err != nil { diff --git a/pkg/manifests/manifests_test.go b/pkg/manifests/manifests_test.go index 01d77c203d..47a0d0e329 100644 --- a/pkg/manifests/manifests_test.go +++ b/pkg/manifests/manifests_test.go @@ -156,7 +156,12 @@ func TestUnconfiguredManifests(t *testing.T) { t.Fatal(err) } - _, err = f.PrometheusK8sKubeControllersServiceMonitor() + _, err = f.PrometheusK8sKubeControllerManagerServiceMonitor() + if err != nil { + t.Fatal(err) + } + + _, err = f.PrometheusK8sKubeSchedulerServiceMonitor() if err != nil { t.Fatal(err) } @@ -256,11 +261,6 @@ func TestUnconfiguredManifests(t *testing.T) { t.Fatal(err) } - _, err = f.KubeControllersService() - if err != nil { - t.Fatal(err) - } - _, err = f.GrafanaClusterRoleBinding() if err != nil { t.Fatal(err) diff --git a/pkg/tasks/prometheus.go b/pkg/tasks/prometheus.go index fc5cb325ff..266d565eaf 100644 --- a/pkg/tasks/prometheus.go +++ b/pkg/tasks/prometheus.go @@ -206,14 +206,24 @@ func (t *PrometheusTask) Run() error { return errors.Wrap(err, "reconciling Prometheus apiserver ServiceMonitor failed") } - smkc, err := t.factory.PrometheusK8sKubeControllersServiceMonitor() + smks, err := t.factory.PrometheusK8sKubeSchedulerServiceMonitor() if err != nil { - return errors.Wrap(err, "initializing Prometheus kube-controllers ServiceMonitor failed") + return errors.Wrap(err, "initializing Prometheus kube-scheduler ServiceMonitor failed") } - err = t.client.CreateOrUpdateServiceMonitor(smkc) + err = t.client.CreateOrUpdateServiceMonitor(smks) if err != nil { - return errors.Wrap(err, "reconciling Prometheus kube-controllers ServiceMonitor failed") + return errors.Wrap(err, "reconciling Prometheus kube-scheduler ServiceMonitor failed") + } + + smkcm, err := t.factory.PrometheusK8sKubeControllerManagerServiceMonitor() + if err != nil { + return errors.Wrap(err, "initializing Prometheus kube-controller-manager ServiceMonitor failed") + } + + err = t.client.CreateOrUpdateServiceMonitor(smkcm) + if err != nil { + return errors.Wrap(err, "reconciling Prometheus kube-controller-manager ServiceMonitor failed") } smcvo, err := t.factory.PrometheusK8sServiceMonitorClusterVersionOperator() @@ -273,16 +283,6 @@ func (t *PrometheusTask) Run() error { return errors.Wrap(err, "reconciling Prometheus Service failed") } - kcmsvc, err := t.factory.KubeControllersService() - if err != nil { - return errors.Wrap(err, "initializing kube-controllers Service failed") - } - - err = t.client.CreateOrUpdateService(kcmsvc) - if err != nil { - return errors.Wrap(err, "reconciling kube-controllers Service failed") - } - glog.V(4).Info("initializing Prometheus object") p, err := t.factory.PrometheusK8s(host) if err != nil {