알려진 문제

이 페이지에는 구성 커넥터의 알려진 문제가 나와 있습니다.

여기에 나열된 문제 중 상당수가 해결되었습니다. 수정된 버전 열은 수정사항이 도입된 버전을 나타냅니다. 이 수정사항을 적용하려면 나열된 버전 이상으로 업그레이드하세요.

Google Developer Program에 참여하는 경우 이 페이지를 저장하여 이 페이지와 관련된 출시 노트가 게시될 때 알림을 받으세요. 자세한 내용은 저장된 페이지를 참고하세요.

제품 버전이나 카테고리별로 알려진 문제를 필터링하려면 다음 드롭다운 메뉴에서 필터를 선택하세요.

구성 커넥터 버전을 선택합니다.

문제 카테고리를 선택하세요.

또는 알려진 문제를 필터링합니다.

카테고리 가장 먼저 식별된 버전 수정된 버전 문제 및 해결 방법
리소스 1.126.0 1.134.1

새 구성 커넥터 리소스를 만들거나 적용하려고 하면 Kubernetes API 서버가 요청을 거부하고 리소스 생성을 차단합니다. 새 리소스를 배포할 수 없지만 기존 리소스는 정상적으로 조정될 수 있습니다. 이 문제는 구성 커넥터 버전 1.134.1 이전의 cnrm-webhook-manager 구성요소 내에 알려진 경합 상태로 인해 발생합니다.

배포 출력 또는 API 서버 로그에 다음과 유사한 오류가 표시될 수 있습니다.

failed calling webhook "container-annotation-handler.cnrm.cloud.google.com": failed to call webhook: Post "https://cnrm-validating-webhook.cnrm-system.svc:443/...": tls: failed to verify certificate: x509: certificate signed by unknown authority
      

또한 cnrm-webhook-manager Pod 로그에 다음이 표시될 수 있습니다.

http: TLS handshake error ... remote error: tls: bad certificate.
      

해결 방법:

리소스 생성을 즉시 차단 해제하려면 다음 명령어로 배포를 다시 시작하여 웹훅 관리자 포드가 동기화되고 올바른 인증서 데이터를 가져오도록 강제하면 됩니다.

kubectl rollout restart deployment cnrm-webhook-manager -n cnrm-system
      
리소스 1.134 1.134.2

영향을 받는 SQLInstance 리소스가 state-into-spec 주석에 관한 오류 메시지와 함께 Updating 상태로 멈출 수 있습니다.

invalid value "merge" for "cnrm.cloud.google.com/state-into-spec" annotation
      

이 문제는 버전 1.134.0에 도입된 더 엄격한 검증으로 인해 SQLInstance 리소스의 '병합' 전략이 기본값으로 적용된 경우에도 잘못 거부되기 때문에 발생합니다. 이 문제는 이후 버전에서 수정되었습니다.

Direct Reconciler 1.131 1.134

Config Connector 버전 1.132.0에서 직접 리컨실러를 사용하는 리소스에 영향을 미치는 문제가 도입되었습니다.

컨트롤러 이름 중복 오류

버전 1.132.0에서는 SpannerInstanceSecretManagerSecret과 같은 리소스가 동일한 이름의 컨트롤러가 이미 존재한다는 오류와 함께 조정되지 않을 수 있습니다.

error registering controller: error adding direct controller for SpannerInstance to a manager: error creating new controller: controller with name spannerinstance-controller already exists.
      

SecretManagerSecret 'last-applied-configuration' 오류

버전 1.131.0~1.133에서 SecretManagerSecret의 직접 리컨실러를 사용 설정하면 (alpha.cnrm.cloud.google.com/reconciler: direct 주석 사용) API 오류로 인해 리컨실리에이션이 실패할 수 있습니다.

[kubectl.kubernetes.io/last-applied-configuration] must follow pattern [a-z0-9A-Z]+([_\.\-]*[a-z0-9A-Z]+)*), be less than 64 characters, and must have a UTF encoding of less than 128 bytes
      

이는 구성 커넥터가 내부 Kubernetes 주석을 Secret Manager API에 라벨로 전달하려고 시도하기 때문에 발생합니다.

설치, 네트워킹 Kubernetes 1.19 1.43

다음 예시와 비슷한 오류가 표시되면 인증서에 문제가 있을 수 있습니다.

Error from server (InternalError): error when creating "/mnt/set-weaver-dns-record.yml": Internal error occurred: failed calling webhook "annotation-defaulter.cnrm.cloud.google.com": Post "https://cnrm-validating-webhook.cnrm-system.svc:443/annotation-defaulter?timeout=30s": x509: certificate relies on legacy Common Name field, use SANs or temporarily enable Common Name matching with GODEBUG=x509ignoreCN=0
      

이 문제는 Kubernetes 버전 1.19 이상에서 발생합니다. 구성 커넥터 버전 1.43 이상은 인증서 자동 생성을 지원하여 이러한 문제의 발생을 막아줍니다.


해결 방법:

이 문제를 해결하려면 관련 인증서와 포드를 삭제합니다.

kubectl delete -n cnrm-system secrets cnrm-webhook-cert-abandon-on-uninstall
kubectl delete -n cnrm-system secrets cnrm-webhook-cert-cnrm-validating-webhook
kubectl delete -n cnrm-system pods -l "cnrm.cloud.google.com/component=cnrm-webhook-manager"
      

이러한 리소스를 삭제하면 올바른 인증서가 다시 생성됩니다.

맨 위로