구성 문제 해결
이 섹션에서는 일반적인 Cloud Service Mesh 문제와 해결 방법을 설명합니다. 추가 지원이 필요하면 지원 받기를 참조하세요.
MembershipState 확인
언제든지 다음 명령어를 실행하여 메시의 최신 상태를 확인할 수 있습니다.
gcloud container fleet mesh describe
출력은 다음과 비슷합니다.
...
membershipSpecs:
projects/project_id/locations/global/memberships/cluster:
mesh:
management: MANAGEMENT_AUTOMATIC
membershipStates:
projects/project_id/locations/global/memberships/cluster:
servicemesh:
...
conditions:
- code: CONFIG_VALIDATION_WARNING
documentationLink: https://cloud.google.com/...
details: Application of one or more configs has failed. Error details are shown on individual config resources. See documentation link for more detail.
severity: WARNING
...
MembershipState 오류 코드
Cloud Service Mesh가 클러스터의 MembershipState에 조건을 보고한다면 메시 구성(예: Istio 커스텀 리소스)을 적용하지 못했다는 의미일 수 있습니다. 다음 오류 코드 설명에서는 해결 방법에 관한 자세한 정보를 제공합니다.
오류 코드 | 원인 | 해결 방법 |
---|---|---|
CONFIG_APPLY_INTERNAL_ERROR |
내부 오류로 인해 하나 이상의 구성을 적용하지 못했습니다. | 고객 지원팀에 문의하세요. |
QUOTA_EXCEEDED_* |
리소스가 할당량 한도에 도달하여 하나 이상의 구성을 적용하지 못했습니다. | 구체적인 할당량과 할당량 상향 조정 방법에 대한 자세한 내용은 할당량을 참조하세요. |
CONFIG_VALIDATION_ERROR |
잘못된 구성으로 인해 하나 이상의 구성을 적용할 수 없습니다. | 특정 오류는 오류의 원인이 된 구성에 기록됩니다. 이를 진단하는 방법에 관한 자세한 내용은 구성 검증 오류 섹션을 참고하세요. |
CONFIG_VALIDATION_WARNING |
하나 이상의 구성에서 잠재적인 문제가 발생했습니다. 이러한 변경사항이 적용되지 않았을 수도 있으며, 적용되었더라도 의도치 않은 동작이 발생할 수 있습니다. | 이를 진단하는 방법에 관한 자세한 내용은 구성 검증 오류 섹션을 참고하세요. |
MULTICLUSTER_SECRET_WARNING |
클러스터는 엔드포인트 검색에 선언적 멀티 클러스터 API를 사용하는 대신 수동으로 생성한 Istio 멀티 클러스터 비밀을 사용합니다. | 멀티 클러스터 엔드포인트 검색 설정을 선언적 구현으로 이동합니다. 자세한 내용은 멀티 클러스터 보안 비밀 페이지를 참조하세요. |
WORKLOAD_IDENTITY_REQUIRED |
클러스터 또는 하나 이상의 노드 풀에 대해 워크로드 아이덴티티가 사용 설정되어 있지 않습니다. | 클러스터 및 노드 풀 수준에서 워크로드 아이덴티티를 사용 설정합니다. 자세한 내용은 워크로드 아이덴티티 사용 설정 페이지를 참조하세요. |
MANAGED_CNI_NOT_ENABLED |
이 클러스터에 대해 관리형 CNI가 사용 설정되어 있지 않습니다. | 관리형 CNI를 사용 설정하여 메시 내에서 권장사항을 유지하세요. 자세한 내용은 관리형 CNI 사용 설정 페이지를 참조하세요. |
NON_STANDARD_SIDECAR_BINARY_USAGE |
Istio 컨테이너 내에서 하나 이상의 명령어가 `envoy`, `pilot_agent` 또는 `iptables` 이외의 바이너리를 사용하고 있습니다. | 지원되지 않는 바이너리에 대한 종속 항목을 삭제합니다. 자세한 내용은 지원되지 않는 바이너리 사용 페이지를 참조하세요. |
UNSUPPORTED_GATEWAY_CLASS_USAGE |
권장사항에 따라 Istio 인그레스 게이트웨이로 마이그레이션해야 하는 게이트웨이 클래스 (Istio 및 Anthos Service Mesh)로 클러스터가 구성되어 있습니다. | 자세한 안내는 문서를 참고하세요. |
구성 검증 오류
CONFIG_VALIDATION_WARNING
및 CONFIG_VALIDATION_ERROR
코드는 메시 구성(Istio 또는 Kubernetes 커스텀 리소스)에서 문제가 발견되었고 구성의 하위 집합이 올바르게 적용되지 않았을 수 있음을 나타냅니다.
많은 리소스별 오류 세부정보가 해당 리소스에 기록됩니다. 다음 명령어를 사용하여 잘못된 구성을 찾고 특정 오류 메시지를 볼 수 있습니다. (참고: 이 오류들은 Istio 리소스에 대한 것으로, 여기에 모든 검증 오류가 표시되지는 않을 수 있습니다.)
for resource in serviceentries destinationrules virtualservices gateways peerauthentications authorizationpolicies requestauthentications sidecars telemetries envoyfilters;
do kubectl get $resource --all-namespaces --output=json | \
jq '.items[] | select(.status.conditions != null and any(.status.conditions[]; .type == "Accepted" and .status == "False")) | {"name": .metadata.name, "namespace": .metadata.namespace, "kind": .kind, "conditions": .status.conditions}';
done
출력은 다음과 비슷합니다.
{
"name": "demo-envoy-filter",
"namespace": "default",
"kind": "EnvoyFilter",
"conditions": [
{
"lastTransitionTime": "2024-04-04T21:10:18.046975988Z",
"message": "This API is not supported",
"reason": "Invalid",
"status": "False",
"type": "Accepted"
}
]
}