1.32. 5.4 로깅

5.4 로깅에 사용할 수 있는 권장 사항: Red Hat OpenShift 릴리스 5.4용 로깅 하위 시스템

1.32.1. 기술 프리뷰

중요

vector는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.

1.32.2. 벡터 정보

vector는 로깅 하위 시스템의 현재 기본 수집기에 대한 기술 검토 대안으로 제공되는 로그 수집기입니다.

지원되는 출력은 다음과 같습니다.

  • elasticsearch. 외부 Elasticsearch 인스턴스입니다. elasticsearch 출력은 TLS 연결을 사용할 수 있습니다.
  • kafka. Kafka 브로커. kafka 출력은 보안되지 않은 또는 TLS 연결을 사용할 수 있습니다.
  • loki. 수평으로 확장 가능한 고가용성 다중 테넌트 로그 집계 시스템인 Loki입니다.

1.32.2.1. 벡터 활성화

벡터는 기본적으로 활성화되어 있지 않습니다. 다음 단계를 사용하여 OpenShift Container Platform 클러스터에서 벡터를 활성화합니다.

중요

벡터는 FIPS 활성화된 클러스터를 지원하지 않습니다.

사전 요구 사항

  • OpenShift Container Platform: 4.12
  • logging subsystem for Red Hat OpenShift: 5.4
  • FIPS 비활성화

절차

  1. openshift-logging 프로젝트에서 ClusterLogging 사용자 정의 리소스(CR)를 편집합니다.

    $ oc -n openshift-logging edit ClusterLogging instance
  2. ClusterLogging 사용자 정의 리소스(CR)에 logging.openshift.io/preview-vector-collector: enabled 주석을 추가합니다.
  3. ClusterLogging 사용자 정의 리소스(CR)에 컬렉션 유형으로 vector 를 추가합니다.
  apiVersion: "logging.openshift.io/v1"
  kind: "ClusterLogging"
  metadata:
    name: "instance"
    namespace: "openshift-logging"
    annotations:
      logging.openshift.io/preview-vector-collector: enabled
  spec:
    collection:
      logs:
        type: "vector"
        vector: {}

추가 리소스

중요

Loki Operator는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.

1.32.3. 자주하는 질문

Loki는 현재 로깅 하위 시스템의 로그 저장소로 Elasticsearch의 대안으로 제공되는 수평적 확장이 가능하고 가용성이 높은 다중 테넌트 로그 집계 시스템입니다.

추가 리소스

1.32.3.1. Deploying the Lokistack 배포

OpenShift Container Platform 웹 콘솔을 사용하여 Loki Operator를 설치할 수 있습니다.

사전 요구 사항

  • OpenShift Container Platform: 4.12
  • logging subsystem for Red Hat OpenShift: 5.4

OpenShift Container Platform 웹 콘솔을 사용하여 Loki Operator를 설치하려면 다음을 수행합니다.

  1. Loki Operator를 설치합니다.

    1. OpenShift Container Platform 웹 콘솔에서 OperatorOperatorHub를 클릭합니다.
    2. 사용 가능한 Operator 목록에서 Loki Operator 를 선택한 다음 설치를 클릭합니다.
    3. 설치 모드에서 클러스터의 모든 네임스페이스를 선택합니다.
    4. 설치된 네임스페이스에서 openshift -operators-redhat 을 선택합니다.

      openshift-operators-redhat 네임스페이스를 지정해야 합니다. openshift-operators 네임스페이스에 신뢰할 수 없는 Community Operator가 포함될 수 있고, 여기에서 OpenShift Container Platform 지표와 동일한 이름의 지표를 게시하면 충돌이 발생합니다.

    5. 이 네임스페이스에서 Operator 권장 클러스터 모니터링 사용을 선택합니다.

      이 옵션은 네임스페이스 오브젝트에서 openshift.io/cluster-monitoring: "true" 레이블을 설정합니다. 클러스터 모니터링이 openshift-operators-redhat 네임스페이스를 스크랩하도록 하려면 이 옵션을 선택해야 합니다.

    6. 승인 전략을 선택합니다.

      • 자동 전략을 사용하면 Operator 새 버전이 준비될 때 OLM(Operator Lifecycle Manager)이 자동으로 Operator를 업데이트할 수 있습니다.
      • 수동 전략을 사용하려면 적절한 자격 증명을 가진 사용자가 Operator 업데이트를 승인해야 합니다.
    7. 설치를 클릭합니다.
    8. Loki Operator를 설치했는지 확인합니다. Operator → 설치된 Operator 페이지를 방문하여 "Loki Operator"를 찾습니다.
    9. StatusSucceeded 인 모든 프로젝트에 Loki Operator 가 나열되어 있는지 확인합니다.

