Skip to content

Commit beab335

Browse files
azychopenshift-merge-bot[bot]
authored andcommitted
UPSTREAM: <carry>: Enable OCP metrics collection by default
Enables OCP to collect Prometheus metrics for both catalogd and operator-controller by default. This is accomplished via ServiceMonitor CRs which are now created for both projects.
1 parent 4138bad commit beab335

File tree

53 files changed

+274
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+274
-1
lines changed

openshift/catalogd/kustomize/overlays/openshift/olmv1-ns/kustomization.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@ resources:
77
- ../../../../../../config/base/crd
88
- ../../../../../../config/base/rbac
99
- ../../../../../../config/base/manager
10+
- metrics
1011
- trusted-ca/catalogd_trusted_ca_configmap.yaml
1112

1213
patches:
1314
- path: patches/manager_namespace_privileged.yaml
15+
- path: patches/manager_namespace_monitored.yaml
1416
- target:
1517
kind: Service
1618
name: service
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
apiVersion: rbac.authorization.k8s.io/v1
2+
kind: Role
3+
metadata:
4+
name: metrics-monitor-role
5+
labels:
6+
app.kubernetes.io/name: catalogd
7+
app.kubernetes.io/part-of: olm
8+
rules:
9+
- apiGroups:
10+
- ""
11+
resources:
12+
- services
13+
- endpoints
14+
- pods
15+
verbs:
16+
- get
17+
- list
18+
- watch
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: rbac.authorization.k8s.io/v1
2+
kind: RoleBinding
3+
metadata:
4+
name: metrics-monitor-rolebinding
5+
labels:
6+
app.kubernetes.io/name: catalogd
7+
app.kubernetes.io/part-of: olm
8+
roleRef:
9+
apiGroup: rbac.authorization.k8s.io
10+
kind: Role
11+
name: metrics-monitor-role
12+
subjects:
13+
- kind: ServiceAccount
14+
name: prometheus-k8s
15+
namespace: openshift-monitoring
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
apiVersion: monitoring.coreos.com/v1
2+
kind: ServiceMonitor
3+
metadata:
4+
name: metrics-monitor
5+
labels:
6+
app.kubernetes.io/name: catalogd
7+
app.kubernetes.io/part-of: olm
8+
openshift.io/cluster-monitoring: 'true'
9+
spec:
10+
endpoints:
11+
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
12+
interval: 30s
13+
path: /metrics
14+
port: metrics
15+
scheme: https
16+
tlsConfig:
17+
caFile: /etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt
18+
certFile: /etc/prometheus/secrets/metrics-client-certs/tls.crt
19+
keyFile: /etc/prometheus/secrets/metrics-client-certs/tls.key
20+
serverName: catalogd-service.openshift-catalogd.svc
21+
namespaceSelector:
22+
matchNames:
23+
- openshift-catalogd
24+
selector:
25+
matchLabels:
26+
app.kubernetes.io/name: catalogd
27+
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
resources:
2+
- catalogd_metrics_monitor_role.yaml
3+
- catalogd_metrics_monitor_role_binding.yaml
4+
- catalogd_metrics_monitor_servicemonitor.yaml
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
$patch: merge
2+
apiVersion: v1
3+
kind: Namespace
4+
metadata:
5+
name: system
6+
labels:
7+
openshift.io/cluster-monitoring: "true"

openshift/catalogd/kustomize/overlays/openshift/olmv1-ns/patches/manager_namespace_privileged.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
$patch: merge
12
apiVersion: v1
23
kind: Namespace
34
metadata:

openshift/catalogd/manifests/00-namespace-openshift-catalogd.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ kind: Namespace
33
metadata:
44
labels:
55
app.kubernetes.io/part-of: olm
6+
openshift.io/cluster-monitoring: "true"
67
pod-security.kubernetes.io/audit: privileged
78
pod-security.kubernetes.io/audit-version: latest
89
pod-security.kubernetes.io/enforce: privileged
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
apiVersion: rbac.authorization.k8s.io/v1
3+
kind: Role
4+
metadata:
5+
labels:
6+
app.kubernetes.io/name: catalogd
7+
app.kubernetes.io/part-of: olm
8+
name: catalogd-metrics-monitor-role
9+
namespace: openshift-catalogd
10+
rules:
11+
- apiGroups:
12+
- ""
13+
resources:
14+
- services
15+
- endpoints
16+
- pods
17+
verbs:
18+
- get
19+
- list
20+
- watch
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
apiVersion: rbac.authorization.k8s.io/v1
3+
kind: RoleBinding
4+
metadata:
5+
labels:
6+
app.kubernetes.io/name: catalogd
7+
app.kubernetes.io/part-of: olm
8+
name: catalogd-metrics-monitor-rolebinding
9+
namespace: openshift-catalogd
10+
roleRef:
11+
apiGroup: rbac.authorization.k8s.io
12+
kind: Role
13+
name: catalogd-metrics-monitor-role
14+
subjects:
15+
- kind: ServiceAccount
16+
name: prometheus-k8s
17+
namespace: openshift-monitoring
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
apiVersion: monitoring.coreos.com/v1
3+
kind: ServiceMonitor
4+
metadata:
5+
labels:
6+
app.kubernetes.io/name: catalogd
7+
app.kubernetes.io/part-of: olm
8+
openshift.io/cluster-monitoring: "true"
9+
name: catalogd-metrics-monitor
10+
namespace: openshift-catalogd
11+
spec:
12+
endpoints:
13+
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
14+
interval: 30s
15+
path: /metrics
16+
port: metrics
17+
scheme: https
18+
tlsConfig:
19+
caFile: /etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt
20+
certFile: /etc/prometheus/secrets/metrics-client-certs/tls.crt
21+
keyFile: /etc/prometheus/secrets/metrics-client-certs/tls.key
22+
serverName: catalogd-service.openshift-catalogd.svc
23+
namespaceSelector:
24+
matchNames:
25+
- openshift-catalogd
26+
selector:
27+
matchLabels:
28+
app.kubernetes.io/name: catalogd

openshift/operator-controller/kustomize/overlays/openshift/olmv1-ns/kustomization.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,12 @@ resources:
55
- ../../../../../../config/base/crd
66
- ../../../../../../config/base/rbac
77
- ../../../../../../config/base/manager
8+
- metrics
89
- trusted-ca/operator_controller_trusted_ca_configmap.yaml
910

1011
patches:
12+
- path: patches/manager_namespace_privileged.yaml
13+
- path: patches/manager_namespace_monitored.yaml
1114
- target:
1215
kind: Service
1316
name: service
@@ -32,4 +35,3 @@ patches:
3235
kind: Deployment
3336
name: controller-manager
3437
path: patches/manager_deployment_node_selection.yaml
35-
- path: patches/manager_namespace_privileged.yaml
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
resources:
2+
- operator_controller_metrics_monitor_role.yaml
3+
- operator_controller_metrics_monitor_rolebinding.yaml
4+
- operator_controller_metrics_monitor_servicemonitor.yaml
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
apiVersion: rbac.authorization.k8s.io/v1
2+
kind: Role
3+
metadata:
4+
name: metrics-monitor-role
5+
labels:
6+
control-plane: operator-controller-controller-manager
7+
rules:
8+
- apiGroups:
9+
- ""
10+
resources:
11+
- services
12+
- endpoints
13+
- pods
14+
verbs:
15+
- get
16+
- list
17+
- watch
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
apiVersion: rbac.authorization.k8s.io/v1
2+
kind: RoleBinding
3+
metadata:
4+
name: metrics-monitor-rolebinding
5+
labels:
6+
control-plane: operator-controller-controller-manager
7+
roleRef:
8+
apiGroup: rbac.authorization.k8s.io
9+
kind: Role
10+
name: metrics-monitor-role
11+
subjects:
12+
- kind: ServiceAccount
13+
name: prometheus-k8s
14+
namespace: openshift-monitoring
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
apiVersion: monitoring.coreos.com/v1
2+
kind: ServiceMonitor
3+
metadata:
4+
name: metrics-monitor
5+
labels:
6+
control-plane: operator-controller-controller-manager
7+
openshift.io/cluster-monitoring: 'true'
8+
spec:
9+
endpoints:
10+
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
11+
interval: 30s
12+
path: /metrics
13+
port: https
14+
scheme: https
15+
tlsConfig:
16+
caFile: /etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt
17+
certFile: /etc/prometheus/secrets/metrics-client-certs/tls.crt
18+
keyFile: /etc/prometheus/secrets/metrics-client-certs/tls.key
19+
serverName: operator-controller-service.openshift-operator-controller.svc
20+
namespaceSelector:
21+
matchNames:
22+
- openshift-operator-controller
23+
selector:
24+
matchLabels:
25+
control-plane: operator-controller-controller-manager
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
$patch: merge
2+
apiVersion: v1
3+
kind: Namespace
4+
metadata:
5+
name: system
6+
labels:
7+
openshift.io/cluster-monitoring: "true"

