이 가이드에는 Gateway API 서비스 메시 배포 문제를 해결하는 방법에 대한 정보가 포함되어 있습니다.
status 필드의 정보
모든 Gateway API 리소스에는 컨트롤러 관점에서 리소스의 상태를 반영하는 status 필드가 있습니다. status 필드 외에도 컨트롤러는 게이트웨이 API 리소스에 이벤트를 추가하여 해당 리소스의 작업에 대한 정보를 제공합니다.
예를 들어 다음 명령어를 사용하여 TDMesh의 상태와 이벤트를 검사합니다.
kubectl describe tdmesh td-mesh
출력은 다음과 비슷합니다.
...
Status:
Conditions:
Last Transition Time: 1970-01-01T00:00:00Z
Message: Waiting for controller
Reason: NotReconciled
Status: False
Type: Scheduled
Events:
...
이전 상태는 컨트롤러가 이 특정 메시의 조정을 시작하지 않았음을 나타냅니다. 이벤트가 추가되지 않은 채로 이 상태가 5분 넘게 지속되는 경우 다음 섹션인 컨트롤러가 TDMesh 리소스를 조정하지 못하는 것으로 보임을 참조하여 문제를 해결하세요.
비슷한 방법으로 HTTPRoute, TCPRoute, 기타 라우팅 리소스 등 다른 리소스와 관련된 문제를 디버깅할 수 있습니다.
일반적으로 상태와 이벤트는 내부적인 문제가 있음을 나타냅니다.
컨트롤러가 TDMesh 리소스를 조정하지 못하는 것으로 보임
문제를 진단하려면 gke-tdGatewayClass가 있는지 확인하세요.
kubectl get gatewayclasses
출력에는 gke-td라는 GatewayClass가 포함되어야 합니다.
NAME CONTROLLER
gke-td networking.gke.io/gateway
이 이름의 GatewayClass가 반환되지 않으면 필수 커스텀 리소스 정의 설치에 따라 모든 필수 CRD가 구성 클러스터에 설치되어 있는지 확인한 후 다음 명령어를 사용하여 Cloud Service Mesh Google Kubernetes Engine 서비스 메시의 허브 기능을 다시 사용 설정합니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-04(UTC)"],[],[],null,["# Troubleshoot Cloud Service Mesh GKE service mesh deployments\n============================================================\n\n|\n| **Preview**\n|\n|\n| This product or feature is subject to the \"Pre-GA Offerings Terms\" in the General Service Terms section\n| of the [Service Specific Terms](/terms/service-terms#1).\n|\n| Pre-GA products and features are available \"as is\" and might have limited support.\n|\n| For more information, see the\n| [launch stage descriptions](/products#product-launch-stages).\n\nThis guide contains information for resolving issues with Gateway API service\nmesh deployments.\n\nInformation in the `status` field\n---------------------------------\n\nAll Gateway API resources have a `status` field that reflects the status of\nresources from the controller perspective. In addition to the `status` field,\nthe controller appends events to Gateway API resources to provide information\nabout its operations on those resources.\n\nFor example, use the following commands to inspect the status and events of a\n`TDMesh`: \n\n```\nkubectl describe tdmesh td-mesh\n```\n\nThe output is similar to the following: \n\n```\n...\nStatus:\n Conditions:\n Last Transition Time: 1970-01-01T00:00:00Z\n Message: Waiting for controller\n Reason: NotReconciled\n Status: False\n Type: Scheduled\nEvents:\n...\n```\n\nThe previous status indicates that the controller has not started to reconcile\nthis particular mesh. If this status lasts for more than 5 minutes with no\nevents appended, read the following section,\n[Controller does not seem to reconcile a `TDMesh` resource](/service-mesh/v1.21/docs/service-routing/gke-gateway-overview#controller-issue)\nto further troubleshoot the issue.\n\nYou can use a similar method to debug issues related to other resources, such as\n`HTTPRoute`, `TCPRoute`, and other routing resources.\n\nUsually, the statuses and events indicate the underlying issue.\n\n### Controller does not seem to reconcile a `TDMesh` resource\n\nTo diagnose the issue, confirm that a `gke-td` `GatewayClass` exists: \n\n```\nkubectl get gatewayclasses\n```\n\nThe output should include a `GatewayClass` named `gke-td`. \n\n```\nNAME CONTROLLER\ngke-td networking.gke.io/gateway\n```\n\nIf a `GatewayClass` with that name is not returned, follow\n[Install the required custom resource definitions](/service-mesh/v1.21/docs/service-routing/prepare-gateway#install-crds)\nto confirm all required CRDs are installed in the config cluster, then reenable\nthe hub feature for the Cloud Service Mesh Google Kubernetes Engine service mesh with the\nfollowing commands:\n\n1. Disable the feature:\n\n ```\n gcloud container hub ingress disable\n ```\n2. Re-enable the feature:\n\n ```\n gcloud container hub ingress enable \\\n --config-membership=/projects/PROJECT_ID/locations/global/memberships/gke-1\n ```"]]