인스턴스 복제 구성

이 가이드에서는 Filestore 인스턴스 복제를 사용하는 방법을 보여줍니다.

시작하기 전에

  1. Filestore를 사용하는 데 필요한 설정 단계를 완료합니다. 인스턴스 할당량은 프로젝트, 리전, 등급에 따라 다릅니다. 이러한 작업을 완료할 수 있을 만큼 충분한지 확인하세요. 자세한 내용은 할당량 또는 할당량 증가 요청을 참고하세요.

  2. 아직 만들지 않았다면 Filestore 인스턴스를 만듭니다. 이 가이드의 맥락에서 이는 소스 인스턴스입니다.

인스턴스의 복제본 만들기

Google Cloud 콘솔

  1. Google Cloud 콘솔에서 Filestore 인스턴스 페이지로 이동합니다.

    Filestore 인스턴스로 이동

  2. 복제할 인스턴스의 인스턴스 ID를 클릭합니다.

  3. 설명 섹션에서 복제 탭을 클릭합니다.

  4. 복제본 만들기를 클릭합니다.

  5. 문서 링크를 클릭하여 지원되는 복구 지점 목표 (RPO)를 검토하고 다음을 클릭합니다.

  6. 필요에 따라 모든 필수 필드와 선택적 필드를 입력합니다.

    • 지정된 용량은 소스 이상이어야 합니다.
    • 다음 사양은 소스 인스턴스와 일치해야 합니다.
    • 데이터 손실 위험을 줄이기 위해 사용자는 소스에 고유한 리전과 영역을 선택하는 것이 좋습니다.
  7. 다음을 클릭합니다.

  8. 세부정보를 검토하고 다음을 클릭합니다.

  9. 만들기를 클릭합니다.

  10. 작업이 완료될 때까지 기다립니다. 완료되면 복제본이 인스턴스 페이지의 소스 인스턴스 아래에 표시됩니다.

  11. 복제본의 인스턴스 ID를 클릭하여 세부정보를 확인합니다.

gcloud

  1. filestore instances create 명령어를 실행하여 복제본 인스턴스를 만들 수 있습니다.

    gcloud filestore instances create INSTANCE-ID \
        --source-instance=SOURCE-INSTANCE \
        --project=PROJECT-ID \
        --location=LOCATION \
        --network=name="NETWORK" \
        --tier=TIER \
        --file-share=name="FILE-SHARE-NAME",capacity=FILE-SHARE-SIZE \
    

다음을 바꿉니다.

  • INSTANCE-ID을 만들려는 인스턴스의 이름(예: my-replica)으로 바꿉니다.
  • SOURCE-INSTANCE을 복제본을 만들려는 소스 인스턴스의 이름과 위치로 바꿉니다. 예를 들면 projects/my-genomics-project/locations/us-east1-b/instances/my-genomics-instance입니다.
  • PROJECT-ID를 소스 인스턴스가 있는 Google Cloud 프로젝트의 프로젝트 ID로 바꿉니다.
  • LOCATION을 복제본 인스턴스를 저장할 위치로 지정합니다(예: us-central1-a). 소스가 영역 서비스 등급에 있는 경우 복제본의 리전과 영역을 모두 지정해야 합니다.
  • NETWORK를 사용할 네트워크의 이름(예: default)으로 바꿉니다.
  • TIER을 필요한 서비스 등급(예: ZONAL)으로 바꿉니다. 등급과 용량 범위는 소스와 일치해야 합니다.
  • FILE-SHARE-NAME은 인스턴스에서 제공하는 NFS 파일 공유에 지정하는 이름입니다(예: vol1).
  • FILE-SHARE-SIZE는 원하는 파일 공유의 크기입니다(예: 1.25TB). 용량은 소스 이상이어야 하며, 해당하는 경우 동일한 용량 범위여야 합니다.

