새 네트워크 아키텍처로 인스턴스 업그레이드


이 페이지에서는 Cloud SQL 인스턴스를 이전 네트워크 아키텍처에서 새 네트워크 아키텍처로 업그레이드하는 방법을 설명합니다.

이 Cloud SQL 네트워크 아키텍처 업그레이드 페이지는 일부 Cloud SQL 인스턴스에만 적용됩니다. Cloud SQL 인스턴스가 2021년 8월 이전에 생성된 Virtual Private Cloud(VPC) 네트워크 프로젝트를 사용할 경우 인스턴스의 Cloud SQL 네트워크 아키텍처를 업그레이드해야 합니다.

개요

다음 표에서는 이전 네트워크 아키텍처와 비교한 새 네트워크 아키텍처의 이점을 보여줍니다.

기능 이전 네트워크 아키텍처 새 네트워크 아키텍처
Database Migration Service를 사용하여 Cloud SQL에서 PostgreSQL용 AlloyDB로, PostgreSQL용 AlloyDB에서 Cloud SQL로 마이그레이션 마이그레이션하려면 비공개 IP 주소를 구성해야 함 추가 네트워크 구성이 필요하지 않습니다.

예를 들어 Cloud SQL에서 PostgreSQL용 AlloyDB로 마이그레이션 또는 PostgreSQL용 AlloyDB에서 Cloud SQL로 마이그레이션입니다.
비공개 IP를 사용하여 Cloud Build 또는 Vertex AI와 같은 비공개 서비스에 Cloud SQL 인스턴스 연결 네트워크 피어링 비전이성으로 인해 지원되지 않음 지원됨
Assured Workloads를 준수하는 인스턴스 지원되지 않음 지원됨
관리형 Microsoft AD 지원되지 않음 지원됨
Private Service Connect 지원되지 않음 지원됨
프로젝트당 기본 Cloud SQL 인스턴스 할당량 100 1000

업그레이드 계획하기

Cloud SQL 인스턴스의 네트워크 아키텍처를 업그레이드하기 전에 다음 업그레이드 제약조건에 따라 업그레이드를 계획합니다.

  • 네트워크 아키텍처를 업그레이드하는 경우 데이터베이스 인스턴스에 최대 4분의 다운타임이 발생합니다.

  • 진행 중인 데이터 마이그레이션이 있는 경우 데이터 마이그레이션 동안에는 소스 인스턴스를 새 아키텍처로 업그레이드할 수 없습니다.

  • 지난 4일 이내에 동일한 리전의 네트워크에 인스턴스가 2개 이상 있는 경우 고가용성이 사용 설정된 인스턴스만 업그레이드할 수 있습니다.

    참고: 이 시나리오에서 Cloud SQL은 추가 /24 범위를 일시적으로 사용하여 새 아키텍처에서 업그레이드된 인스턴스를 호스팅합니다. Cloud SQL이 네트워크 및 리전 조합의 모든 인스턴스를 업그레이드하면 Cloud SQL이 범위를 해제합니다.

    예를 들어 네트워크에 인스턴스가 2개 있고 하나는 us-east1에, 다른 하나는 us-central1에 있는 경우 고가용성의 사용 설정 여부에 관계없이 두 인스턴스를 모두 업그레이드할 수 있습니다. 그러나 네트워크에 인스턴스 3개가 있고 하나는 us-east1에, 다른 2개는 us-central1에 있는 경우 고가용성이 사용 설정된 us-central1에서 인스턴스를 업그레이드할 수 있습니다. us-east1의 인스턴스는 해당 리전의 유일한 인스턴스이므로 고가용성의 사용 설정 여부에 관계없이 업그레이드할 수 있습니다.

  • 고가용성 인스턴스를 새 네트워크 아키텍처로 업그레이드한 후에는 이 인스턴스에 대해 고가용성을 비활성화할 수 없습니다.

  • 외부 소스에서 인스턴스에 연결하는 경우 커스텀 경로 내보내기를 사용 설정하도록 모든 피어링 연결이 업데이트되는지 확인합니다.

  • 장애 조치 복제본이 있는 기존 고가용성(HA) 인스턴스는 업그레이드를 지원하지 않습니다.

  • 네트워크 아키텍처를 업그레이드한 후에는 업그레이드된 인스턴스의 기존 HA 장애 조치 복제본을 만들 수 없습니다.

  • 2023년 8월 11일 이후에 Cloud SQL 인스턴스에 PITR(point-in-time recovery) 또는 복제가 사용 설정된 경우에는 인스턴스를 업그레이드할 수 없습니다. 이는 2023년 8월 11일 이후에 PITR 로그가 Cloud Storage에 저장되기 때문입니다.

