Tableau Server Helm 차트 - 문제 해결

중요: 이 설명서에서는 Helm 및 Helm 차트에 대한 지식이 있다고 가정하며 상세한 설명적 예를 제공하지 않습니다. 설명서는 Tableau Server와 Helm 및 Helm 차트에 익숙한 고객을 대상으로 작성되었습니다.

소개

이 항목에서는 Helm 차트를 사용하여 Kubernetes에 Tableau Server를 배포할 때 발생하는 일반적인 문제를 진단하고 해결하는 데 도움이 되는 도움말을 제공합니다. 설치 문제, 런타임 문제 및 디버깅 방법을 다룹니다.

일반적인 문제 해결 단계

Kubernetes에서 Tableau Server와 관련된 문제가 발생한 경우:

  1. 포드 상태 및 이벤트 확인
  2. 컨테이너 로그 검토
  3. 리소스 가용성 확인
  4. 영구 볼륨 클레임 확인
  5. Herm 릴리스 상태 검토
  6. 서비스 및 네트워크 연결 검토

포드가 시작되지 않음

  1. 포드 상태 확인:

    kubectl get pods -l app.kubernetes.io/instance=tableau-server
    kubectl describe pod <pod-name>
  2. 로그 확인:

    kubectl logs <pod-name>
  3. 이벤트 확인:

    kubectl get events --sort-by='.lastTimestamp'

영구 볼륨 문제

  1. PVC 상태 확인:

    kubectl get pvc
    kubectl describe pvc <pvc-name>
  2. 저장소 클래스 확인:

    kubectl get storageclass

라이선스 키 문제

  1. 라이선스 키가 설정되어 있는지 확인:

    kubectl get secret tableau-server-secrets -o 
    jsonpath='{.data.LICENSE_KEY}' | base64 -d
  2. 라이선스 키 업데이트:

    # Edit values.yaml and upgrade
    helm upgrade tableau-server ./helm/tableau-server -f ./helm/tableau-server/values.yaml

상태 검사 실패

  1. 상태 검사 스크립트 확인:

    kubectl exec <pod-name> -- /docker/alive-check
    kubectl exec <pod-name> -- /docker/server-ready-check
  2. 상태 검사 타이밍 조정:

    healthChecks:
    liveness:
    initialDelaySeconds: 600 # Increase if server takes longer to start

다중 노드 부트스트랩 문제

  1. 부트스트랩 볼륨 확인:

    kubectl get pvc | grep bootstrap
  2. 부트스트랩 파일 확인:

    kubectl exec <primary-pod> -- ls -la /docker/config/bootstrap
  3. ReadWriteMany 액세스 모드 확인:

    persistence:
    bootstrap:
    accessMode: ReadWriteMany # Required for multi-node

     

  4. EFS 정적 프로비저닝을 위한 부트스트랩 PV/PVC 바인딩 확인:

    kubectl get pv tableau-bootstrap-pv
    kubectl get pvc -n default tableau-server-bootstrap
    kubectl describe pv tableau-bootstrap-pv
    kubectl describe pvc -n default tableau-server-bootstrap
  5. PVC를 바인딩한 후 마운트가 실패하는 경우 EFS CSI/IAM 오류 확인:

    kubectl describe pod -n default tableau-server-primary-0
    kubectl get events -n default --sort-by='.lastTimestamp'
  6. driver name efs.csi.aws.com not found 오류:

    Amazon EKS(Elastic Kubernetes Service) 필수 요건에 설명된 대로 EKS 부가기능을 설치하고 확인합니다.

  7. DescribeMountTargets 권한 부여 실패 수정

    • 기본 설정 방법:

      aws iam attach-role-policy \
      --role-name <your-node-instance-role> \
      --policy-arn
      arn:aws:iam::aws:policy/AmazonElasticFileSystemClientReadWriteAccess

      그런 다음 영향을 받은 포드(주 노드와 모든 작업자 노드)를 다시 시작합니다. 작업자는 레이블로 선택되므로 모든 복제본이 처리됩니다.

    • 대체 방법

      부트스트랩 PV 구성에서 대상 IP의 강제 마운트:

      persistence.bootstrap.pv.csi.volumeAttributes.mounttargetip(또는 수동 PV volumeAttributes.mounttargetip)을 설정하고 다시 적용하거나 업그레이드합니다.

추가 리소스

피드백을 제공해 주셔서 감사합니다!귀하의 피드백이 제출되었습니다. 감사합니다!