1.3. OpenShift Container Platform 모니터링에 대한 일반 용어
이 용어집은 OpenShift Container Platform 아키텍처에서 사용되는 일반적인 용어를 정의합니다.
- Alertmanager
- Alertmanager는 Prometheus에서 수신한 경고를 처리합니다. 또한 Alertmanager는 경고를 외부 알림 시스템으로 전송해야 합니다.
- 경고 규칙
- 경고 규칙에는 클러스터 내에서 특정 상태를 설명하는 일련의 조건이 포함되어 있습니다. 이러한 조건이 true이면 경고가 트리거됩니다. 경고 규칙은 경고의 라우팅 방법을 정의하는 심각도를 할당할 수 있습니다.
- Cluster Monitoring Operator
- CMO(Cluster Monitoring Operator)는 모니터링 스택의 핵심 구성 요소입니다. Thanos Querier, Telemeter Client 및 메트릭 대상과 같은 Prometheus 인스턴스를 배포 및 관리하여 이러한 인스턴스를 최신 상태로 유지합니다. CMO는 CVO(Cluster Version Operator)에 의해 배포됩니다.
- Cluster Version Operator
- CVO(Cluster Version Operator)는 기본적으로 OpenShift Container Platform에 설치된 클러스터 Operator의 라이프사이클을 관리합니다.
- 구성 맵
-
구성 맵에서는 구성 데이터를 Pod에 삽입하는 방법을 제공합니다. 구성 맵에 저장된 데이터를
ConfigMap
유형의 볼륨에서 참조할 수 있습니다. Pod에서 실행되는 애플리케이션에서는 이 데이터를 사용할 수 있습니다. - 컨테이너
- 컨테이너는 소프트웨어 및 모든 종속 항목을 포함하는 가볍고 실행 가능한 이미지입니다. 컨테이너는 운영 체제를 가상화합니다. 결과적으로 데이터 센터에서 퍼블릭 또는 프라이빗 클라우드에 이르기까지 어디에서나 컨테이너를 실행할 수 있으며 개발자 노트북도 실행할 수 있습니다.
- CR(사용자 정의 리소스)
- CR은 Kubernetes API의 확장입니다. 사용자 정의 리소스를 생성할 수 있습니다.
- etcd
- etcd는 모든 리소스 오브젝트의 상태를 저장하는 OpenShift Container Platform의 키-값 저장소입니다.
- Fluentd
Fluentd는 각 OpenShift Container Platform 노드에 상주하는 로그 수집기입니다. 애플리케이션, 인프라 및 감사 로그를 수집하여 다양한 출력으로 전달합니다.
참고Fluentd는 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정입니다. Red Hat은 현재 릴리스 라이프사이클 동안 이 기능에 대한 버그 수정 및 지원을 제공하지만 이 기능은 더 이상 개선 사항을 받지 않습니다. Fluentd 대신 Vector를 사용할 수 있습니다.
- Kubelets
- 노드에서 실행되며 컨테이너 매니페스트를 읽습니다. 정의된 컨테이너가 시작되어 실행 중인지 확인합니다.
- Kubernetes API 서버
- Kubernetes API 서버는 API 오브젝트의 데이터를 검증하고 구성합니다.
- Kubernetes 컨트롤러 관리자
- Kubernetes 컨트롤러 관리자는 클러스터 상태를 관리합니다.
- Kubernetes 스케줄러
- Kubernetes 스케줄러는 노드에 Pod를 할당합니다.
- labels
- 레이블은 Pod와 같은 오브젝트의 하위 집합을 구성하고 선택하는 데 사용할 수 있는 키-값 쌍입니다.
- node
- OpenShift Container Platform 클러스터의 작업자 시스템입니다. 노드는 VM(가상 머신) 또는 물리적 머신입니다.
- Operator
- OpenShift Container Platform 클러스터에서 Kubernetes 애플리케이션을 패키징, 배포 및 관리하는 기본 방법입니다. Operator는 사람의 운영 지식을 패키지하고 고객과 공유하는 소프트웨어로 인코딩합니다.
- OLM(Operator Lifecycle Manager)
- OLM은 Kubernetes 네이티브 애플리케이션의 라이프사이클을 설치, 업데이트 및 관리할 수 있도록 지원합니다. OLM은 효과적이고 자동화되고 확장 가능한 방식으로 Operator를 관리하도록 설계된 오픈 소스 툴킷입니다.
- 영구 스토리지
- 장치가 종료된 후에도 데이터를 저장합니다. Kubernetes는 영구 볼륨을 사용하여 애플리케이션 데이터를 저장합니다.
- PVC(영구 볼륨 클레임)
- PVC를 사용하여 PersistentVolume을 포드에 마운트할 수 있습니다. 클라우드 환경의 세부 사항을 모르는 상태에서 스토리지에 액세스할 수 있습니다.
- Pod
- Pod는 Kubernetes에서 가장 작은 논리 단위입니다. Pod는 작업자 노드에서 실행할 하나 이상의 컨테이너로 구성됩니다.
- Prometheus
- Prometheus는 OpenShift Container Platform 모니터링 스택을 기반으로 하는 모니터링 시스템입니다. Prometheus는 시계열 데이터베이스이며 메트릭에 대한 규칙 평가 엔진입니다. Prometheus는 처리를 위해 Alertmanager에 경고를 보냅니다.
- Prometheus 어댑터
- Prometheus Adapter는 Kubernetes 노드와 Prometheus에서 사용할 Pod 쿼리를 변환합니다. 변환된 리소스 메트릭에는 CPU 및 메모리 사용률이 포함됩니다. Prometheus Adapter는 수평 Pod 자동 스케일링을 위해 클러스터 리소스 메트릭 API를 노출합니다.
- Prometheus Operator
-
openshift-monitoring
프로젝트의 PO(Prometheus Operator)는 플랫폼 Prometheus 및 Alertmanager 인스턴스를 생성, 구성 및 관리합니다. 또한 Kubernetes 라벨 쿼리를 기반으로 모니터링 대상 구성을 자동으로 생성합니다. - 음소거
- 경고 조건이 true일 때 알림이 전송되는 것을 방지하기 위해 경고에 음소거를 적용할 수 있습니다. 기본 문제를 해결하는 동안 초기 알림 후 경고를 음소거할 수 있습니다.
- storage
- OpenShift Container Platform은 온프레미스 및 클라우드 공급자를 위해 다양한 유형의 스토리지를 지원합니다. OpenShift Container Platform 클러스터에서 영구 및 비영구 데이터에 대한 컨테이너 스토리지를 관리할 수 있습니다.
- Thanos Ruler
- Thanos Ruler는 별도의 프로세스로 배포되는 Prometheus의 규칙 평가 엔진입니다. OpenShift Container Platform에서 Thanos Ruler는 사용자 정의 프로젝트의 모니터링에 대한 규칙 및 경고 평가를 제공합니다.
- vector
- vector는 각 OpenShift Container Platform 노드에 배포하는 로그 수집기입니다. 각 노드에서 로그 데이터를 수집하고 데이터를 변환한 다음 구성된 출력으로 전달합니다.
- 웹 콘솔
- OpenShift Container Platform을 관리할 UI(사용자 인터페이스)입니다.