네트워크 프로젝트의 모든 Cloud SQL 인스턴스 업그레이드 계획

Cloud SQL 인스턴스는 VPC 네트워크와 동일한 프로젝트에 있거나 별도의 프로젝트에서 호스팅될 수 있습니다. VPC 네트워크를 호스팅하는 프로젝트가 네트워크 프로젝트입니다.

네트워크 프로젝트 내에서 하나 이상의 Cloud SQL 인스턴스가 이전 네트워크 아키텍처를 사용하는 경우 전체 프로젝트가 이전 네트워크 아키텍처를 사용합니다. 이 경우 프로젝트가 새 네트워크 아키텍처로 완전히 업그레이드되지 않습니다.

gcloud CLI 또는 Cloud SQL Admin API를 사용하여 프로젝트 내의 모든 Cloud SQL 인스턴스에 대한 네트워크 아키텍처를 쿼리할 수 있습니다.

인스턴스의 비공개 네트워크를 수정하거나 인스턴스에 비공개 IP를 사용 설정하면 동일한 요청에서 네트워크 아키텍처를 수정할 수 없습니다. 그렇게 하면 요청이 거부됩니다. 이를 방지하려면 네트워크 프로젝트를 수정하기 전에 네트워크 프로젝트의 모든 인스턴스를 업그레이드하는 것이 좋습니다.

Cloud SQL 네트워크 아키텍처 업그레이드

Cloud SQL 인스턴스의 네트워크 아키텍처를 업그레이드하려면 다음을 수행합니다.

  1. 단일 Cloud SQL 인스턴스 또는 여러 Cloud SQL 인스턴스의 네트워크 아키텍처를 확인합니다.
  2. Cloud SQL 인스턴스의 네트워크 아키텍처 업그레이드합니다.

단일 Cloud SQL 인스턴스의 네트워크 아키텍처 확인

단일 인스턴스의 현재 네트워크 아키텍처를 확인하려면 gcloud sql instances describe 명령어 또는 instances.get 메서드를 사용합니다.

gcloud

gcloud CLI 설치 및 시작에 대한 자세한 내용은 gcloud CLI 설치를 참조하세요. Cloud Shell 시작 방법에 대한 자세한 내용은 Cloud Shell 사용을 참조하세요.

단일 인스턴스의 네트워크 아키텍처를 확인하려면 다음 명령어를 실행합니다.

   gcloud sql instances describe INSTANCE_NAME
   

인스턴스에 이전 네트워크 아키텍처가 사용되는 경우 다음과 유사한 응답이 표시됩니다.

   name: INSTANCE_NAME
   project: PROJECT_ID
   ...
   sql_network_architecture: OLD_NETWORK_ARCHITECTURE
  

인스턴스에 새 네트워크 아키텍처가 사용되는 경우 다음과 유사한 응답이 표시됩니다.

   name: INSTANCE_NAME
   project: PROJECT_ID
   ...
   sql_network_architecture: NEW_NETWORK_ARCHITECTURE
  

sql_network_architecture 매개변수는 인스턴스에 이전 네트워크 아키텍처 (OLD_NETWORK_ARCHITECTURE)가 사용되는지 또는 새 네트워크 아키텍처 (NEW_NETWORK_ARCHITECTURE)가 사용되는지를 나타냅니다.

REST v1

