공개 IP 연결 구성

이 페이지에서는 Cloud SQL 인스턴스에 대한 공개 IP 연결을 구성하는 방법을 설명합니다.

소개

Cloud SQL 인스턴스가 공개 IPv4 주소를 사용하고 승인된 주소를 인스턴스에 추가하는 방법으로 특정 IP 주소 또는 주소 범위에서의 연결을 수락하도록 구성할 수 있습니다.

비공개 네트워크(예: 10.x.x.x)를 승인된 네트워크로 지정할 수 없습니다.

PostgreSQL 인스턴스의 공개 IP 주소:

  • IPv6: 인스턴스는 IPv6를 지원하지 않습니다.
  • IPv4: 인스턴스에 고정 IPv4 주소가 자동으로 할당됩니다. 인스턴스가 꺼져(비활성화되어) 있는 동안에는 IP 주소에 소액의 요금이 부과됩니다.

IP 연결을 통해 관리 클라이언트를 인스턴스에 연결하는 방법에 관한 도움말은 IP 주소로 psql 클라이언트 연결을 참조하세요.

인스턴스에서 공개 IP 주소를 사용하여 연결을 수락하도록 구성할 경우 데이터 보안을 위해 SSL도 사용하도록 구성합니다. 자세한 내용은 인스턴스에 SSL 구성을 참조하세요.

공용 인터넷에 노출되지 않는 IP 주소로 인스턴스를 구성하려면 비공개 IP 연결 구성을 참조하세요.

공개 IP 사용 설정 및 승인된 주소 또는 주소 범위 추가

인스턴스에 공개 IP를 사용 설정하면 Cloud SQL이 공개 정적 IPv4 주소로 인스턴스를 구성합니다. 공개 IP를 사용 설정한 후에는 데이터베이스 연결에 대한 승인을 설정해야 합니다. 자세한 내용은 승인 옵션을 참조하세요.

공개 IP를 사용 설정하고 승인된 주소를 추가하는 방법은 다음과 같습니다.

Console

  1. Google Cloud Console의 Cloud SQL 인스턴스 페이지로 이동합니다.

    Cloud SQL 인스턴스 페이지로 이동

  2. 인스턴스 이름을 클릭하여 인스턴스 세부정보 페이지를 엽니다.
  3. 연결 탭을 선택합니다.
  4. 공개 IP 체크박스를 선택합니다.
  5. 네트워크 추가를 클릭합니다.
  6. 네트워크 필드에 연결을 허용할 IP 주소나 IP 주소 범위를 입력합니다.

    CIDR 표기법을 사용하세요.

  7. 필요 시 이 항목의 이름을 입력합니다.
  8. 완료를 클릭합니다.
  9. 저장을 클릭하여 인스턴스를 업데이트합니다.

gcloud

  1. 아직 인스턴스에 IPv4 주소를 추가하지 않은 경우 지금 추가합니다.
    gcloud sql instances patch [INSTANCE_NAME] --assign-ip
    
  2. 인스턴스 설명으로 기존에 승인된 모든 주소를 표시합니다.
    gcloud sql instances describe [INSTANCE_NAME]
    

    ipConfiguration에서 authorizedNetwork 항목을 찾고, 유지하고자 하는 승인된 주소를 확인해 둡니다.

  3. 포함시키려는 모든 주소를 비롯한 승인된 네트워크 목록을 업데이트합니다.
    gcloud sql instances patch [INSTANCE_NAME] --authorized-networks=[IP_ADDR1],[IP_ADDR2]...
    

    CIDR 표기법을 사용하세요.

  4. 변경사항을 확인합니다.
    gcloud sql instances describe [INSTANCE_NAME]
    

REST v1beta4

  1. 인스턴스 설명으로 기존에 승인된 모든 주소를 표시합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • machine-type: 인스턴스 머신 유형
    • zone: 인스턴스 영역

    HTTP 메서드 및 URL:

    GET  https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

  2. 인스턴스에 설정하려는 모든 주소를 포함하여 인스턴스를 업데이트합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • network_range_1: 승인된 IP 주소 또는 범위
    • network_range_2: 승인된 다른 IP 주소 또는 범위

    HTTP 메서드 및 URL:

    PATCH https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

    JSON 요청 본문:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks":
            [{"value": "network_range_1"}, {"value": network_range_2"}]
        }
      }
    }
    

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

    CIDR 표기법을 사용하세요.

  3. 변경사항을 확인합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • ip-address1: 첫 번째 IP 주소의 CIDR 형식
    • ip-address-name1: 첫 번째 IP 주소의 이름
    • ip-address2: 두 번째 IP 주소의 CIDR 형식
    • ip-address-name2: 두 번째 IP 주소의 이름
    • machine-type: 인스턴스 머신 유형
    • zone: 인스턴스 영역

    HTTP 메서드 및 URL:

    GET  https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