openshift/operator-controller/kustomize/overlays/openshift/olmv1-ns/patches/manager_namespace_privileged.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
$patch: merge
12
apiVersion: v1
23
kind: Namespace
34
metadata:

openshift/operator-controller/manifests/00-namespace-openshift-operator-controller.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ apiVersion: v1
22
kind: Namespace
33
metadata:
44
labels:
5+
openshift.io/cluster-monitoring: "true"
56
pod-security.kubernetes.io/audit: privileged
67
pod-security.kubernetes.io/audit-version: latest
78
pod-security.kubernetes.io/enforce: privileged
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
apiVersion: rbac.authorization.k8s.io/v1
3+
kind: Role
4+
metadata:
5+
labels:
6+
control-plane: operator-controller-controller-manager
7+
name: operator-controller-metrics-monitor-role
8+
namespace: openshift-operator-controller
9+
rules:
10+
- apiGroups:
11+
- ""
12+
resources:
13+
- services
14+
- endpoints
15+
- pods
16+
verbs:
17+
- get
18+
- list
19+
- watch
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
apiVersion: rbac.authorization.k8s.io/v1
3+
kind: RoleBinding
4+
metadata:
5+
labels:
6+
control-plane: operator-controller-controller-manager
7+
name: operator-controller-metrics-monitor-rolebinding
8+
namespace: openshift-operator-controller
9+
roleRef:
10+
apiGroup: rbac.authorization.k8s.io
11+
kind: Role
12+
name: operator-controller-metrics-monitor-role
13+
subjects:
14+
- kind: ServiceAccount
15+
name: prometheus-k8s
16+
namespace: openshift-monitoring
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
apiVersion: monitoring.coreos.com/v1
3+
kind: ServiceMonitor
4+
metadata:
5+
labels:
6+
control-plane: operator-controller-controller-manager
7+
openshift.io/cluster-monitoring: "true"
8+
name: operator-controller-metrics-monitor
9+
namespace: openshift-operator-controller
10+
spec:
11+
endpoints:
12+
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
13+
interval: 30s
14+
path: /metrics
15+
port: https
16+
scheme: https
17+
tlsConfig:
18+
caFile: /etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt
19+
certFile: /etc/prometheus/secrets/metrics-client-certs/tls.crt
20+
keyFile: /etc/prometheus/secrets/metrics-client-certs/tls.key
21+
serverName: operator-controller-service.openshift-operator-controller.svc
22+
namespaceSelector:
23+
matchNames:
24+
- openshift-operator-controller
25+
selector:
26+
matchLabels:
27+
control-plane: operator-controller-controller-manager

0 commit comments

Comments
 (0)