1.23. Envoy 프록시 문제 해결

Envoy 프록시는 서비스 메시의 모든 서비스에 대한 인바운드 및 아웃바운드 트래픽을 가로챕니다. 또한 Envoy는 서비스 메시에서 원격 분석을 수집하고 보고합니다. Envoy는 동일한 pod에서 관련 서비스에 사이드카로 배포됩니다.

1.23.1. Envoy 액세스 로그 활성화

Envoy 액세스 로그는 트래픽 오류 및 흐름을 진단하는 데 유용하며 엔드 투 엔드 트래픽 흐름 분석에 유용합니다.

모든 istio-proxy 컨테이너에 대한 액세스 로깅을 활성화하려면 ServiceMeshControlPlane (SMCP) 오브젝트를 편집하여 로깅 출력의 파일 이름을 추가합니다.

절차

  1. cluster-admin 역할의 사용자로 OpenShift Container Platform CLI에 로그인합니다. 다음 명령을 입력합니다. 메시지가 표시되면 사용자 이름과 암호를 입력합니다.

    $ oc login --username=<NAMEOFUSER> https://<HOSTNAME>:6443
  2. Service Mesh Control Plane을 설치한 프로젝트(예: istio-system )로 변경합니다.

    $ oc project istio-system
  3. ServiceMeshControlPlane 파일을 편집합니다.

    $ oc edit smcp <smcp_name>
  4. 다음 예제에 표시된 대로 name 을 사용하여 프록시 로그의 파일 이름을 지정합니다. name 값을 지정하지 않으면 로그 항목이 작성되지 않습니다.

    spec:
      proxy:
        accessLogging:
          file:
            name: /dev/stdout     #file name

Pod 문제 해결에 대한 자세한 내용은 Pod 문제 조사에서 참조하십시오.

1.23.2. 지원 요청

이 문서에 설명된 절차 또는 일반적으로 OpenShift Container Platform에 문제가 발생하는 경우 Red Hat 고객 포털에 액세스하십시오. 고객 포털에서 다음을 수행할 수 있습니다.

  • Red Hat 제품과 관련된 기사 및 솔루션에 대한 Red Hat 지식베이스를 검색하거나 살펴볼 수 있습니다.
  • Red Hat 지원에 대한 지원 케이스 제출할 수 있습니다.
  • 다른 제품 설명서에 액세스 가능합니다.

클러스터의 문제를 식별하기 위해 OpenShift Cluster Manager 에서 Insights를 사용할 수 있습니다. Insights는 문제에 대한 세부 정보 및 문제 해결 방법에 대한 정보를 제공합니다.

이 문서를 개선하기 위한 제안이 있거나 오류를 발견한 경우 가장 관련 있는 문서 구성 요소에 대한 Jira 문제를 제출하십시오. 섹션 이름 및 OpenShift Container Platform 버전과 같은 구체적인 정보를 제공합니다.

1.23.2.1. Red Hat 지식베이스 정보

Red Hat 지식베이스는 Red Hat의 제품과 기술을 최대한 활용할 수 있도록 풍부한 콘텐츠를 제공합니다. Red Hat 지식베이스는 Red Hat 제품 설치, 설정 및 사용에 대한 기사, 제품 문서 및 동영상으로 구성되어 있습니다. 또한 알려진 문제에 대한 솔루션을 검색할 수 있으며, 간결한 근본 원인 설명 및 해결 단계를 제공합니다.

1.23.2.2. Red Hat 지식베이스 검색

OpenShift Container Platform 문제가 발생한 경우 초기 검색을 수행하여 솔루션이 이미 Red Hat Knowledgebase 내에 존재하는지 확인할 수 있습니다.

사전 요구 사항

  • Red Hat 고객 포털 계정이 있어야 합니다.

절차

  1. Red Hat 고객 포털에 로그인합니다.
  2. 기본 Red Hat 고객 포털 검색 필드에 다음과 같이 문제와 관련된 키워드 및 문자열을 입력하십시오.

    • OpenShift Container Platform 구성 요소 (etcd 등)
    • 관련 절차 (예: installation 등)
    • 명시적 실패와 관련된 경고, 오류 메시지 및 기타 출력
  3. Search를 클릭합니다
  4. OpenShift Container Platform 제품 필터를 선택합니다.
  5. Knowledgebase 콘텐츠 유형 필터를 선택합니다.

1.23.2.3. must-gather 툴 정보

oc adm must-gather CLI 명령은 다음을 포함하여 문제를 디버깅하는 데 필요할 가능성이 높은 클러스터에서 정보를 수집합니다.

  • 리소스 정의
  • 서비스 로그

기본적으로 oc adm must-gather 명령은 기본 플러그인 이미지를 사용하고 ./must-gather.local 에 씁니다.

또는 다음 섹션에 설명된 대로 적절한 인수를 사용하여 명령을 실행하여 특정 정보를 수집할 수 있습니다.

  • 하나 이상의 특정 기능과 관련된 데이터를 수집하려면 다음 섹션에 나열된 대로 이미지에 --image 인수를 사용합니다.

    예를 들면 다음과 같습니다.

    $ oc adm must-gather  --image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v4.9.0
  • 감사 로그를 수집하려면 다음 섹션에 설명된 대로 -- /usr/bin/gather_audit_logs 인수를 사용합니다.

    예를 들면 다음과 같습니다.

    $ oc adm must-gather -- /usr/bin/gather_audit_logs
    참고

    감사 로그는 파일의 크기를 줄이기 위해 기본 정보 세트의 일부로 수집되지 않습니다.