REST API

  1. Authorization 헤더에 대한 액세스 토큰을 생성하려면 gcloud CLI가 설치 및 초기화되어 있어야 합니다.

  2. cURL을 사용하여 Filestore API를 호출합니다.

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      -d '{"tier": "TIER",
          "networks": { "network": "NETWORK" },
          "file_shares": {"name": "SHARE_NAME","capacity_gb": "CAPACITY"},
          "replication": {"replicas":[{"peer_instance": "projects/PROJECT/locations/ACTIVE_LOCATION/instances/ACTIVE_NAME"}], "role":"standby"},
          "description": "DESCRIPTION" }' \
      "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/REPLICA_LOCATION/instances?instanceId=REPLICA_INSTANCE_NAME"
    

    각 항목의 의미는 다음과 같습니다.

    • TIER은 복제본에 사용할 서비스 계층의 이름입니다. 예를 들면 REGIONAL입니다.
    • NETWORK은 복제본에 사용할 네트워크의 이름입니다. 예를 들면 default입니다. 소스와 동일한 네트워크를 사용해야 합니다.
    • SHARE_NAME은 파일 공유의 이름입니다. 예를 들면 vol1입니다.
    • CAPACITY는 복제본에 할당할 크기(GiB)입니다. 예를 들면 1024입니다. 용량은 소스 인스턴스의 용량 이상이어야 합니다.
    • PROJECT은 복제본이 상주할 프로젝트의 이름입니다. 예를 들면 my-genomics-project입니다. 소스와 복제본은 동일한 프로젝트에 있어야 합니다.
    • ACTIVE_LOCATION은 소스가 있는 위치입니다. 예를 들면 us-east1입니다.
    • ACTIVE_NAME은 복제할 인스턴스의 이름입니다. 예를 들면 my-genomics-instance입니다.
    • DESCRIPTION은 만들려는 복제 인스턴스에 대한 설명입니다. 예를 들면 My genomics replica입니다.
    • REPLICA_LOCATION은 복제본이 상주할 위치입니다. 예를 들면 us-central1입니다.
    • REPLICA_INSTANCE_NAME은 만들려는 복제본 인스턴스의 이름입니다. 예를 들면 my-genomics-replica입니다.

인스턴스 상태 보기

Google Cloud 콘솔

  1. Google Cloud 콘솔에서 Filestore 인스턴스 페이지로 이동합니다.

    Filestore 인스턴스로 이동

  2. 확인할 복제본의 인스턴스 ID를 클릭합니다.

  3. 설명 섹션에서 복제 탭을 클릭합니다.

  4. 여기에서 복제본 상태마지막 동기화 지점을 확인할 수 있습니다. 마지막 동기화 지점은 데이터의 전체 사본이 복제본에 복사된 마지막 시간의 타임스탬프입니다.

gcloud

  1. 특정 인스턴스에 대한 정보를 보려면 instances describe 명령어를 실행합니다.

    gcloud filestore instances describe INSTANCE-ID \
        --project=PROJECT-ID \
        --location=LOCATION \
    

다음을 바꿉니다.

  • INSTANCE-ID를 보려는 Filestore 인스턴스의 인스턴스 ID(예: genomics-instance)로 바꿉니다.
  • PROJECT-ID를 Filestore 인스턴스가 포함된 Google Cloud 프로젝트의 프로젝트 ID로 바꿉니다.
  • LOCATION을 인스턴스가 있는 위치(예: us-east1-b)로 바꿉니다.

    instances describe 명령어에 대한 응답은 다음 예시와 비슷합니다.

    이 응답 예시에서는 인스턴스 복제가 사용 설정된 소스 인스턴스를 보여줍니다. 지정된 역할이 ACTIVE인지 확인하세요.

    createTime: '2024-06-17T22:17:26.475900265Z'
    fileShares:
    - capacityGb: '1024'
      name: vol1
    name: projects/genomics-project/locations/us-east1-b/instances/genomics-instance-source
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 172.27.220.2
      modes:
      - MODE_IPV4
      network: default
      reservedIpRange: 172.27.220.0/26
    replication:
      replicas:
      - peerInstance: projects/genomics-project/locations/us-central1-a/instances/genomics-instance-replica
        state: READY
      role: ACTIVE
    state: READY
    tier: ZONAL
    

    이 응답 예시에서는 일반 인스턴스로 승격된 복제본 인스턴스를 보여줍니다. 아직 사용 설정되지 않았으므로 복제가 지정되지 않습니다.

    createTime: '2024-06-20T17:11:56.048062134Z'
    fileShares:
    - capacityGb: '1024'
      name: vol1
    name: projects/genomics-project/locations/us-west2-a/instances/genomics-instance-replica
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 10.155.90.194
      network: default
      reservedIpRange: 10.155.90.192/26
    satisfiesPzi: true
    state: READY
    tier: ZONAL
    

    이 응답 예시에서는 활성 인스턴스와 페어링된 복제본을 보여줍니다. 역할이 STANDBY로 표시됩니다.

    createTime: '2024-06-21T04:15:21.721579074Z'
    fileShares:
    - capacityGb: '1280'
      name: vol1
    name: projects/genomics-project/locations/us-west1-a/instances/genomics-replica
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 10.153.44.194
      network: default
      reservedIpRange: 10.153.44.192/26
    replication:
      replicas:
      - peerInstance: projects/genomics-project/locations/us-west2-a/instances/genomics-instance
        state: READY
      role: STANDBY
    satisfiesPzi: true
    state: READY
    tier: ZONAL
    