인스턴스의 네트워크 아키텍처를 확인하려면 Cloud SQL Admin API의 instances.get 메서드를 사용합니다.

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

  • PROJECT_ID: 프로젝트 ID입니다.
  • INSTANCE_NAME: 인스턴스 이름입니다.
  • NETWORK_ARCHITECTURE_TYPE: 네트워크 아키텍처 유형은 다음과 같이 정의됩니다.
    • OLD_NETWORK_ARCHITECTURE: 인스턴스에서 이전 네트워크 아키텍처를 사용합니다.
    • NEW_NETWORK_ARCHITECTURE: 인스턴스에서 새 네트워크 아키텍처를 사용합니다.

HTTP 메서드 및 URL:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

JSON 요청 본문:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

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

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "kind": sql#instance
  "name": INSTANCE_NAME
  "project": PROJECT_ID
  "sqlNetworkArchitecture": enum (SqlNetworkArchitecture)
  ...
}

REST v1beta4

인스턴스의 네트워크 아키텍처를 확인하려면 Cloud SQL Admin API의 instances.get 메서드를 사용합니다.

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

  • PROJECT_ID: 프로젝트 ID입니다.
  • INSTANCE_NAME: 인스턴스 이름입니다.
  • NETWORK_ARCHITECTURE_TYPE: 네트워크 아키텍처 유형은 다음과 같이 정의됩니다.
    • OLD_NETWORK_ARCHITECTURE: 인스턴스에서 이전 네트워크 아키텍처를 사용합니다.
    • NEW_NETWORK_ARCHITECTURE: 인스턴스에서 새 네트워크 아키텍처를 사용합니다.

HTTP 메서드 및 URL:

GET https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

JSON 요청 본문:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

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

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "kind": sql#instance
  "name": INSTANCE_NAME
  "project": PROJECT_ID
  "sqlNetworkArchitecture": enum (SqlNetworkArchitecture)
  ...
}

여러 Cloud SQL 인스턴스의 네트워크 아키텍처 확인

프로젝트에 있는 여러 인스턴스의 네트워크 아키텍처를 확인하려면 gcloud sql instances list 명령어 또는 instance.list 메서드를 사용합니다.

gcloud

프로젝트에 있는 여러 인스턴스의 네트워크 아키텍처를 확인하려면 다음 명령어를 실행합니다.

gcloud sql instances list --show-sql-network-architecture

결과는 다음과 유사합니다.

NAME        DATABASE_VERSION LOCATION   ...     SQL_NETWORK_ARCHITECTURE
instance_1  POSTGRES_13      asia-northeast1-b  OLD_NETWORK_ARCHITECTURE
instance_2  MYSQL_5_7        europe-west1-d     NEW_NETWORK_ARCHITECTURE
...

REST v1

프로젝트에 있는 여러 인스턴스의 네트워크 아키텍처를 확인하려면 instance.list 메서드를 사용합니다.

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

  • PROJECT_ID: 프로젝트 ID입니다.
  • NETWORK_ARCHITECTURE_TYPE: 네트워크 아키텍처 유형은 다음과 같습니다.
    • OLD_NETWORK_ARCHITECTURE: 인스턴스에서 이전 네트워크 아키텍처를 사용합니다.
    • NEW_NETWORK_ARCHITECTURE: 인스턴스에서 새 네트워크 아키텍처를 사용합니다.

HTTP 메서드 및 URL:

LIST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

JSON 요청 본문:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

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

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "kind": sql#instance
  "name": INSTANCE_NAME
  "project": PROJECT_ID
  "sqlNetworkArchitecture": enum (SqlNetworkArchitecture)
  ...
}

REST v1beta4

프로젝트에 있는 여러 인스턴스의 네트워크 아키텍처를 확인하려면 instance.list 메서드를 사용합니다.

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

  • PROJECT_ID: 프로젝트 ID입니다.
  • NETWORK_ARCHITECTURE_TYPE: 네트워크 아키텍처 유형은 다음과 같이 정의됩니다.
    • OLD_NETWORK_ARCHITECTURE: 인스턴스에서 이전 네트워크 아키텍처를 사용합니다.
    • NEW_NETWORK_ARCHITECTURE: 인스턴스에서 새 네트워크 아키텍처를 사용합니다.

HTTP 메서드 및 URL:

LIST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances

JSON 요청 본문:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

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

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "kind": sql#instance
  "name": INSTANCE_NAME
  "project": PROJECT_ID
  "sqlNetworkArchitecture": enum (SqlNetworkArchitecture)
  ...
}

단일 Cloud SQL 인스턴스의 네트워크 아키텍처 업그레이드

단일 인스턴스의 네트워크 아키텍처를 업그레이드하려면 gcloud sql instances patch 명령어, instance.update 메서드 또는 instance.patch 메서드를 사용합니다.

gcloud

인스턴스의 네트워크 아키텍처를 업그레이드하려면 다음 명령어를 실행합니다.

gcloud sql instances patch INSTANCE_NAME --upgrade-sql-network-architecture

업그레이드 작업은 몇 분 정도 걸립니다.

업그레이드하는 동안 장기 실행 작업이 시작되고 작업 토큰이 반환됩니다.

operation_id

REST v1

인스턴스의 네트워크 아키텍처를 업그레이드하려면 Cloud SQL Admin API의 instance.update 또는 instance.patch 메서드를 사용합니다.

Cloud SQL 네트워크 아키텍처를 업그레이드하는 경우 요청에 인스턴스에 대한 추가 업데이트가 허용되지 않습니다. 요청 본문에는 sqlNetworkArchitectureNEW_NETWORK_ARCHITECTURE로 설정된 DatabaseInstance 객체의 인스턴스가 포함됩니다.

업그레이드하는 동안 장기 실행 작업이 시작되고 작업 토큰이 반환됩니다.

operation_id

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

  • PROJECT_ID: 프로젝트 ID입니다.
  • INSTANCE_NAME: 인스턴스 이름입니다.
  • NETWORK_ARCHITECTURE_TYPE: 네트워크 아키텍처 유형은 다음과 같이 정의됩니다.
    • OLD_NETWORK_ARCHITECTURE: 인스턴스에서 이전 네트워크 아키텍처를 사용합니다.
    • NEW_NETWORK_ARCHITECTURE: 인스턴스에서 새 네트워크 아키텍처를 사용합니다.

HTTP 메서드 및 URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

JSON 요청 본문:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

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

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "kind": sql#instance,
  "targetLink": string,
  "status": enum (SqlOperationStatus),
  "name": string,
  "insertTime": string,
  "startTime": string,
  "endTime": string
  ...
}

인스턴스 업그레이드가 실패하면 업그레이드 작업을 다시 시도하세요.

REST v1beta4

인스턴스의 네트워크 아키텍처를 업그레이드하려면 Cloud SQL Admin API의 instance.update method 또는 instance.patch method를 사용합니다.

Cloud SQL 네트워크 아키텍처를 업그레이드하는 경우 요청에 인스턴스에 대한 추가 업데이트가 허용되지 않습니다. 요청 본문에는 sqlNetworkArchitectureNEW_NETWORK_ARCHITECTURE로 설정된 DatabaseInstance 객체의 인스턴스가 포함됩니다.

업그레이드하는 동안 장기 실행 작업이 시작되고 다음 작업 토큰이 반환됩니다.

operation_id

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

  • PROJECT_ID: 프로젝트 ID입니다.
  • INSTANCE_NAME: 인스턴스 이름입니다.
  • NETWORK_ARCHITECTURE_TYPE: 네트워크 아키텍처 유형은 다음과 같이 정의됩니다.
    • OLD_NETWORK_ARCHITECTURE: 인스턴스에서 이전 네트워크 아키텍처를 사용합니다.
    • NEW_NETWORK_ARCHITECTURE: 인스턴스에서 새 네트워크 아키텍처를 사용합니다.

HTTP 메서드 및 URL:

PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

JSON 요청 본문:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

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

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "kind": sql#instance,
  "targetLink": string,
  "status": enum (SqlOperationStatus),
  "name": string,
  "insertTime": string,
  "startTime": string,
  "endTime": string
  ...
}

어떤 이유로든 인스턴스 업그레이드가 실패하면 업그레이드 작업을 다시 시도할 수 있습니다.

