Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

40.2. 진단 도구 사용

OpenShift Container Platform을 여러 가지 방법으로 배포할 수 있습니다. 여기에는 다음이 포함됩니다.

  • 소스에서 빌드
  • VM 이미지 내에 포함
  • 컨테이너 이미지로
  • 엔터프라이즈 RPM 사용

각 방법은 다른 구성 및 환경에 적합합니다. 환경 가정을 최소화하기 위해 진단 툴은 OpenShift Container Platform 서버 또는 클라이언트 내에서 진단을 제공하기 위해 openshift 바이너리에 포함됩니다.

일반적으로 마스터 호스트 및 클러스터 관리자에서 진단 툴을 사용하려면 다음을 실행합니다.

# oc adm diagnostics

이렇게 하면 사용 가능한 모든 진단이 실행되며 환경에 적용되지 않는 진단은 건너뜁니다.

문제를 해결하기 위해 작업하는 대로 이름별로 특정 진단을 실행하거나 이름별로 특정 진단을 실행할 수 있습니다. 예를 들면 다음과 같습니다.

$ oc adm diagnostics

진단 도구 옵션에는 작업 구성 파일이 필요합니다. 예를 들어 노드 구성을 사용할 수 없는 한 NodeConfigCheck 는 실행되지 않습니다.

진단 도구는 기본적으로 표준 구성 파일 위치를 사용합니다.

  • 클라이언트:

    • $KUBECONFIG 환경 변수에 표시된 대로
    • ~/.kube/config 파일
  • 마스터:

    • /etc/origin/master/master-config.yaml
  • 노드:

    • /etc/origin/node/node-config.yaml

--config, --master-config 및 -- node-config 옵션을 사용하여 비표준 위치를 지정할 수 있습니다. 구성 파일을 지정하지 않으면 관련 진단을 건너뜁니다.

사용 가능한 진단은 다음과 같습니다.

진단 이름목적

AggregatedLogging

적절한 구성 및 작업을 위해 집계된 로깅 통합을 확인합니다.

AnalyzeLogs

문제가 있는지 systemd 서비스 로그를 확인합니다. 를 확인하기 위해 구성 파일이 필요하지 않습니다.

ClusterRegistry

클러스터에 빌드 및 이미지 스트림에 대해 작동하는 컨테이너 이미지 레지스트리가 있는지 확인합니다.

ClusterRoleBindings

기본 클러스터 역할 바인딩이 있고 기본 정책에 따라 예상 주체가 포함되어 있는지 확인합니다.

ClusterRoles

클러스터 역할이 있으며 기본 정책에 따라 예상 권한이 포함되어 있는지 확인합니다.

ClusterRouter

클러스터에서 작동하는 기본 라우터가 있는지 확인합니다.

ConfigContexts

클라이언트 구성의 각 컨텍스트가 완료되었으며 해당 API 서버에 연결되어 있는지 확인합니다.

DiagnosticPod

애플리케이션 관점에서 진단을 실행하는 Pod를 생성합니다. 그러면 포드 내의 DNS가 예상대로 작동하고 기본 서비스 계정의 자격 증명이 마스터 API에 올바르게 인증되었는지 확인합니다.

EtcdWriteVolume

etcd에 대한 쓰기 볼륨을 일정 기간 동안 확인하고 작업 및 키로 분류합니다. 이 진단은 다른 진단만큼 빨리 실행되지 않고 etcd에 대한 로드를 늘릴 수 있으므로 구체적으로 요청된 경우에만 실행됩니다.

MasterConfigCheck

이 호스트의 마스터 구성 파일에서 문제가 있는지 확인합니다.

MasterNode

이 호스트에서 실행 중인 마스터에서도 노드를 실행하여 클러스터 SDN의 멤버인지 확인합니다.

MetricsApiProxy

클러스터 API 프록시를 통해 통합 Heapster 지표에 도달할 수 있는지 확인합니다.

NetworkCheck

여러 노드에 진단 포드를 생성하여 애플리케이션 또는 Pod 관점에서 일반적인 네트워크 문제를 진단합니다. 마스터에서 노드에 포드를 예약할 수 있는 경우 이 진단을 실행하되 포드에 연결 문제가 있습니다. 이 확인은 포드가 서비스, 기타 포드 및 외부 네트워크에 연결할 수 있는지 확인합니다.

오류가 있는 경우 이 진단은 추가 분석을 위해 결과를 로컬 디렉토리(기본적으로/tmp/openshift/ )에 저장하고 검색된 파일을 저장합니다. 디렉터리는 --network-logdir 플래그를 사용하여 지정할 수 있습니다.

NodeConfigCheck

이 호스트의 노드 구성 파일에서 문제가 있는지 확인합니다.

NodeDefinitions

마스터 API에 정의된 노드가 준비되었으며 포드를 예약할 수 있는지 확인합니다.

RouteCertificateValidation

확장 검증으로 거부할 수 있는 경로 인증서를 모두 확인합니다.

ServiceExternalIPs

마스터 구성에 따라 허용하지 않는 외부 IP를 지정하는 기존 서비스를 확인합니다.

UnitStatus

OpenShift Container Platform과 관련된 이 호스트의 유닛의 systemd 상태를 확인합니다. 를 확인하기 위해 구성 파일이 필요하지 않습니다.