apiVersion: v1 kind: ServiceAccount metadata: name: pgo-metrics-deployer-sa namespace: pgo labels: app.kubernetes.io/name: postgres-operator-monitoring --- kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: name: pgo-metrics-deployer-cr labels: app.kubernetes.io/name: postgres-operator-monitoring rules: - apiGroups: - '' resources: - namespaces verbs: - get - list - create - patch - delete - apiGroups: - '' resources: - secrets verbs: - list - get - create - delete - apiGroups: - '' resources: - configmaps - services - persistentvolumeclaims verbs: - get - create - delete - list - apiGroups: - '' resources: - serviceaccounts verbs: - get - create - delete - patch - list - apiGroups: - apps - extensions resources: - deployments verbs: - get - list - watch - create - delete - apiGroups: - rbac.authorization.k8s.io resources: - clusterroles - clusterrolebindings verbs: - get - create - delete - bind - escalate --- apiVersion: v1 kind: ConfigMap metadata: name: pgo-metrics-deployer-cm namespace: pgo labels: app.kubernetes.io/name: postgres-operator-monitoring data: values.yaml: |- # ===================== # Configuration Options # More info for these options can be found in the docs # https://access.crunchydata.com/documentation/postgres-operator/latest/installation/metrics/metrics-configuration/ # ===================== alertmanager_custom_config: "" alertmanager_custom_rules_config: "" alertmanager_install: "true" alertmanager_log_level: "info" alertmanager_port: "9093" alertmanager_service_name: "crunchy-alertmanager" alertmanager_service_type: "ClusterIP" alertmanager_storage_access_mode: "ReadWriteOnce" alertmanager_storage_class_name: "" alertmanager_supplemental_groups: "" alertmanager_volume_size: "1Gi" create_rbac: "true" db_port: "5432" delete_metrics_namespace: "false" disable_fsgroup: "false" grafana_admin_password: "admin" grafana_admin_username: "admin" grafana_dashboards_custom_config: "" grafana_datasources_custom_config: "" grafana_install: "true" grafana_port: "3000" grafana_service_name: "crunchy-grafana" grafana_service_type: "ClusterIP" grafana_storage_access_mode: "ReadWriteOnce" grafana_storage_class_name: "" grafana_supplemental_groups: "" grafana_volume_size: "1Gi" metrics_image_pull_secret: "" metrics_image_pull_secret_manifest: "" metrics_namespace: "pgo" pgbadgerport: "10000" prometheus_custom_config: "" prometheus_install: "true" prometheus_port: "9090" prometheus_service_name: "crunchy-prometheus" prometheus_service_type: "ClusterIP" prometheus_storage_access_mode: "ReadWriteOnce" prometheus_storage_class_name: "" prometheus_supplemental_groups: "" prometheus_volume_size: "1Gi" --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: pgo-metrics-deployer-crb labels: app.kubernetes.io/name: postgres-operator-monitoring roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: pgo-metrics-deployer-cr subjects: - kind: ServiceAccount name: pgo-metrics-deployer-sa namespace: pgo --- apiVersion: batch/v1 kind: Job metadata: name: pgo-metrics-deploy namespace: pgo labels: app.kubernetes.io/name: postgres-operator-monitoring spec: backoffLimit: 0 template: metadata: name: pgo-metrics-deploy labels: app.kubernetes.io/name: postgres-operator-monitoring spec: serviceAccountName: pgo-metrics-deployer-sa restartPolicy: Never containers: - name: pgo-metrics-deploy image: registry.developers.crunchydata.com/crunchydata/pgo-deployer:centos8-4.6.0 imagePullPolicy: IfNotPresent env: - name: DEPLOY_ACTION value: install-metrics - name: PLAYBOOK value: metrics volumeMounts: - name: deployer-conf mountPath: "/conf" volumes: - name: deployer-conf configMap: name: pgo-metrics-deployer-cm