1.32. Logging 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 클러스터에서 벡터를 활성화합니다.

사전 요구 사항

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

절차

  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)에 벡터 를 컬렉션 유형으로 추가합니다.
  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. Lokistack 배포

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

사전 요구 사항

  • OpenShift Container Platform: 4.13
  • 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 대시보드를 사용할 수 있습니다. (로그-2163)
  • 이번 업데이트 이전에는 cluster-logging-operator 에서 대시보드가 포함된 기존 및 수정된 구성 맵을 올바르게 비교하지 않았기 때문에 메트릭 대시보드 변경 사항이 배포되지 않았습니다. 이번 업데이트를 통해 오브젝트 라벨에 고유한 해시 값을 추가하면 문제가 해결됩니다. (로그-2071)
  • 이번 업데이트 이전에는 OpenShift Logging 대시 보드에서 지난 24 시간 동안 수집된 최고 생성 컨테이너를 표시하는 테이블에 Pod 및 네임스페이스를 올바르게 표시하지 않았습니다. 이번 업데이트를 통해 Pod 및 네임스페이스가 올바르게 표시됩니다. (LOG-2069)
  • 이번 업데이트 이전에는 ClusterLogForwarderElasticsearch OutputDefault 로 설정되고 Elasticsearch 출력에 구조화된 키가 없는 경우 생성된 구성에 인증에 대한 잘못된 값이 포함되었습니다. 이번 업데이트에서는 사용된 보안 및 인증서가 수정되었습니다. (로그-2056)
  • 이번 업데이트 이전에는 잘못된 메트릭에 대한 참조로 인해 OpenShift Logging 대시보드에 빈 CPU 그래프가 표시되었습니다. 이번 업데이트를 통해 올바른 데이터 요소가 선택되어 문제를 해결합니다. (로그-2026)
  • 이번 업데이트 이전에는 Fluentd 컨테이너 이미지에 런타임에 불필요한 빌더 툴이 포함되어 있었습니다. 이번 업데이트에서는 이미지에서 이러한 툴을 제거합니다. (LOG-1927)
  • 이번 업데이트 이전에는 5.3 릴리스에서 배포된 수집기의 이름 변경으로 인해 로깅 수집기에서 FluentdNodeDown 경고를 생성했습니다. 이번 업데이트에서는 Prometheus 경고의 작업 이름을 수정하여 문제를 해결합니다. (LOG-1918)
  • 이번 업데이트 이전에는 구성 요소 이름 변경의 리팩터링으로 인해 로그 수집기에서 자체 로그를 수집했습니다. 이로 인해 수집기에서 자체 로그를 처리할 가능성이 있는 피드백 루프가 발생하여 메모리 및 로그 메시지 크기 문제가 발생할 수 있습니다. 이번 업데이트에서는 컬렉션에서 수집기 로그를 제외하여 문제를 해결합니다. (로그-1774)
  • 이번 업데이트 이전에는 Elasticsearch에서 forbidden: exceeded quota: infra-storage-quota. PVC가 이미 존재하는 경우 Unable to create PersistentVolumeClaim을 생성할 수 없음 오류를 생성했습니다. 이번 업데이트를 통해 Elasticsearch는 기존 PVC를 확인하고 문제를 해결합니다. (로그-2131)
  • 이번 업데이트 이전에는 elasticsearch-signing secret이 제거될 때 Elasticsearch를 ready 상태로 되돌릴 수 없었습니다. 이번 업데이트를 통해 Elasticsearch는 해당 보안이 제거된 후 ready 상태로 돌아갈 수 있습니다. (LOG-2171)
  • 이번 업데이트 이전에는 수집기에서 컨테이너 로그를 읽는 경로의 변경으로 인해 수집기에서 일부 레코드를 잘못된 인덱스로 전달합니다. 이번 업데이트를 통해 수집기에서 올바른 구성을 사용하여 문제를 해결합니다. (로그-2160)
  • 이번 업데이트 이전에는 네임스페이스 목록이 최대 헤더 크기 제한에 도달했기 때문에 Elasticsearch가 요청 서비스를 중지했습니다. 이번 업데이트를 통해 헤더에는 네임스페이스 이름 목록만 포함되어 문제를 해결합니다. (LOG-1899)
  • 이번 업데이트 이전에는 OpenShift Container Platform 로깅 대시보드에 Elasticsearch 노드가 'x'인 경우 실제 값보다 shards 'x' 횟수가 표시되었습니다. 이 문제는 각 Elasticsearch Pod의 모든 기본 shard를 출력하고 합계를 계산했기 때문에 발생했습니다. 출력이 항상 전체 Elasticsearch 클러스터입니다. 이번 업데이트를 통해 이제 shard 수가 올바르게 계산됩니다. (로그-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