승인된 주소 또는 주소 범위 삭제

승인된 주소를 삭제하려면 다음 안내를 따르세요.

Console

  1. Google Cloud Console의 Cloud SQL 인스턴스 페이지로 이동합니다.

    Cloud SQL 인스턴스 페이지로 이동

  2. 인스턴스 이름을 클릭하여 인스턴스 세부정보 페이지를 엽니다.
  3. 연결 탭을 선택합니다.
  4. 삭제할 주소의 삭제 아이콘(삭제)을 클릭합니다.
  5. 저장을 클릭하여 인스턴스를 업데이트합니다.

gcloud

  1. 인스턴스 설명으로 기존에 승인된 모든 주소를 표시합니다.
    gcloud sql instances describe [INSTANCE_NAME]
    

    ipConfiguration에서 authorizedNetwork 항목을 찾고, 유지하고자 하는 승인된 주소를 확인해 둡니다.

  2. 삭제하려는 모든 주소가 삭제되도록 승인된 네트워크 목록을 업데이트합니다.
    gcloud sql instances patch [INSTANCE_NAME] --authorized-networks=[IP_ADDR1],[IP_ADDR2]...
    
  3. 변경사항을 확인합니다.
    gcloud sql instances describe [INSTANCE_NAME]
    

REST v1beta4

  1. 인스턴스 설명으로 기존에 승인된 모든 주소를 표시합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • ip-address1: 첫 번째 IP 주소의 CIDR 형식
    • ip-address-name1: 첫 번째 IP 주소의 이름
    • ip-address2: 두 번째 IP 주소의 CIDR 형식
    • ip-address-name2: 두 번째 IP 주소의 이름
    • machine-type: 인스턴스 머신 유형
    • zone: 인스턴스 영역

    HTTP 메서드 및 URL:

    GET  https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

  2. 유지하려는 모든 주소를 포함하고 삭제하려는 모든 주소를 삭제하여 인스턴스를 업데이트합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • network_range_1: 삭제할 승인된 IP 주소 또는 네트워크 범위

    HTTP 메서드 및 URL:

    PATCH https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

    JSON 요청 본문:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks":
            [{"value": "network_range_1"}]
        }
      }
    }
    
    

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

  3. 변경사항을 확인합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • ip-address: IP 주소의 CIDR 형식
    • ip-address-name: IP 주소 이름
    • machine-type: 인스턴스 머신 유형
    • zone: 인스턴스 영역

    HTTP 메서드 및 URL:

    GET  https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

모든 공개 IP 연결을 거부하도록 인스턴스 구성

인스턴스에서 모든 공개 IP 연결을 거부하도록 구성하는 방법은 다음과 같습니다.

Console

  1. Google Cloud Console의 Cloud SQL 인스턴스 페이지로 이동합니다.

    Cloud SQL 인스턴스 페이지로 이동

  2. 인스턴스 이름을 클릭하여 인스턴스 세부정보 페이지를 엽니다.
  3. 연결 탭을 선택합니다.
  4. 승인된 모든 주소의 삭제 아이콘(삭제)을 클릭합니다.
  5. 저장을 클릭하여 인스턴스를 업데이트합니다.

gcloud

  1. 승인된 주소 목록을 삭제합니다.
    gcloud sql instances patch [INSTANCE_NAME] --clear-authorized-networks
    
  2. 변경사항을 확인합니다.
    gcloud sql instances describe [INSTANCE_NAME]
    

REST v1beta4

  1. 인스턴스 설명으로 기존에 승인된 모든 주소를 표시합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • ip-address1: 첫 번째 IP 주소의 CIDR 형식
    • ip-address-name1: 첫 번째 IP 주소의 이름
    • ip-address2: 두 번째 IP 주소의 CIDR 형식
    • ip-address-name2: 두 번째 IP 주소의 이름
    • machine-type: 인스턴스 머신 유형
    • zone: 인스턴스 영역

    HTTP 메서드 및 URL:

    GET  https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

  2. 빈 주소 목록으로 인스턴스를 업데이트합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID

    HTTP 메서드 및 URL:

    PATCH https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

    JSON 요청 본문:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks": []
        }
      }
    }
    

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

  3. 변경사항을 확인합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • machine-type: 인스턴스 머신 유형
    • zone: 인스턴스 영역

    HTTP 메서드 및 URL:

    GET  https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