자주 묻는 질문(FAQ)

이 섹션에서는 Cloud SQL 네트워크 아키텍처 업그레이드에 대해 자주 묻는 질문(FAQ)의 답변을 제공합니다.

업그레이드가 Cloud SQL 인스턴스에 어떤 영향을 주나요?

네트워크 아키텍처를 업그레이드할 때 Cloud SQL 인스턴스는 MAINTENANCE 상태가 됩니다. 이 상태에서 인스턴스에는 평균적으로 최대 4분의 다운타임이 발생합니다. 인스턴스에 대한 추가 변경사항은 업그레이드가 완료될 때까지 허용되지 않습니다. 프로젝트 또는 네트워크의 다른 인스턴스는 업그레이드에 영향을 받지 않습니다.

업그레이드 후 모든 기능이 동일하게 작동하나요?

Cloud SQL 인스턴스의 모든 기능은 이전 아키텍처에서와 같이 새 아키텍처에서도 동일하게 작동합니다. 새 네트워크 아키텍처를 사용하도록 인스턴스를 업그레이드한 후 해당 인스턴스의 네트워크를 전환하려면 목적지 네트워크의 모든 인스턴스도 새 네트워크 아키텍처로 업그레이드되어야 합니다.

어떤 인스턴스에서 이전 네트워크 아키텍처를 사용하나요?

2021년 8월 이후에 생성된 새 프로젝트는 자동으로 새 네트워크 아키텍처를 사용합니다. 기존 프로젝트에는 2년이 지났지만 여전히 이전 네트워크 아키텍처를 사용하는 Cloud SQL 인스턴스가 포함될 수 있습니다. 따라서 기존 프로젝트 내의 새 인스턴스가 새 네트워크 아키텍처를 사용하려면 먼저 해당 프로젝트 내의 모든 인스턴스를 업그레이드해야 합니다.

모든 새 Cloud SQL 인스턴스가 새 네트워크 아키텍처에서 생성되나요?

기본적으로 2021년 8월 이후에 생성된 프로젝트에서 만든 새 Cloud SQL 인스턴스에는 새 네트워크 아키텍처가 사용됩니다. 2021년 8월 이전에 생성된 프로젝트에서 인스턴스를 만들고 새 네트워크 아키텍처를 사용하려면 다음을 수행해야 합니다.

  1. 해당 프로젝트의 모든 기존 인스턴스를 새 네트워크 아키텍처로 업데이트합니다.

  2. Google Cloud 지원 계약이 있는 경우 프로젝트의 기본 네트워크 아키텍처를 새 아키텍처로 변경하려면 지원 요청을 작성합니다.

  3. 지원 계약이 없는 경우 인스턴스를 만든 다음 새 네트워크 아키텍처로 업그레이드합니다.

프로젝트의 기본값이 변경되면 해당 프로젝트에서 새 네트워크 아키텍처를 사용하여 인스턴스를 만들 수 있습니다.

프로젝트의 기본 네트워크 아키텍처를 변경하지 않으면 해당 프로젝트의 모든 새 인스턴스에 이전 네트워크 아키텍처가 사용됩니다. 그런 다음 이러한 각 인스턴스를 새 네트워크 아키텍처로 개별적으로 업그레이드해야 합니다.

단일 명령어로 프로젝트의 모든 인스턴스를 업데이트할 수 있나요?

아니요. 새 네트워크 아키텍처로의 업그레이드는 각 인스턴스를 기반으로 합니다.

기본 인스턴스를 업그레이드하면 복제본이 자동으로 업그레이드되나요?

아니요. 새 네트워크 아키텍처로의 업그레이드는 각 개별 인스턴스를 기반으로 합니다. 각 복제본은 별도의 인스턴스로 취급되며, 개별적으로 업그레이드해야 합니다. 즉, 기본 인스턴스가 업그레이드되고 복제본에 이전 네트워크 아키텍처가 사용되는 경우 복제본은 영향을 받지 않습니다. 반대의 경우도 마찬가지입니다. 복제본을 업그레이드하는 경우 기본 인스턴스가 영향을 받지 않습니다.

다음 단계