3.4.3. 모니터링 솔루션 이동

기본적으로 Prometheus, Grafana 및 AlertManager가 포함된 Prometheus Cluster Monitoring 스택은 클러스터 모니터링을 제공하기 위해 배포됩니다. 이는 Cluster Monitoring Operator가 관리합니다. 이러한 구성 요소를 다른 머신으로 이동하려면 사용자 정의 구성 맵을 생성하고 적용해야 합니다.

프로세스

  1. 다음 ConfigMap 정의를 cluster-monitoring-configmap.yaml 파일로 저장합니다.

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: cluster-monitoring-config
      namespace: openshift-monitoring
    data:
      config.yaml: |+
        alertmanagerMain:
          nodeSelector:
            node-role.kubernetes.io/infra: ""
        prometheusK8s:
          nodeSelector:
            node-role.kubernetes.io/infra: ""
        prometheusOperator:
          nodeSelector:
            node-role.kubernetes.io/infra: ""
        grafana:
          nodeSelector:
            node-role.kubernetes.io/infra: ""
        k8sPrometheusAdapter:
          nodeSelector:
            node-role.kubernetes.io/infra: ""
        kubeStateMetrics:
          nodeSelector:
            node-role.kubernetes.io/infra: ""
        telemeterClient:
          nodeSelector:
            node-role.kubernetes.io/infra: ""
        openshiftStateMetrics:
          nodeSelector:
            node-role.kubernetes.io/infra: ""
        thanosQuerier:
          nodeSelector:
            node-role.kubernetes.io/infra: ""

    이 구성 맵을 실행하면 모니터링 스택의 구성 요소가 인프라 노드에 재배포됩니다.

  2. 새 구성 맵을 적용합니다.

    $ oc create -f cluster-monitoring-configmap.yaml
  3. 모니터링 pod가 새 머신으로 이동하는 것을 확인합니다.

    $ watch 'oc get pod -n openshift-monitoring -o wide'
  4. 구성 요소가 infra 노드로 이동하지 않은 경우 이 구성 요소가 있는 pod를 제거합니다.

    $ oc delete pod -n openshift-monitoring <pod>

    삭제된 pod의 구성 요소가 infra 노드에 다시 생성됩니다.