oc adm must-gather 를 실행하면 클러스터의 새 프로젝트에 임의의 이름이 있는 새 Pod가 생성됩니다. 해당 Pod에 대한 데이터가 수집되어 must-gather.local로 시작하는 새 디렉터리에 저장됩니다. 이 디렉터리는 현재 작업 중인 디렉터리에 생성되어 있습니다.

예를 들면 다음과 같습니다.

NAMESPACE                      NAME                 READY   STATUS      RESTARTS      AGE
...
openshift-must-gather-5drcj    must-gather-bklx4    2/2     Running     0             72s
openshift-must-gather-5drcj    must-gather-s8sdh    2/2     Running     0             72s
...

1.23.2.4. 서비스 메시 데이터 수집 정보

oc adm must-gather CLI 명령을 사용하면 Red Hat OpenShift Service Mesh와 연관된 기능 및 오브젝트를 포함하여 클러스터에 대한 정보를 수집할 수 있습니다.

사전 요구 사항

  • cluster-admin 역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
  • OpenShift Container Platform CLI(oc)가 설치되어 있어야 합니다.

precedure

  1. must-gather을 사용하여 Red Hat OpenShift Service Mesh 데이터를 수집하려면 Red Hat OpenShift Service Mesh 이미지를 지정해야 합니다.

    $ oc adm must-gather --image=registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel8:2.3
  2. must-gather 로 특정 Service Mesh Control Plane 네임스페이스에 대한 Red Hat OpenShift Service Mesh 데이터를 수집하려면 Red Hat OpenShift Service Mesh 이미지 및 네임스페이스를 지정해야 합니다. 이 예에서는 < namespace >를 istio-system 과 같은 Service Mesh Control Plane 네임스페이스로 바꿉니다.

    $ oc adm must-gather --image=registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel8:2.3 gather <namespace>

즉각 지원을 받을 수 있도록 OpenShift Container Platform 및 Red Hat OpenShift Service Mesh 둘 다에 대한 진단 정보를 제공하십시오.

1.23.2.5. 지원 케이스 제출

사전 요구 사항

  • OpenShift CLI(oc)가 설치되어 있습니다.
  • Red Hat 고객 포털 계정이 있어야 합니다.
  • OpenShift Cluster Manager 에 액세스할 수 있습니다.

절차

  1. Red Hat 고객 포털에 로그인하고 SUPPORT CASESOpen a case를 선택합니다.
  2. 문제에 대한 적절한 카테고리(예: Defect/Bug), 제품(OpenShift Container Platform), 제품 버전(4.9, 자동 입력되어 있지 않은 경우)을 선택합니다.
  3. 보고되는 문제와 관련이 있을 수 있는 권장 Red Hat 지식베이스 솔루션 목록을 확인합니다. 제안된 문서로 문제가 해결되지 않으면 Continue을 클릭합니다.
  4. 문제의 증상 및 예상 동작에 대한 자세한 정보와 함께 간결하지만 구체적인 문제 요약을 입력합니다.
  5. 보고되는 문제와 관련있는 제안된 Red Hat 지식베이스 솔루션 목록을 확인하십시오. 케이스 작성 과정에서 더 많은 정보를 제공하면 목록이 구체화됩니다. 제안된 문서로 문제가 해결되지 않으면 Continue을 클릭합니다.
  6. 제시된 계정 정보가 정확한지 확인하고 필요한 경우 적절하게 수정합니다.
  7. 자동 입력된 OpenShift Container Platform 클러스터 ID가 올바른지 확인합니다. 그렇지 않은 경우 클러스터 ID를 수동으로 가져옵니다.

    • OpenShift Container Platform 웹 콘솔을 사용하여 클러스터 ID를 수동으로 가져오려면 다음을 수행합니다.

      1. HomeDashboardsOverview로 이동합니다.
      2. Details 섹션의 Cluster ID 필드에서 값을 찾습니다.
    • 또는 OpenShift Container Platform 웹 콘솔을 통해 새 지원 케이스를 열고 클러스터 ID를 자동으로 입력할 수 있습니다.

      1. 툴바에서 (?) HelpOpen Support Case로 이동합니다.
      2. Cluster ID 값이 자동으로 입력됩니다.
    • OpenShift CLI (oc)를 사용하여 클러스터 ID를 얻으려면 다음 명령을 실행합니다.

      $ oc get clusterversion -o jsonpath='{.items[].spec.clusterID}{"\n"}'
  8. 프롬프트가 표시되면 다음 질문을 입력한 후 Continue를 클릭합니다.

    • 이 문제가 어디에서 발생했습니까? 어떤 시스템 환경을 사용하고 있습니까?
    • 이 동작이 언제 발생했습니까? 발생 빈도는 어떻게 됩니까? 반복적으로 발생합니까? 특정 시간에만 발생합니까?
    • 이 문제의 발생 기간 및 비즈니스에 미치는 영향에 대한 정보를 제공해주십시오.
  9. 관련 진단 데이터 파일을 업로드하고 Continue를 클릭합니다. oc adm must-gather 명령을 사용하여 수집된 데이터와 해당 명령으로 수집되지 않은 특정 문제와 관련된 데이터를 제공하는 것이 좋습니다
  10. 관련 케이스 관리 세부 정보를 입력하고 Continue를 클릭합니다.
  11. 케이스 세부 정보를 미리보고 Submit을 클릭합니다.