REST API

  1. Authorization 헤더에 대한 액세스 토큰을 생성하려면 gcloud CLI가 설치 및 초기화되어 있어야 합니다.

  2. cURL을 사용하여 Filestore API를 호출합니다.

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      GET "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/instances/INSTANCE_NAME"

    각 항목의 의미는 다음과 같습니다.

    • PROJECT은 인스턴스가 있는 프로젝트의 이름입니다. 예를 들면 my-genomics-project입니다.
    • LOCATION은 인스턴스가 있는 위치입니다. 예를 들면 us-west1-a입니다.
    • INSTANCE_NAME은 보려는 인스턴스의 이름입니다. 예를 들면 my-genomics-instance입니다.

프로젝트의 모든 인스턴스 나열

Google Cloud 콘솔

  1. Google Cloud 콘솔에서 Filestore 인스턴스 페이지로 이동합니다.

    Filestore 인스턴스로 이동

    복제본은 연결된 소스 인스턴스 아래에 나열됩니다.

gcloud

  1. 프로젝트의 모든 인스턴스 목록을 확인하려면 instances list 명령어를 실행합니다.

    gcloud filestore instances list
        --project=PROJECT-ID \
    

    다음을 바꿉니다.

    • PROJECT-ID를 보려는 프로젝트의 프로젝트 ID로 바꿉니다.

    응답은 다음과 비슷한 결과를 반환합니다.

    INSTANCE_NAME                       LOCATION     TIER      CAPACITY_GB  FILE_SHARE_NAME  IP_ADDRESS     STATE  CREATE_TIME
    genomics-source-1                   us-east1-b   ZONAL     1024         vol1             172.27.220.2   READY  2024-06-17T22:17:26
    genomics-source-1-replica           us-west1-a   ZONAL     1024         vol1             10.142.57.194  READY  2024-06-17T23:47:19
    

REST API

  1. Authorization 헤더에 대한 액세스 토큰을 생성하려면 gcloud CLI가 설치 및 초기화되어 있어야 합니다.

  2. cURL을 사용하여 Filestore API를 호출합니다.

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      GET "https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances"

    각 항목의 의미는 다음과 같습니다.

    • PROJECT은 인스턴스가 있는 프로젝트의 이름입니다. 예를 들면 my-genomics-project입니다.
    • LOCATION은 검색하려는 위치입니다. 프로젝트 내 모든 위치의 인스턴스를 검색하려면 -를 사용합니다.

복제 중단 및 복제본 승격

이 섹션에서는 활성 인스턴스와 대기 인스턴스 간의 복제를 중단합니다. 이 작업을 수행하면 복제본이 일반 인스턴스로 승격됩니다.

  • 이 작업은 되돌릴 수 없으므로 신중하게 사용해야 합니다.

  • 일반 인스턴스로 승격되면 리소스를 새 복제본과 페어링할 수 있습니다.

  • 장애 복구는 자동으로 실행되지 않습니다. 복제 중단 작업이 완료되면 관리자는 애플리케이션을 새 소스 인스턴스에 다시 연결해야 합니다. 자세한 내용은 복제본 승격을 참고하세요.

Google Cloud 콘솔

  1. Google Cloud 콘솔에서 Filestore 인스턴스 페이지로 이동합니다.

    Filestore 인스턴스로 이동

  2. 사용할 복제본의 인스턴스 ID를 클릭합니다.

  3. 복제 중단을 클릭합니다.

  4. 계속하기 전에 알림을 읽어보세요.

    복제를 중단하면 데이터 동기화가 영구적으로 중지되고 활성 및 대기 인스턴스가 모두 일반 인스턴스로 변환됩니다. 마지막으로 기록된 동기화 지점 이후에 변경된 사항은 복제되지 않습니다. 이 작업은 되돌릴 수 없습니다.

  5. 복제본의 인스턴스 ID를 입력한 다음 복제 중단을 클릭합니다.

  6. 작업이 완료될 때까지 기다립니다.

gcloud

  1. gcloud filestore instances promote-replica 명령어를 실행하여 복제본 인스턴스를 승격할 수 있습니다.

    gcloud filestore instances promote-replica INSTANCE-ID \
        --project=PROJECT-ID \
        --location=LOCATION \
    

다음을 바꿉니다.

  • INSTANCE-ID를 승격할 Filestore 인스턴스의 인스턴스 ID(예: my-replica)로 바꿉니다.
  • PROJECT-ID를 Filestore 인스턴스가 포함된 Google Cloud 프로젝트의 프로젝트 ID로 바꿉니다.
  • LOCATION을 복제본이 있는 위치(예: us-central1)로 바꿉니다.

성공적으로 완료되면 다음과 같은 응답이 반환됩니다.

capacityGb: '1024'
capacityStepSizeGb: '256'
createTime: '2024-06-20T17:11:56.048062134Z'
fileShares:
- capacityGb: '1024'
  name: vol1