1.32.4. 버그 수정

  • 이번 업데이트 이전에는 cluster-logging-operator 에서 클러스터 범위 역할 및 바인딩을 사용하여 메트릭을 스크랩할 Prometheus 서비스 계정에 대한 권한을 설정했습니다. 이러한 권한은 콘솔 인터페이스를 사용하여 Operator를 배포할 때 생성되었지만 명령줄에서 배포할 때 누락되었습니다. 이번 업데이트에서는 역할 및 바인딩 네임스페이스 범위를 작성하여 문제를 해결합니다. (LOG-2286)
  • 이번 업데이트 이전에는 대시보드 조정을 수정하기 전에 ownerReferences 필드가 네임스페이스 간 리소스에 도입되었습니다. 결과적으로 네임스페이스에 구성 맵과 대시보드가 생성되지 않았습니다. 이번 업데이트를 통해 ownerReferences 필드를 제거하면 문제가 해결되고 콘솔에서 OpenShift Logging 대시보드를 사용할 수 있습니다. (LOG-2163)
  • 이번 업데이트 이전에는 cluster-logging-operator 에서 대시보드가 포함된 기존 및 수정된 구성 맵을 올바르게 비교하지 않았기 때문에 메트릭 대시보드 변경 사항이 배포되지 않았습니다. 이번 업데이트를 통해 오브젝트 레이블에 고유한 해시 값을 추가하면 문제가 해결됩니다. (LOG-2071)
  • 이번 업데이트 이전에는 OpenShift Logging 대시보드에 지난 24시간 동안 수집된 컨테이너를 최상위로 생성하는 테이블이 있는 Pod 및 네임스페이스를 올바르게 표시하지 않았습니다. 이번 업데이트를 통해 Pod 및 네임스페이스가 올바르게 표시됩니다. (LOG-2069)
  • 이번 업데이트 이전에는 Elasticsearch OutputDefault 및 Elasticsearch 출력에 구조화된 키가 없는 경우 생성된 구성에 잘못된 인증 값이 포함되어 있었습니다. 이번 업데이트에서는 사용된 시크릿 및 인증서가 수정되었습니다. (LOG-2056)
  • 이번 업데이트 이전에는 유효하지 않은 메트릭에 대한 참조로 인해 OpenShift Logging 대시보드에 빈 CPU 그래프가 표시되었습니다. 이번 업데이트를 통해 올바른 데이터 지점을 선택하여 문제를 해결합니다. (LOG-2026)
  • 이번 업데이트 이전에는 Fluentd 컨테이너 이미지에 런타임 시 불필요한 빌더 도구가 포함되어 있었습니다. 이번 업데이트에서는 이미지에서 해당 툴을 제거합니다.(LOG-1927)
  • 이번 업데이트 이전에는 5.3 릴리스에서 배포된 수집기의 이름 변경을 통해 로깅 수집기가 FluentdNodeDown 경고를 생성했습니다. 이번 업데이트에서는 Prometheus 경고의 작업 이름을 수정하여 이 문제를 해결합니다. (LOG-1918)
  • 이번 업데이트 이전에는 구성 요소 이름 변경의 리팩토링으로 인해 로그 수집기에서 자체 로그를 수집하고 있었습니다. 이로 인해 수집기가 자체 로그를 처리하는 잠재적인 피드백 루프가 발생하여 메모리 및 로그 메시지 크기 문제가 발생할 수 있습니다. 이번 업데이트에서는 컬렉션에서 수집기 로그를 제외하여 문제를 해결합니다. (LOG-1774)
  • 이번 업데이트 이전에는 PVC가 이미 존재하는 경우 forbidden: exceeded: infra-storage-quota.로 인해 Elasticsearch에서 Unable to create PersistentVolumeClaim 오류를 생성했습니다. 이번 업데이트를 통해 Elasticsearch는 기존 PVC를 확인하여 문제를 해결합니다. (LOG-2131)
  • 이번 업데이트 이전에는 elasticsearch-signing secret이 제거되었을 때 Elasticsearch가 준비 상태로 되돌릴 수 없었습니다. 이번 업데이트를 통해 Elasticsearch는 해당 시크릿을 제거한 후 준비 상태로 되돌릴 수 있습니다. (LOG-2171)
  • 이번 업데이트 이전에는 수집기에서 컨테이너 로그를 읽는 경로 변경으로 인해 수집기에서 일부 레코드를 잘못된 인덱스로 전달합니다. 이번 업데이트를 통해 이제 수집기에서 올바른 구성을 사용하여 문제를 해결합니다. (LOG-2160)
  • 이번 업데이트 이전에는 다수의 네임스페이스가 있는 클러스터에서 네임스페이스 목록이 최대 헤더 크기 제한에 도달했기 때문에 Elasticsearch가 요청 제공을 중지했습니다. 이번 업데이트를 통해 헤더에는 네임스페이스 이름 목록만 포함되어 문제를 해결합니다. (LOG-1899)
  • 이번 업데이트 이전에는 Elasticsearch에 'x' 노드가 있는 경우 OpenShift Container Platform 로깅 대시보드에 실제 값보다 큰 shard 'x' 시간이 표시되었습니다. 이 문제는 각 Elasticsearch Pod의 모든 기본 shard를 인쇄하고 합계를 계산했기 때문에 전체 Elasticsearch 클러스터에 대해 출력이 항상 실행되었기 때문입니다. 이번 업데이트를 통해 shard 수가 올바르게 계산됩니다. (LOG-2156)
  • 이번 업데이트 이전에는 시크릿 kibanakibana-proxy 가 수동으로 삭제되면 다시 생성되지 않았습니다. 이번 업데이트를 통해 elasticsearch-operator 는 리소스를 모니터링하고 삭제한 경우 자동으로 다시 생성합니다. (LOG-2250)
  • 이번 업데이트 이전에는 버퍼 청크 크기를 튜닝하면 수집기에서 이벤트 스트림의 바이트 제한을 초과하는 청크 크기에 대한 경고를 생성할 수 있었습니다. 이번 업데이트를 통해 읽기 라인 제한을 조정하여 문제를 해결할 수도 있습니다. (LOG-2379)
  • 이번 업데이트 이전에는 OpenShift 웹 콘솔의 로깅 콘솔 링크가 ClusterLogging CR을 사용하여 제거되지 않았습니다. 이번 업데이트를 통해 CR을 삭제하거나 Cluster Logging Operator를 설치 제거하는 경우 해당 링크가 제거됩니다. (LOG-2373)
  • 이번 업데이트 이전에는 컨테이너 로그 경로를 변경하면 컬렉션 메트릭이 원래 경로로 구성된 이전 릴리스가 포함된 항상 0이 되었습니다. 이번 업데이트를 통해 수집된 로그에 대한 지표를 표시하는 플러그인은 문제를 해결하기 위해 두 경로에서 읽기를 지원합니다. (LOG-2462)

1.32.5. CVE