1장. Logging 6.2
1.1. 지원
이 문서에 설명된 구성 옵션만 로깅에 지원됩니다.
다른 구성 옵션은 지원되지 않으므로 사용하지 마십시오. 구성 패러다임은 OpenShift Container Platform 릴리스마다 변경될 수 있으며 이러한 경우는 모든 구성 가능성이 제어되는 경우에만 정상적으로 처리될 수 있습니다. 이 문서에 설명된 것과 다른 구성을 사용하는 경우 Operator는 차이점을 조정하도록 설계되었으므로 변경 사항을 덮어씁니다.
OpenShift Container Platform 설명서에 설명되지 않은 구성을 수행해야 하는 경우 Red Hat OpenShift Logging Operator를 Unmanaged
로 설정해야 합니다. 관리되지 않는 로깅 인스턴스는 지원되지 않으며 Managed
로 상태를 반환할 때까지 업데이트를 받지 않습니다.
로깅은 코어 OpenShift Container Platform과 별도의 릴리스 사이클을 사용하여 설치 가능한 구성 요소로 제공됩니다. Red Hat OpenShift Container Platform 라이프 사이클 정책은 릴리스 호환성에 대해 간단히 설명합니다.
Loki는 수평으로 확장 가능한 고가용성 다중 테넌트 로그 집계 시스템으로 OpenShift Observability UI로 시각화할 수 있는 Red Hat OpenShift의 로깅을 위한 GA 로그 저장소로 제공됩니다. OpenShift Logging에서 제공하는 Loki 구성은 사용자가 수집된 로그를 사용하여 빠른 문제 해결을 수행할 수 있도록 설계된 단기 로그 저장소입니다. 이를 위해 Loki의 Red Hat OpenShift 구성에 대한 로깅은 단기 스토리지가 있으며 최근 쿼리에 최적화되어 있습니다.
장기간의 기간 동안의 스토리지 또는 쿼리의 경우 사용자는 클러스터 외부에 있는 저장소를 로그하려고 합니다. Loki 크기 조정은 최대 30일 동안 단기 스토리지에서만 테스트 및 지원됩니다.
Red Hat OpenShift에 대한 로깅은 애플리케이션, 인프라 및 감사 로그의 의견이 지정된 수집기 및 노멀라이저입니다. 다양한 지원되는 시스템으로 로그를 전달하는 데 사용됩니다.
로깅은 다음과 같습니다.
- 높은 수준의 로그 수집 시스템
- SIEM(Security Information and Event Monitoring) 준수
- "Bring your own"(BYO) 로그 수집기 구성
- 기록 또는 장기 로그 보존 또는 스토리지
- 보장된 로그 싱크
- 보안 스토리지 - 감사 로그는 기본적으로 저장되지 않습니다.
1.1.1. 지원되는 API 사용자 정의 리소스 정의
다음 표에서는 지원되는 로깅 API를 설명합니다.
CRD(CustomResourceDefinition) | ApiVersion | 지원 상태 |
---|---|---|
LokiStack | lokistack.loki.grafana.com/v1 | 5.5에서 지원 |
RulerConfig | rulerconfig.loki.grafana/v1 | 5.7에서 지원 |
AlertingRule | alertingrule.loki.grafana/v1 | 5.7에서 지원 |
RecordingRule | recordingrule.loki.grafana/v1 | 5.7에서 지원 |
LogFileMetricExporter | LogFileMetricExporter.logging.openshift.io/v1alpha1 | 5.8 지원 |
ClusterLogForwarder | clusterlogforwarder.observability.openshift.io/v1 | 6.0에서 지원 |
1.1.2. 지원되지 않는 로깅 구성
다음 구성 요소를 수정하려면 Red Hat OpenShift Logging Operator를 Unmanaged
상태로 설정해야 합니다.
- 수집기 구성 파일
- 수집기 데몬 세트
명시적으로 지원되지 않는 경우는 다음과 같습니다.
- 환경 변수를 사용하여 로깅 수집기 구성. 환경 변수를 사용하여 로그 수집기를 수정할 수 없습니다.
- 로그 수집기에서 로그를 정규화하는 방법 구성. 기본 로그 정규화를 수정할 수 없습니다.
1.1.3. 관리되지 않는 Operator에 대한 지원 정책
Operator의 관리 상태는 Operator가 설계 의도에 따라 클러스터의 해당 구성 요소에 대한 리소스를 적극적으로 관리하고 있는지 여부를 판별합니다. Unmanaged 상태로 설정된 Operator는 구성 변경에 응답하지 않고 업데이트되지도 않습니다.
비프로덕션 클러스터 또는 디버깅 중에는 이 기능이 유용할 수 있지만, Unmanaged 상태의 Operator는 지원되지 않으며 개별 구성 요소의 구성 및 업그레이드를 클러스터 관리자가 전적으로 통제하게 됩니다.
다음과 같은 방법으로 Operator를 Unmanaged 상태로 설정할 수 있습니다.
개별 Operator 구성
개별 Operator는 구성에
managementState
매개변수가 있습니다. Operator에 따라 다양한 방식으로 이 매개변수에 액세스할 수 있습니다. 예를 들어, Red HAt OpenShift Logging Operator는 관리 대상인 사용자 정의 리소스(CR)를 수정하여 이를 수행하는 반면 Cluster Samples Operator는 클러스터 전체의 구성 리소스를 사용합니다.managementState
매개변수를Unmanaged
로 변경하면 Operator가 리소스를 적극적으로 관리하지 않으며 해당하는 구성 요소와 관련된 조치도 수행하지 않습니다. 클러스터가 손상되고 수동 복구가 필요할 가능성이 있으므로 이 관리 상태를 지원하지 않는 Operator도 있습니다.주의개별 Operator를
Unmanaged
상태로 변경하면 특정 구성 요소 및 기능이 지원되지 않습니다. 지원을 계속하려면 보고된 문제를Managed
상태에서 재현해야 합니다.Cluster Version Operator(CVO) 재정의
spec.overrides
매개변수를 CVO 구성에 추가하여 관리자가 구성 요소에 대한 CVO 동작에 대한 재정의 목록을 제공할 수 있습니다. 구성 요소에 대해spec.overrides[].unmanaged
매개변수를true
로 설정하면 클러스터 업그레이드가 차단되고 CVO 재정의가 설정된 후 관리자에게 경고합니다.Disabling ownership via cluster version overrides prevents upgrades. Please remove overrides before continuing.
주의CVO 재정의를 설정하면 전체 클러스터가 지원되지 않는 상태가 됩니다. 지원을 계속하려면 재정의를 제거한 후 보고된 문제를 재현해야 합니다.
1.1.4. Red Hat 지원을 위한 로깅 데이터 수집
지원 케이스를 열 때 클러스터에 대한 디버깅 정보를 Red Hat 지원에 제공하는 것이 좋습니다.
must-gather 툴 을 사용하여 프로젝트 수준 리소스, 클러스터 수준 리소스 및 각 로깅 구성 요소에 대한 진단 정보를 수집할 수 있습니다. 즉각 지원을 받을 수 있도록 OpenShift Container Platform 및 로깅 둘 다에 대한 진단 정보를 제공하십시오.
1.1.4.1. must-gather 툴 정보
oc adm must-gather
CLI 명령은 문제를 디버깅하는 데 필요할 가능성이 높은 클러스터에서 정보를 수집합니다.
로깅의 경우 must-gather
는 다음 정보를 수집합니다.
- 프로젝트 수준의 Pod, 구성 맵, 서비스 계정, 역할, 역할 바인딩, 이벤트를 포함한 프로젝트 수준 리소스
- 클러스터 수준의 노드, 역할, 역할 바인딩을 포함한 클러스터 수준 리소스
-
로그 수집기, 로그 저장소, 로그 시각화 프로그램의 상태를 포함하여
openshift-logging
및openshift-operators-redhat
네임스페이스의 OpenShift Logging 리소스
oc adm must-gather
를 실행하면 클러스터에 새 Pod가 생성됩니다. 해당 Pod에 대한 데이터가 수집되어 must-gather.local
로 시작하는 새 디렉터리에 저장됩니다. 이 디렉터리는 현재 작업 중인 디렉터리에 생성되어 있습니다.
1.1.4.2. 로깅 데이터 수집
oc adm must-gather
CLI 명령을 사용하여 로깅에 대한 정보를 수집할 수 있습니다.
절차
must-gather
로 로깅 정보를 수집하려면 다음을 수행합니다.
-
must-gather
정보를 저장하려는 디렉터리로 이동합니다. 로깅 이미지에 대해
oc adm must-gather
명령을 실행합니다.$ oc adm must-gather --image=$(oc -n openshift-logging get deployment.apps/cluster-logging-operator -o jsonpath='{.spec.template.spec.containers[?(@.name == "cluster-logging-operator")].image}')
must-gather
툴에서 현재 디렉터리 내에must-gather.local
로 시작하는 새 디렉터리를 만듭니다. 예:must-gather.local.4157245944708210408
.방금 생성한
must-gather
디렉터리에서 압축 파일을 만듭니다. 예를 들어 Linux 운영 체제를 사용하는 컴퓨터에서 다음 명령을 실행합니다.$ tar -cvaf must-gather.tar.gz must-gather.local.4157245944708210408
- Red Hat Customer Portal에서 해당 지원 사례에 압축 파일을 첨부합니다.