12장. 네트워크 관찰 기능 상태 규칙
Network Observability Operator는 기본 제공 메트릭과 OpenShift Container Platform 모니터링 스택을 사용하여 클러스터 네트워크 상태를 보고하여 경고를 제공합니다.
네트워크 관찰 기능 상태 경고에는 OpenShift Container Platform 4.16 이상이 필요합니다.
12.1. 자동화된 상태 규칙으로 네트워크 문제 확인 링크 복사링크가 클립보드에 복사되었습니다!
네트워크 관찰 기능은 자동화된 상태 규칙을 사용하여 메트릭을 모니터링하여 네트워크 문제를 식별합니다. 이러한 규칙은 비정상적인 상황이 발생할 때 경고를 트리거하여 연결을 유지하고 네트워크 성능 저하에 대응하는 데 도움이 됩니다.
Network Observability Operator는 네트워크 문제를 감지하는 Prometheus 기반 규칙 시스템을 관리하고 이러한 규칙을 PrometheusRule 리소스로 변환합니다. 다음과 같은 규칙 유형을 지원합니다.
- 경고 규칙
-
네트워크 이상 또는 인프라 오류가 감지되면 Prometheus
Alertmanager를 통해 트리거 알림을 트리거합니다. - 기록 규칙
- 대시보드 성능을 개선하기 위해 미리 계산된 복잡한 Prometheus Query Language(PromQL) 표현식을 새 시계열로 설정합니다.
12.1.1. 네트워크 상태 모니터링의 중요성 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 관리자 및 보안 팀에서 안정적이고 안전한 네트워크 연결을 유지하는 것이 중요합니다. 해결되지 않은 네트워크 문제로 인해 다음과 같은 결과가 발생할 수 있습니다.
- 패킷 드롭 또는 DNS 오류로 인한 애플리케이션 다운 타임.
- 감지되지 않은 네트워크 정책 위반으로 인한 보안 위험
- 대기 시간 급증 또는 대역폭 포화로 인한 성능 저하.
- 모니터링되지 않은 네트워크 트래픽의 규정 준수 문제.
이러한 문제를 조기 탐지하면 서비스 수준 목표(SLO)가 영향을 받기 전에 해결할 수 있습니다.
12.1.2. 자동화된 상태 모니터링 링크 복사링크가 클립보드에 복사되었습니다!
Network Observability Operator는 다음 기능을 통해 자동화된 상태 모니터링을 제공합니다.
- 사전 구성된 상태 규칙: 기본 임계값을 사용하여 일반적인 네트워크 문제를 감지합니다.
- 자동화된 경고: OpenShift Container Platform 모니터링 스택과 통합됩니다.
- 상태 대시보드: 클러스터, 노드, 네임스페이스 및 워크로드에 대한 상태를 표시합니다.
- 사용자 지정 규칙: 조직별 모니터링 규칙 생성을 지원합니다.
상태 규칙은 네트워크 흐름 지표를 모니터링하고 정의된 임계값을 초과하면 경고를 트리거합니다. 예를 들어, PacketDropsByKernel 규칙은 커널 패킷 드롭율이 정의된 수준을 초과하면 경고를 보고합니다.
12.1.3. 네트워크 상태 모니터링 워크플로 링크 복사링크가 클립보드에 복사되었습니다!
네트워크 상태 모니터링에는 다음 단계가 포함됩니다.
- 패킷 드롭 또는 DNS 추적과 같은 모니터링을 위해 필요한 네트워크 상태 데이터를 수집하도록 Network Observability Operator를 구성합니다.
-
FlowCollector사용자 정의 리소스에서 기본 상태 규칙 및 임계값 검토 및 사용자 지정 -
Observe
Alerting 및 Observe Network Health 보기의 OpenShift Container Platform 웹 콘솔의 모니터링 경고입니다. - 특정 요구 사항에 대한 사용자 정의 상태 규칙 생성.
- 대규모 배포에 대한 성능을 최적화하기 위해 레코딩 규칙 구성.
netobserv 네임스페이스의 PrometheusRule 리소스는 다음 명령을 실행하여 볼 수 있습니다.
$ oc get prometheusrules -n netobserv -o yaml
12.1.4. 자동화된 상태 규칙으로 네트워크 문제 감지 링크 복사링크가 클립보드에 복사되었습니다!
Network Observability Operator에는 네트워크 이상 및 인프라 오류를 감지하는 규칙 기반 시스템이 포함되어 있습니다. Operator는 구성을 경고 규칙으로 변환하여 OpenShift Container Platform 웹 콘솔을 통해 자동화된 모니터링 및 문제 해결을 제공합니다.
12.1.4.1. 결과 모니터링 링크 복사링크가 클립보드에 복사되었습니다!
Network Observability Operator는 다음 보기에 네트워크 상태를 표시합니다.
- 경고 UI
-
특정 경고가 모니터링
경고에 표시됩니다. 알림은 Prometheus Alertmanager를 통해 관리됩니다. - 네트워크 상태 대시보드
-
Observe
Network Health 의 특수 대시보드는 클러스터 네트워크 상태에 대한 요약을 제공합니다.
네트워크 상태 대시보드는 위반을 탭으로 분류하여 문제 범위를 격리합니다.
- global: 클러스터의 상태 집계
- 노드: 인프라 노드에 고유합니다.
- 네임스페이스: 개별 네임스페이스와 관련된 위반입니다.
-
워크로드:
Deployments또는DaemonSets와 같은 리소스에 고유합니다.
12.1.4.2. 사전 정의된 상태 규칙 링크 복사링크가 클립보드에 복사되었습니다!
Network Observability Operator는 일반적인 네트워킹 시나리오에 대한 기본 규칙을 제공합니다. 이러한 규칙은 FlowCollector CR(사용자 정의 리소스)에서 해당 기능이 활성화된 경우에만 활성화됩니다.
다음 목록에는 사용 가능한 기본 규칙의 서브 세트가 포함되어 있습니다.
PacketDropsByDevice-
네트워크 장치에서 높은 비율의 패킷 드롭을 보고합니다. 이 규칙은 node-exporter 메트릭을 기반으로 하며
PacketDrop에이전트 기능이 필요하지 않습니다. PacketDropsByKernel-
커널에 의해 높은 비율의 패킷 드롭을 보고합니다. 이 규칙에는
PacketDrop에이전트 기능이 필요합니다. IPsecErrors-
IPsec 암호화 오류를 보고합니다. 이 규칙에는
IPSec에이전트 기능이 필요합니다. NetpolDenied-
네트워크 정책에서 거부된 트래픽을 보고합니다. 이 규칙에는
NetworkEvents에이전트 기능이 필요합니다. LatencyHighTrend-
TCP 대기 시간이 크게 증가한 보고서입니다. 이 규칙에는
FlowRTT에이전트 기능이 필요합니다. DNSErrors-
DNS 오류를 보고합니다. 이 규칙에는
DNSTracking에이전트 기능이 필요합니다.
다음 운영 경고는 Network Observability Operator에 적용됩니다.
NetObservNoFlows- 파이프라인이 활성 상태일 때 보고되지만 흐름이 관찰되지 않습니다.
NetObservLokiError- Loki 오류로 인해 흐름이 삭제되는 경우 보고합니다.
전체 규칙 및 실행북 목록은 Network Observability Operator runbooks 를 참조하십시오.
12.1.4.3. 상태 모니터링에 대한 기능 활성화 링크 복사링크가 클립보드에 복사되었습니다!
Network Observability Operator는 FlowCollector CR에서 활성화된 기능을 기반으로 규칙을 생성합니다.
예를 들어 패킷 드롭 규칙은 PacketDrop 에이전트 기능이 활성화된 경우에만 생성됩니다. 규칙은 메트릭에 따라 달라집니다. 필요한 지표를 사용할 수 없는 경우 구성 경고가 표시될 수 있습니다. FlowCollector 리소스의 spec.processor.metrics.includeList 필드에 지표를 구성합니다.