Entender as condições de estado do recurso

Observação:os serviços canônicos são compatíveis com a versão 1.6.8 do Cloud Service Mesh e versões mais recentes.

Esta página descreve como interpretar e agir de acordo com as condições informadas no cluster ou na frota do Cloud Service Mesh.

Para verificar as condições, execute este comando:

  gcloud container fleet mesh describe --project FLEET_PROJECT

A saída pode incluir conditions em membershipStates para um cluster, como:

  ...
  membershipStates:
    projects/test-project/locations/us-central1/memberships/my-membership:
      servicemesh:
        conditions:
          - code: <CONDITION_CODE>
            details: ...
            documentationLink: ....
            severity: ...

Os valores de code são descritos em mais detalhes nesta página.

NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED

Você pode encontrar o código de erro NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED no campo Conditions da sua assinatura:

    membershipStates:
      projects/test-project/locations/us-central1/memberships/my-membership:
        servicemesh:
          conditions:
          - code: NODEPOOL_WORKLOAD_IDENTITY_FEDERATION_REQUIRED
            details: One or more node pools have workload identity federation disabled.
            documentationLink: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
            severity: ERROR
          controlPlaneManagement:
            details:
            - code: REVISION_FAILED_PRECONDITION
              details: Required in-cluster components are not ready. This will be retried
                within 15 minutes.
            implementation: TRAFFIC_DIRECTOR
            state: FAILED_PRECONDITION

Esse erro aparece se o cluster do GKE não tiver a Federação de Identidade da Carga de Trabalho ativada em todos os pools de nós desse cluster, já que esse é um pré-requisito para a instalação do Cloud Service Mesh.

Para resolver essa mensagem de erro, siga as instruções para Ativar a federação de identidade da carga de trabalho em todos os pools de nós. A ativação pode variar de acordo com o caso específico do cluster.

Após a ativação, a mensagem de erro será removida automaticamente, e o cluster voltará ao estado ACTIVE. Se o problema persistir e você precisar de mais ajuda, consulte Como receber suporte.

MESH_IAM_PERMISSION_DENIED

Esse erro indica que a conta de serviço não tem permissão suficiente para acessar seu projeto de frota. Siga as etapas para resolver o problema:

  1. Verifique se a conta de serviço recebeu o papel Anthos Service Mesh Service Agent. Para saber como verificar e adicionar a permissão do IAM, acesse O status das revisões é considerado não íntegro e siga as mesmas etapas.

  2. Se a permissão for verificada e o problema persistir, entre em contato com o suporte ao cliente do Google para receber mais ajuda.

MESH_IAM_CROSS_PROJECT_PERMISSION_DENIED

Esse erro indica que a conta de serviço entre projetos não tem permissão suficiente para acessar o projeto da frota que contém a associação. Siga as etapas para resolver o problema:

  1. Verifique se a conta de serviço entre projetos concedeu o papel Anthos Service Mesh Service Agent ao projeto da frota. Caso contrário, execute:

    gcloud projects add-iam-policy-binding CROSS_PROJECT_ID  \
        --member "serviceAccount:service-FLEET_PROJECT_NUMBER@gcp-sa-servicemesh.iam.gserviceaccount.com" \
        --role roles/anthosservicemesh.serviceAgent
    
  2. Se a permissão for verificada e o problema persistir, entre em contato com o suporte ao cliente do Google para receber mais ajuda.