Skip to content

Commit

Permalink
Generalize the use of recommended "app.kubernetes.io/managed-by"
Browse files Browse the repository at this point in the history
and "app.kubernetes.io/part-of" labels on Kube resources created and
managed by CMO and CVO.

See https://issues.redhat.com/browse/MON-3216 for the whys.

We chose this "inject at the end" approach as it requires less changes, but
we're aware that:
- We need to label resources managed by CVO individually (see utils/add-labels.libsonnet)
- Items of a XXXList (RoleList in role-specific-namespaces.yaml for example) are missed
- Resources created by some CR are missed (as we don't tell their operators to add the labels)

A draft of the other approach (Add the labels explicitly to each resource) can be found at
machine424@5386735#diff-3f0ac462e0855b3c5693e93fd73febeec9422783681a4a15b2a82f9f40efec89

Signed-off-by: Ayoub Mrini <amrini@redhat.com>
  • Loading branch information
machine424 committed Jun 23, 2023
1 parent c7a4627 commit 6106f35
Show file tree
Hide file tree
Showing 207 changed files with 371 additions and 6 deletions.
Expand Up @@ -5,7 +5,9 @@ metadata:
service.beta.openshift.io/inject-cabundle: "true"
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanagerconfigs.openshift.io
webhooks:
- admissionReviewVersions:
Expand Down
1 change: 1 addition & 0 deletions assets/admission-webhook/pod-disruption-budget.yaml
Expand Up @@ -2,6 +2,7 @@ apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.66.0
Expand Down
Expand Up @@ -5,7 +5,9 @@ metadata:
service.beta.openshift.io/inject-cabundle: "true"
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: prometheus-operator
app.kubernetes.io/part-of: openshift-monitoring
name: prometheusrules.openshift.io
webhooks:
- admissionReviewVersions:
Expand Down
1 change: 1 addition & 0 deletions assets/admission-webhook/service-account.yaml
Expand Up @@ -3,6 +3,7 @@ automountServiceAccountToken: false
kind: ServiceAccount
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.66.0
Expand Down
1 change: 1 addition & 0 deletions assets/admission-webhook/service.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
annotations:
service.beta.openshift.io/serving-cert-secret-name: prometheus-operator-admission-webhook-tls
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: prometheus-operator-admission-webhook
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.66.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager-user-workload/alertmanager.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: user-workload
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
3 changes: 3 additions & 0 deletions assets/alertmanager-user-workload/cluster-role-binding.yaml
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-user-workload
roleRef:
apiGroup: rbac.authorization.k8s.io
Expand Down
3 changes: 3 additions & 0 deletions assets/alertmanager-user-workload/cluster-role.yaml
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-user-workload
rules:
- apiGroups:
Expand Down
Expand Up @@ -3,7 +3,9 @@ data: {}
kind: Secret
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager-user-workload
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-kube-rbac-proxy-metric
namespace: openshift-user-workload-monitoring
stringData:
Expand Down
Expand Up @@ -2,7 +2,9 @@ apiVersion: v1
kind: Secret
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager-user-workload
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-kube-rbac-proxy-tenancy
namespace: openshift-user-workload-monitoring
stringData:
Expand Down
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: user-workload
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager-user-workload/secret.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: user-workload
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager-user-workload/service-account.yaml
Expand Up @@ -5,6 +5,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: user-workload
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager-user-workload/service-monitor.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: user-workload
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager-user-workload/service.yaml
Expand Up @@ -6,6 +6,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: user-workload
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
2 changes: 2 additions & 0 deletions assets/alertmanager-user-workload/trusted-ca-bundle.yaml
Expand Up @@ -3,6 +3,8 @@ data: {}
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
config.openshift.io/inject-trusted-cabundle: "true"
name: alertmanager-trusted-ca-bundle
namespace: openshift-user-workload-monitoring
1 change: 1 addition & 0 deletions assets/alertmanager/alertmanager.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
3 changes: 3 additions & 0 deletions assets/alertmanager/cluster-role-binding.yaml
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-main
roleRef:
apiGroup: rbac.authorization.k8s.io
Expand Down
3 changes: 3 additions & 0 deletions assets/alertmanager/cluster-role.yaml
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-main
rules:
- apiGroups:
Expand Down
2 changes: 2 additions & 0 deletions assets/alertmanager/kube-rbac-proxy-metric-secret.yaml
Expand Up @@ -3,7 +3,9 @@ data: {}
kind: Secret
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager-main
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-kube-rbac-proxy-metric
namespace: openshift-monitoring
stringData:
Expand Down
2 changes: 2 additions & 0 deletions assets/alertmanager/kube-rbac-proxy-secret.yaml
Expand Up @@ -2,7 +2,9 @@ apiVersion: v1
kind: Secret
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager-main
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-kube-rbac-proxy
namespace: openshift-monitoring
stringData:
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager/pod-disruption-budget.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager/prometheus-rule.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
2 changes: 2 additions & 0 deletions assets/alertmanager/proxy-secret.yaml
Expand Up @@ -3,7 +3,9 @@ data: {}
kind: Secret
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager-main
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-main-proxy
namespace: openshift-monitoring
type: Opaque
3 changes: 3 additions & 0 deletions assets/alertmanager/route.yaml
@@ -1,6 +1,9 @@
apiVersion: v1
kind: Route
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: alertmanager-main
namespace: openshift-monitoring
spec:
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager/secret.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager/service-account.yaml
Expand Up @@ -7,6 +7,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager/service-monitor.yaml
Expand Up @@ -4,6 +4,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
1 change: 1 addition & 0 deletions assets/alertmanager/service.yaml
Expand Up @@ -6,6 +6,7 @@ metadata:
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: openshift-monitoring
app.kubernetes.io/version: 0.25.0
Expand Down
2 changes: 2 additions & 0 deletions assets/alertmanager/trusted-ca-bundle.yaml
Expand Up @@ -3,6 +3,8 @@ data: {}
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
config.openshift.io/inject-trusted-cabundle: "true"
name: alertmanager-trusted-ca-bundle
namespace: openshift-monitoring
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: alert-routing-edit
rules:
- apiGroups:
Expand Down
3 changes: 3 additions & 0 deletions assets/cluster-monitoring-operator/cluster-role-view.yaml
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: cluster-monitoring-view
rules:
- apiGroups:
Expand Down
3 changes: 3 additions & 0 deletions assets/cluster-monitoring-operator/federate-client-certs.yaml
Expand Up @@ -2,6 +2,9 @@ apiVersion: v1
data: {}
kind: Secret
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: federate-client-certs
namespace: openshift-monitoring
type: Opaque
3 changes: 3 additions & 0 deletions assets/cluster-monitoring-operator/grpc-tls-secret.yaml
Expand Up @@ -8,6 +8,9 @@ data:
thanos-querier-client.key: ""
kind: Secret
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: grpc-tls
namespace: openshift-monitoring
type: Opaque
3 changes: 3 additions & 0 deletions assets/cluster-monitoring-operator/metrics-client-ca.yaml
Expand Up @@ -2,5 +2,8 @@ apiVersion: v1
data: {}
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: metrics-client-ca
namespace: openshift-monitoring
3 changes: 3 additions & 0 deletions assets/cluster-monitoring-operator/metrics-client-certs.yaml
Expand Up @@ -2,6 +2,9 @@ apiVersion: v1
data: {}
kind: Secret
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: metrics-client-certs
namespace: openshift-monitoring
type: Opaque
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: monitoring-alertmanager-edit
namespace: openshift-monitoring
rules:
Expand Down
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: monitoring-edit
rules:
- apiGroups:
Expand Down
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: monitoring-rules-edit
rules:
- apiGroups:
Expand Down
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: monitoring-rules-view
rules:
- apiGroups:
Expand Down
1 change: 1 addition & 0 deletions assets/cluster-monitoring-operator/prometheus-rule.yaml
Expand Up @@ -3,6 +3,7 @@ kind: PrometheusRule
metadata:
labels:
app.kubernetes.io/component: operator
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
prometheus: k8s
Expand Down
2 changes: 2 additions & 0 deletions assets/cluster-monitoring-operator/service-monitor.yaml
Expand Up @@ -2,7 +2,9 @@ apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/name: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: cluster-monitoring-operator
namespace: openshift-monitoring
spec:
Expand Down
@@ -1,6 +1,9 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
labels:
app.kubernetes.io/managed-by: cluster-monitoring-operator
app.kubernetes.io/part-of: openshift-monitoring
name: user-workload-monitoring-config-edit
namespace: openshift-user-workload-monitoring
rules:
Expand Down

0 comments on commit 6106f35

Please sign in to comment.