문제해결

Migrate for Anthos 사용 시 문제가 발생할 경우 도움이 될 수 있는 문제해결 단계에 대해 알아보세요.

컨테이너에서 bash 명령어 실행

kubectl exec 명령어를 사용하여 bash 셸을 통해 컨테이너에 액세스할 수 있습니다.

  1. kubectl describe pods를 사용하여 연결하려는 클러스터에서 Pod의 이름을 찾습니다.

    다음 예시에서 명령어는 suitecrm-0 Pod를 나열합니다.

    kubectl describe pods | grep Name
    
    Name:               suitecrm-0
  2. 다음 메서드 중 하나를 사용하여 셸 명령어를 실행합니다.
    • kubectl exec를 사용하여 명령어를 실행할 수 있는 bash 명령어 셸을 엽니다.
      kubectl exec -it pod-name -- /bin/bash

      다음 예시에서는 suitecrm-0 Pod에 대한 셸을 가져옵니다.

      kubectl exec -it suitecrm-0 -- /bin/bash
    • kubectl exec를 사용하여 명령어를 직접 실행할 수 있습니다.
      kubectl exec -it pod-name -- /bin/bash -c "command(s)"

      다음 예시에서는 suitecrm-0 Pod의 루트 디렉터리를 나열합니다.

      kubectl exec -it suitecrm-0 -- /bin/bash -c "ls /"

자세한 내용은 Kubernetes 문서를 참조하세요.

Kubernetes 리소스 디버깅

다음 페이지에서 추가 도움말을 볼 수 있습니다.

개인 맞춤 지원을 원하는 경우

Migrate for Anthos를 사용하여 마이그레이션하는 고객은 유료 지원을 받을 수 있습니다. 지원이 필요하면 문의하세요.

Google Cloud 지원팀에 정보 제공

Sysreport는 빠른 문제 해결을 위해 Migrate for Anthos 지원팀에 클러스터 구성에 대한 정보를 제공합니다.

Cloud Shell에서 스크립트에 액세스할 수 있습니다.

  1. Cloud Shell을 엽니다.

그런 다음 collect_sysreport.sh 스크립트를 실행합니다.

/google/migrate/anthos/collect_sysreport.sh [NAMESPACE] [DEPLOYMENT_NAME] [--workloads]

각 항목의 의미는 다음과 같습니다.

  • [NAMESPACE]는 Migrate for Anthos 구성요소가 설치된 네임스페이스입니다.
  • [DEPLOYMENT_NAME]은 GKE 마켓플레이스에 Migrate for Anthos 배포를 생성할 때 제공된 이름입니다.
  • --workloads는 마이그레이션된 워크로드에서 추가 데이터를 수집합니다. 자세한 정보는 아래를 참조하세요.

이 스크립트는 Google Cloud 지원팀에 제공할 anthos-migrate-logs.TIMESTAMP.tar.xz를 생성합니다.

기본적으로 스크립트는 다음을 수집합니다.

  • Migrate for Anthos CSI 컨트롤러 및 CSI 노드의 로그
  • Migrate for Anthos CSI 노드 호스트의 Syslog
  • 다음의 출력:
    • kubectl cluster-info
    • kubectl get nodes; kubectl describe node
    • kubectl version
    • kubectl top node

--workloads 플래그가 사용 설정된 스크립트는 모든 워크로드에 대해 다음을 수집합니다.

  • 워크로드의 로그
  • 다음의 출력:
    • ps aux
    • netstat -tlnp
    • iptables -t nat -L
    • fstab
    • kubectl get pod
    • kubectl describe pod
    • kubectl top pod --all-namespaces --containers
    • kubectl cluster-info dump
    • kubectl api-resources -o wide
    • kubectl top pod --all-namespaces --containers
    • kubectl api-resources -o wide
    • kubectl get componentstatuses --all-namespaces
    • kubectl get endpoints --all-namespaces
    • kubectl get events --all-namespaces
    • kubectl describe limits --all-namespaces
    • kubectl get namespaces
    • kubectl describe pvc --all-namespaces
    • kubectl describe pv --all-namespaces
    • kubectl describe quota --all-namespaces
    • kubectl describe sa --all-namespaces
    • kubectl describe services --all-namespaces
    • kubectl describe services --all-namespaces
    • kubectl get ingresses --all-namespaces
    • kubectl describe networkpolicies --all-namespaces
    • kubectl get podsecuritypolicies --all-namespaces
    • kubectl get clusterrolebindings --all-namespaces
    • kubectl describe storageclasses --all-namespaces
    • kubectl describe volumeattachments --all-namespaces