공개 IP 중지

공개 IP를 사용 중지할 수 있지만 인스턴스도 비공개 IP를 사용하도록 구성된 경우에만 가능합니다. 비공개 IP를 사용 설정하려면 기존 인스턴스에서 비공개 IP를 사용하도록 구성을 참조하세요.

공개 IP를 사용 중지하려면 다음 안내를 따르세요.

Console

  1. Google Cloud Console의 Cloud SQL 인스턴스 페이지로 이동합니다.

    Cloud SQL 인스턴스 페이지로 이동

  2. 인스턴스 이름을 클릭하여 인스턴스 세부정보 페이지를 엽니다.
  3. 연결 탭을 선택합니다.
  4. 공개 IP 체크박스를 선택 해제합니다.
  5. 저장을 클릭하여 인스턴스를 업데이트합니다.

gcloud

  1. 인스턴스를 업데이트합니다.
    gcloud sql instances patch [INSTANCE_NAME] --no-assign-ip
    
  2. 변경사항을 확인합니다.
    gcloud sql instances describe [INSTANCE_NAME]
    

REST v1beta4

  1. 인스턴스 설명으로 기존에 승인된 모든 주소를 표시합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • ip-address1: 첫 번째 IP 주소의 CIDR 형식
    • ip-address-name1: 첫 번째 IP 주소의 이름
    • ip-address2: 두 번째 IP 주소의 CIDR 형식
    • ip-address-name2: 두 번째 IP 주소의 이름
    • machine-type: 인스턴스 머신 유형
    • zone: 인스턴스 영역

    HTTP 메서드 및 URL:

    GET  https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

  2. 인스턴스를 업데이트합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID

    HTTP 메서드 및 URL:

    PATCH https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

    JSON 요청 본문:

    {
      "settings":
      {
        "ipConfiguration": {"ipv4Enabled": false}
      }
    }
    

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

  3. 변경사항을 확인합니다.

    아래의 요청 데이터를 사용하기 전에 다음을 바꿉니다.

    • project-id: 프로젝트 ID
    • instance-id: 인스턴스 ID
    • machine-type: 인스턴스 머신 유형
    • zone: 인스턴스 영역

    HTTP 메서드 및 URL:

    GET  https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

    다음과 유사한 JSON 응답이 표시됩니다.

문제 해결

자세한 내용을 보려면 표의 링크를 클릭하세요.

문제 설명 문제 원인 해결 방법
FATAL: database 'user' does not exist. gcloud sql connect --user가 기본 `postgres` 사용자에서만 작동합니다. 기본 사용자와 연결한 후 사용자를 변경합니다.
SSL error: invalid padding. 서버 인증서 오류입니다. 새 서버 인증서를 만들고 순환합니다.
연결된 사용자를 확인하려는 경우 해당 사항 없음 해결 방법을 참조하세요.
Unauthorized to connect 오류 여러 근본 원인이 있을 수 있습니다. 해결 방법을 참조하세요.
네트워크 연결 실패 프로젝트에서 Service Networking API가 사용 설정되지 않았습니다. 프로젝트에서 Service Networking API를 사용 설정합니다.
Remaining connection slots are reserved 최대 연결 수에 도달했습니다. max_connections 플래그를 늘립니다.
Set Service Networking service account as servicenetworking.serviceAgent role on consumer project. 서비스 네트워킹 서비스 계정이 servicenetworking.serviceAgent 역할에 결합되지 않았습니다. 서비스 네트워킹 서비스 계정을 servicenetworking.serviceAgent 역할에 결합합니다.
error x509: certificate is not valid for any names, but wanted to match project-name:db-name. 알려진 문제: 현재 Cloud SQL 프록시 다이얼러는 Go 1.15와 호환되지 않습니다. 해결될 때까지 해결 방법이 나와 있는 GitHub의 토론을 참조하세요.
일부 운영체제의 인증서를 파싱할 수 없음 mac OS 11.0(Big Sur)의 x509 라이브러리를 사용하는 클라이언트는 postgres 인스턴스의 일부 인증서를 파싱할 수 없습니다. 고객에게 '취소됨'과 같은 일반적인 오류로 표시될 수 있습니다. 해결 방법은 서버 인증서를 순환하고 클라이언트 인증서를 다시 만드는 것입니다.
Cannot modify allocated ranges in CreateConnection. Please use UpdateConnection. 할당된 범위를 수정하거나 삭제한 후에 VPC 피어링이 업데이트되지 않았습니다. VPC 피어링 업데이트 세부정보는 해결 방법을 참조하세요.
Allocated IP range not found in network. 할당된 범위를 수정하거나 삭제한 후에 VPC 피어링이 업데이트되지 않았습니다. VPC 피어링 업데이트 세부정보는 해결 방법을 참조하세요.
ERROR: (gcloud.sql.connect) It seems your client does not have ipv6 connectivity and the database instance does not have an ipv4 address. Please request an ipv4 address for this database instance.. Cloud Shell을 사용하여 비공개 IP 인스턴스에 연결하려고 합니다. Cloud Shell에서 비공개 IP 주소만 있는 인스턴스로의 연결은 현재 지원되지 않습니다.

