1.23. logging 5.4
다음 권고는 로깅 5.4: Red Hat OpenShift 릴리스 5.4의 로깅 하위 시스템에 사용할수 있습니다.
1.23.1. 기술 프리뷰
벡터는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
1.23.2. 벡터 정보
vector는 로깅 하위 시스템의 현재 기본 수집기에 대한 기술 프리뷰 대안으로 제공되는 로그 수집기입니다.
다음 출력이 지원됩니다.
-
elasticsearch
. 외부 Elasticsearch 인스턴스입니다.elasticsearch
출력은 TLS 연결을 사용할 수 있습니다. -
kafka
. Kafka 브로커.kafka
출력은 비보안 또는 TLS 연결을 사용할 수 있습니다. -
loki
. 수평으로 확장 가능한 고가용성 다중 테넌트 로그 집계 시스템인 Loki입니다.
1.23.2.1. 벡터 활성화
벡터는 기본적으로 활성화되어 있지 않습니다. 다음 단계를 사용하여 OpenShift Container Platform 클러스터에서 벡터를 활성화합니다.
벡터는 FIPS 활성화된 클러스터를 지원하지 않습니다.
사전 요구 사항
- OpenShift Container Platform: 4.10
- Red Hat OpenShift의 로깅 하위 시스템: 5.4
- FIPS 비활성화
프로세스
openshift-logging
프로젝트에서ClusterLogging
사용자 정의 리소스(CR)를 편집합니다.$ oc -n openshift-logging edit ClusterLogging instance
-
ClusterLogging
사용자 정의 리소스(CR)에logging.openshift.io/preview-vector-collector: enabled
주석을 추가합니다. -
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.23.3. Loki 정보
Loki는 수평적으로 확장 가능하고 가용성이 높은 멀티 테넌트 로그 집계 시스템으로 현재 로깅 하위 시스템의 로그 저장소로 Elasticsearch에 대한 대안으로 제공됩니다.
추가 리소스
1.23.3.1. Lokistack 배포
OpenShift Container Platform 웹 콘솔을 사용하여 LokiOperator를 설치할 수 있습니다.
사전 요구 사항
- OpenShift Container Platform: 4.10
- Red Hat OpenShift의 로깅 하위 시스템: 5.4
OpenShift Container Platform 웹 콘솔을 사용하여 LokiOperator를 설치하려면 다음을 수행합니다.
LokiOperator를 설치합니다.
-
OpenShift Container Platform 웹 콘솔에서 Operator
OperatorHub를 클릭합니다. - 사용 가능한 Operator 목록에서 LokiOperator 를 선택하고 설치를 클릭합니다.
- 설치 모드에서 클러스터의 모든 네임스페이스를 선택합니다.
설치된 네임스페이스 에서 openshift-operators-redhat 을 선택합니다.
openshift-operators-redhat
네임스페이스를 지정해야 합니다.openshift-operators
네임스페이스에 신뢰할 수 없는 Community Operator가 포함될 수 있고, 여기에서 OpenShift Container Platform 지표와 동일한 이름의 지표를 게시하면 충돌이 발생합니다.이 네임스페이스에서 Operator 권장 클러스터 모니터링 사용을 선택합니다.
이 옵션은 네임스페이스 오브젝트에서
openshift.io/cluster-monitoring: "true"
레이블을 설정합니다. 클러스터 모니터링이openshift-operators-redhat
네임스페이스를 스크랩하도록 하려면 이 옵션을 선택해야 합니다.승인 전략을 선택합니다.
- 자동 전략을 사용하면 Operator 새 버전이 준비될 때 OLM(Operator Lifecycle Manager)이 자동으로 Operator를 업데이트할 수 있습니다.
- 수동 전략을 사용하려면 적절한 자격 증명을 가진 사용자가 Operator 업데이트를 승인해야 합니다.
- 설치를 클릭합니다.
-
LokiOperator가 설치되었는지 확인합니다. Operator
설치된 Operator 페이지를 방문하여 "LokiOperator"를 찾습니다. - 상태가 성공인 모든 프로젝트에 LokiOperator 가 나열되어 있는지 확인합니다.
-
OpenShift Container Platform 웹 콘솔에서 Operator
1.23.4. 버그 수정
-
이번 업데이트 이전에는
cluster-logging-operator
에서 클러스터 범위 역할 및 바인딩을 사용하여 지표를 스크랩하는 Prometheus 서비스 계정에 대한 권한을 설정했습니다. 이러한 권한은 콘솔 인터페이스를 사용하여 Operator를 배포할 때 생성되었지만 명령줄에서 배포할 때 누락되었습니다. 이번 업데이트에서는 roles 및 bindings 네임스페이스 범위를 설정하여 문제를 해결합니다. (LOG-2286) -
이번 업데이트 이전에는 수정 대시보드 조정에 대한 이전 변경 사항으로 네임스페이스 간 리소스에
ownerReferences
필드가 도입되었습니다. 결과적으로 네임스페이스에 구성 맵과 대시보드가 생성되지 않았습니다. 이번 업데이트를 통해ownerReferences
필드가 제거되어 문제가 해결되고 콘솔에서 OpenShift Logging 대시보드를 사용할 수 있습니다. (LOG-2163) -
이번 업데이트 이전에는
cluster-logging-operator
가 대시보드가 포함된 기존 및 수정된 구성 맵과 올바르게 비교되지 않았기 때문에 메트릭 대시보드 변경 사항이 배포되지 않았습니다. 이번 업데이트를 통해 오브젝트 라벨에 고유한 해시 값을 추가하면 문제가 해결됩니다. (LOG-2071) - 이번 업데이트 이전에는 OpenShift Logging 대시보드에 최근 24시간 동안 수집된 상위 생성 컨테이너가 표시되는 테이블에 Pod 및 네임스페이스가 올바르게 표시되지 않았습니다. 이번 업데이트를 통해 Pod 및 네임스페이스가 올바르게 표시됩니다. (LOG-2069)
-
이번 업데이트 이전에는
Elasticsearch OutputDefault
및 Elasticsearch 출력에 구조화된 키가 없는ClusterLogForwarder
가 설정된 경우 생성된 구성에 인증에 대한 잘못된 값이 포함되어 있습니다. 이번 업데이트에서는 사용된 보안 및 인증서가 수정되었습니다. (LOG-2056) - 이번 업데이트 이전에는 잘못된 메트릭에 대한 참조로 인해 OpenShift Logging 대시보드에 빈 CPU 그래프가 표시되었습니다. 이번 업데이트를 통해 올바른 데이터 지점을 선택하여 문제를 해결합니다. (LOG-2026)
- 이번 업데이트 이전에는 Fluentd 컨테이너 이미지에 런타임 시 불필요한 빌더 툴이 포함되어 있었습니다. 이번 업데이트에서는 이미지에서 이러한 도구를 제거합니다. (LOG-1927)
-
이번 업데이트 이전에는 5.3 릴리스에 배포된 수집기의 이름 변경으로 인해 로깅 수집기에서
FluentdNodeDown
경고가 생성되었습니다. 이번 업데이트에서는 Prometheus 경고의 작업 이름을 수정하여 문제를 해결합니다. (LOG-1918) - 이번 업데이트 이전에는 구성 요소 이름의 리팩토링으로 인해 로그 수집기에서 자체 로그를 수집했습니다. 이로 인해 수집기의 피드백 루프가 메모리 및 로그 메시지 크기 문제가 발생할 수 있는 자체 로그를 처리할 수 있습니다.This lead to a potential feedback loop of the collector processing its own log that might result in memory and log message size issues. 이번 업데이트에서는 컬렉션에서 수집기 로그를 제외하여 문제를 해결합니다. (LOG-1774)
-
이번 업데이트 이전에는 PVC가
이미 존재하는 경우 forbidden: forbidden: exceeded quota: infra-storage-quota.
이번 업데이트를 통해 Elasticsearch는 기존 PVC를 확인하여 문제를 해결합니다. (LOG-2131) -
이번 업데이트 이전에는
elasticsearch-signing
secret이 제거되었을 때 Elasticsearch가 ready 상태로 돌아갈 수 없었습니다. 이번 업데이트를 통해 Elasticsearch는 해당 시크릿이 제거된 후 ready 상태로 돌아갈 수 있습니다. (LOG-2171) - 이번 업데이트 이전에는 수집기에서 컨테이너 로그를 읽는 경로 변경으로 인해 수집기에서 일부 레코드를 잘못된 인덱스로 전달했습니다. 이번 업데이트를 통해 이제 수집기에서 올바른 구성을 사용하여 문제를 해결합니다. (LOG-2160)
- 이번 업데이트 이전에는 네임스페이스 수가 많은 클러스터에서 네임스페이스 목록에 최대 헤더 크기 제한에 도달했기 때문에 요청 제공이 중지되었습니다. 이번 업데이트를 통해 헤더에는 네임스페이스 이름 목록만 포함되어 문제를 해결합니다. (LOG-1899)
- 이번 업데이트 이전에는 OpenShift Container Platform 로깅 대시보드에 Elasticsearch의 노드가 'x'인 경우 shard 'x' 횟수가 실제 값보다 큰 수가 표시되었습니다. 이 문제는 각 Elasticsearch Pod에 대한 모든 기본 shard를 출력하고 전체 Elasticsearch 클러스터에 대한 출력이 항상 전송되었지만 이로 인한 합계를 계산하기 때문에 발생했습니다. 이번 업데이트를 통해 이제 shard 수가 올바르게 계산됩니다. (LOG-2156)
-
이번 업데이트 이전에는 수동으로 삭제된 경우 secrets
kibana
및kibana-proxy
가 다시 생성되지 않았습니다. 이번 업데이트를 통해elasticsearch-operator
는 리소스를 감시하고 삭제된 경우 자동으로 다시 생성합니다. (LOG-2250) - 이번 업데이트 이전에는 버퍼 청크 크기를 튜닝하면 수집기에서 이벤트 스트림의 바이트 제한을 초과하는 청크 크기에 대한 경고를 생성할 수 있습니다. 이번 업데이트를 통해 읽기 행 제한을 조정하여 문제를 해결할 수도 있습니다. (LOG-2379)
- 이번 업데이트 이전에는 OpenShift 웹 콘솔의 로깅 콘솔 링크가 ClusterLogging CR에서 제거되지 않았습니다. 이번 업데이트를 통해 CR을 삭제하거나 Cluster Logging Operator를 제거하면 링크가 제거됩니다. (LOG-2373)
- 이번 업데이트 이전에는 컨테이너 로그 경로를 변경하면 원래 경로로 구성된 이전 릴리스와 함께 collection 메트릭이 항상 0이 되었습니다. 이번 업데이트를 통해 수집된 로그에 대한 지표를 표시하는 플러그인은 문제를 해결하기 위해 두 경로에서 읽기를 지원합니다. (LOG-2462)