maxCapacityGb: '9984'
maxShareCount: '1'
name: projects/genomics-project/locations/us-west2-a/instances/my-replica
networks:
- connectMode: DIRECT_PEERING
  ipAddresses:
  - 10.155.90.194
  network: default
  reservedIpRange: 10.155.90.192/26
protocol: NFS_V3
replication:
  replicas:
  - lastActiveSyncTime: '2024-06-21T00:13:23Z'
    peerInstance: projects/genomics-project/locations/us-east1-b/instances/my-source
  role: STANDBY
satisfiesPzi: true
state: PROMOTING
tier: ZONAL

REST API

  1. Authorization 헤더에 대한 액세스 토큰을 생성하려면 gcloud CLI가 설치 및 초기화되어 있어야 합니다.

  2. cURL을 사용하여 Filestore API를 호출합니다.

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      -d '{}' "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/instances/REPLICA_NAME:promoteReplica"

    각 항목의 의미는 다음과 같습니다.

    • PROJECT은 복제본이 있는 프로젝트의 이름입니다. 예를 들면 my-genomics-project입니다.
    • LOCATION은 복제본이 있는 위치입니다. 예를 들면 us-west1-a입니다.
    • REPLICA_NAME은 승격할 인스턴스의 이름입니다. 예를 들면 my-genomics-replica입니다.

인스턴스 삭제

Google Cloud 콘솔

  1. Google Cloud 콘솔에서 Filestore 인스턴스 페이지로 이동합니다.

    Filestore 인스턴스로 이동

    복제본은 연결된 소스 인스턴스 아래에 나열됩니다. 복제본이 표시되지 않으면 이 작업의 gcloud 명령어를 참고하세요.

  2. 삭제할 인스턴스의 인스턴스 ID를 클릭합니다.

  3. 삭제를 클릭합니다.

gcloud

  1. 프로젝트의 모든 인스턴스 목록을 확인하려면 instances list 명령어를 실행합니다.

    gcloud filestore instances list
        --project=PROJECT-ID \
    

    다음을 바꿉니다.

    • PROJECT-ID를 보려는 프로젝트의 프로젝트 ID로 바꿉니다.
  2. 삭제할 인스턴스의 세부정보를 복사합니다.

  3. filestore instances delete 명령어를 실행하여 인스턴스를 삭제할 수 있습니다.

    gcloud filestore instances delete INSTANCE-ID \
        --location=LOCATION \
    

다음을 바꿉니다.

  • INSTANCE-ID를 삭제할 Filestore 인스턴스의 인스턴스 ID(예: my-replica)로 바꿉니다.
  • LOCATION을 복제본이 있는 위치(예: us-central1-a)로 바꿉니다.

REST API

  1. Authorization 헤더에 대한 액세스 토큰을 생성하려면 gcloud CLI가 설치 및 초기화되어 있어야 합니다.

  2. cURL을 사용하여 Filestore API를 호출합니다.

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      --request DELETE "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/instances/INSTANCE_NAME"

    각 항목의 의미는 다음과 같습니다.

    • PROJECT은 인스턴스가 있는 프로젝트의 이름입니다. 예를 들면 my-genomics-project입니다.
    • LOCATION은 인스턴스가 있는 위치입니다. 예를 들면 us-west1-a입니다.
    • INSTANCE_NAME은 삭제할 인스턴스의 이름입니다. 예를 들면 my-genomics-instance입니다.

인스턴스 복제 모니터링

Google Cloud 콘솔

Cloud Monitoring 대시보드에서 Filestore 인스턴스 복제 측정항목을 보려면 다음 단계를 따르세요.

  1. 시작하기 전에 다음 역할에 액세스할 수 있는지 확인하세요.

    • 모니터링 뷰어
    • 모니터링 편집자

    이러한 역할에 대한 액세스 권한을 부여하는 방법을 알아보려면 Cloud Monitoring에 액세스 권한 부여를 참고하세요.

  2. Google Cloud 콘솔에서  측정항목 탐색기 페이지로 이동합니다.

    측정항목 탐색기로 이동

    검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Monitoring인 결과를 선택합니다.

  3. 측정항목 선택 확장 가능 섹션을 클릭합니다.

  4. 리소스 또는 측정항목 이름으로 필터링 필드에 filestore를 입력하고 Filestore 인스턴스 확장 가능 섹션을 선택합니다.

  5. 인스턴스 확장 가능 섹션을 선택한 다음 RPO를 클릭합니다.

  6. RPO 측정항목 times_since_last_replication이 표시됩니다. 이 측정항목은 복제된 데이터의 초기 동기화가 완료된 후 몇 분이 지나면 사용할 수 있습니다.

다음 단계