연결 취소됨

Got an error reading communication packets 또는 Aborted connection xxx to db: DB_NAME 오류 메시지가 표시됩니다.

문제 원인

  • 네트워킹 불안정.
  • TCP 연결 유지 명령어에 대한 응답이 없습니다. 클라이언트 또는 서버가 응답하지 않으며 과부하되었을 수 있습니다.
  • 데이터베이스 엔진 연결 수명이 초과되어 서버에서 연결을 종료했습니다.

해결 방법

애플리케이션은 네트워크 장애를 허용하고 연결 풀링 및 재시도와 같은 권장사항을 따라야 합니다. 대부분의 연결 풀러는 이러한 오류를 포착합니다(가능한 경우). 그렇지 않으면 애플리케이션이 다시 시도하거나 정상적으로 실패해야 합니다.

연결을 다시 시도하려면 다음 방법을 사용하는 것이 좋습니다.

  1. 지수 백오프. 재시도 간격을 기하급수적으로 늘립니다.
  2. 무작위 백오프도 추가합니다.
이러한 방법을 조합하면 제한을 줄일 수 있습니다.


FATAL: 'user' 데이터베이스가 존재하지 않습니다

gcloud sql connect --user를 사용하여 PostgreSQL 인스턴스에 연결하려고 하면 FATAL: database 'user' does not exist 오류 메시지가 표시됩니다.

문제 원인

gcloud sql connect --user 명령어가 기본 사용자(postgres)에서만 작동합니다.

해결 방법

기본 사용자를 사용하여 연결한 다음 "\c" psql 명령어를 사용하여 다른 사용자로 다시 연결하여 해결해 보세요.


SSL 오류: 잘못된 패딩

SSL을 사용하여 PostgreSQL 인스턴스에 연결하려고 하면 SSL error: invalid padding 오류 메시지가 표시됩니다.

문제 원인

서버 CA 인증서에 문제가 있을 수 있습니다.

해결 방법

새 서버 CA 인증서를 만들고 서버 인증서를 순환합니다.


연결된 사용자를 확인하려는 경우

누가 얼마나 오래 연결 중인지 확인하려고 합니다.

문제 원인

해당 사항 없음

해결 방법

데이터베이스에 로그인하고 SELECT datname, usename, application_name as appname, client_addr, state, now() - backend_start as conn_age, now() - state_change as last_activity_age FROM pg_stat_activity WHERE backend_type = 'client backend' ORDER BY 6 DESC LIMIT 20</code> 명령어를 실행합니다.


연결 권한 없음

Unauthorized to connect 오류 메시지가 표시됩니다.

문제 원인

승인은 여러 수준에서 발생하므로 여러 가지 원인이 있을 수 있습니다.

  • 데이터베이스 수준에서 데이터베이스 사용자가 있어야 하며 비밀번호가 일치해야 합니다.
  • 프로젝트 수준에서 사용자에게 올바른 IAM 권한이 없을 수 있습니다.
  • Cloud SQL 수준에서 인스턴스 연결 방법에 따라 근본 원인이 달라질 수 있습니다. 공개 IP를 통해 인스턴스에 직접 연결하는 경우 연결의 소스 IP가 인스턴스의 승인된 네트워크에 있어야 합니다.

    비공개 IP 연결은 기본적으로 허용되지만 RFC 1918 이외의 주소에서 연결하는 경우에는 예외입니다. RFC 1918 이외의 클라이언트 주소는 승인된 네트워크로 구성되어야 합니다.

    Cloud SQL은 기본적으로 VPC에서 RFC 1918 이외의 서브넷 경로를 학습하지 않습니다. RFC 1918 이외의 경로를 내보내려면 네트워크 피어링을 Cloud SQL로 업데이트해야 합니다. 예를 들면 다음과 같습니다.

    gcloud compute networks peerings update cloudsql-postgres-googleapis-com --network=NETWORK --export-subnet-routes-with-public-ip --project=PROJECT
    

    Cloud SQL 인증 프록시를 통해 연결하는 경우 IAM 권한이 올바르게 설정되었는지 확인합니다.

  • 네트워크 수준에서 Cloud SQL 인스턴스가 공개 IP를 사용하는 경우 연결의 소스 IP가 승인된 네트워크에 있어야 합니다.

해결 방법

  • 사용자 이름과 비밀번호를 확인합니다.
  • 사용자의 IAM 역할과 권한을 확인합니다.
  • 공개 IP를 사용하는 경우 소스가 승인된 네트워크에 있는지 확인합니다.

네트워크 연결 실패

Error: Network association failed due to the following error 오류 메시지가 표시됩니다. 서비스 네트워킹 서비스 계정을 소비자 프로젝트에서 servicenetworking.serviceAgent 역할로 설정합니다.

문제 원인

프로젝트에서 Service Networking API가 사용 설정되지 않았습니다.

해결 방법

프로젝트에서 Service Networking API를 사용 설정합니다. Cloud SQL 인스턴스에 비공개 IP 주소를 할당하려고 하고 공유 VPC를 사용할 때 이 오류가 표시되면 호스트 프로젝트에도 Service Networking API를 사용 설정해야 합니다.


나머지 연결 슬롯이 예약됨

FATAL: remaining connection slots are reserved for non-replication superuser connections 오류 메시지가 표시됩니다.

문제 원인

최대 연결 수에 도달했습니다.

해결 방법

max_connections 플래그 값을 수정합니다.


서비스 네트워킹 서비스 계정을 소비자 프로젝트에서 servicenetworking.serviceAgent 역할로 설정

set Service Networking service account as servicenetworking.serviceAgent role on consumer project. 오류 메시지가 표시됩니다.

문제 원인

서비스 네트워킹 서비스 계정이 servicenetworking.serviceAgent 역할에 결합되지 않았습니다.

해결 방법

이 문제를 완화하려면 다음 gcloud 명령어를 사용하여 Service Networking 서비스 계정을 servicenetworking.serviceAgent 역할에 결합합니다.

gcloud beta services identity create --service=servicenetworking.googleapis.com --project=PROJECT_ID
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:service-PROJECT_NUMBER@service-networking.iam.gserviceaccount.com" --role="roles/servicenetworking.serviceAgent"

오류 x509: 인증서가 유효한 이름이 없음

error x509: certificate is not valid for any names, but wanted to match project-name:db-name 오류 메시지가 표시됩니다.

문제 원인

알려진 문제: 현재 Cloud SQL 프록시 다이얼러는 Go 1.15와 호환되지 않습니다.

해결 방법

버그가 수정될 때까지 해결 방법이 포함된 GitHub의 토론을 참조하세요.


일부 운영체제의 인증서를 파싱할 수 없음

mac OS 11.0(Big Sur)의 x509 라이브러리를 사용하면 postgres 인스턴스의 인증서를 파싱하지 못할 수 있습니다. 이는 '취소됨'과 같은 일반적인 오류로 표시될 수 있습니다.

해결 방법

버그가 수정되어 새 인스턴스에서 이 문제가 발생하지 않습니다. 이 문제가 발생하는 이전 인스턴스의 경우 서버 인증서를 순환하고 클라이언트 인증서를 다시 만듭니다.


CreateConnection에서 할당된 범위를 수정할 수 없습니다. UpdateConnection을 사용하세요

Cannot modify allocated ranges in CreateConnection. Please use UpdateConnection 또는 The operation "operations/1234" resulted in a failure "Allocated IP range 'xyz' not found in network 오류 메시지가 표시됩니다.

문제 원인

비공개 서비스 연결이 수정되었습니다. 예를 들어 범위가 예약되었다가 삭제되면 비공개 연결도 삭제됩니다. 비공개 연결을 다시 만들지 않고 다른 예약된 범위를 사용하여 연결을 시도하면 첫 번째 오류가 발생합니다. 할당된 범위가 수정되었지만 vpc-peerings가 업데이트되지 않은 경우 두 번째 오류가 표시됩니다.

해결 방법

비공개 연결을 다시 만들거나 업데이트해야 합니다. 다음 명령어를 사용하고 --force 인수를 사용합니다.

gcloud services vpc-peerings update --network=VPC_NETWORK --ranges=ALLOCATED_RANGES --service=servicenetworking.googleapis.com --force

다음 단계