데이터 복사

이 주제에서는 gsutil 또는 gcloud 명령줄 도구를 사용하여 데이터를 Cloud Filestore 인스턴스로 복사하거나 Cloud Filestore 인스턴스에서 복사하는 방법을 알아봅니다.

Cloud Storage 버킷에서 Cloud Filestore 파일 공유로 데이터 복사

gsutil rsync 명령어를 사용하여 Cloud Storage 버킷에서 Compute Engine VM 인스턴스에 마운트된 Cloud Filestore 파일 공유로 데이터를 복사할 수 있습니다. gsutil rsync 명령어는 Linux와 Windows VM에서 모두 작동합니다. Linux VM 인스턴스에서는 rsync 등의 표준 명령어를 사용하여 데이터를 복사할 수도 있습니다.

Linux

  1. VM 인스턴스 페이지로 이동합니다.
  2. 대상 Cloud Filestore 파일 공유가 마운트된 클라이언트 VM 인스턴스를 선택하고 SSH를 클릭하여 해당 VM 인스턴스에서 터미널을 엽니다.
  3. 다음 명령어를 실행하여 마운트된 Cloud Filestore 파일 공유로 데이터를 복사합니다. [VALUES_IN_BRACKETS]를 적절한 값으로 바꾸세요. 지정한 위치의 하위 디렉터리로 재귀 실행하려면 gsutil rsync 명령어와 함께 -r 옵션을 사용합니다.

      gsutil rsync gs://[BUCKET] [MOUNT_DIRECTORY]
    

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

    • [BUCKET]은 복사할 데이터가 있는 Cloud Storage 버킷, 디렉터리 또는 하위 디렉터리입니다.
    • [MOUNT_DIRECTORY]는 Cloud Filestore 파일 공유가 마운트된 클라이언트의 디렉터리입니다.

다음 명령어는 data 버킷 및 모든 하위 디렉토리의 데이터를 /mnt/filer 디렉토리로 복사합니다.

gsutil rsync -r gs://data /mnt/filer

Windows

  1. VM 인스턴스 페이지로 이동합니다.
  2. 대상 Cloud Filestore 파일 공유가 드라이브에 매핑된 클라이언트 VM 인스턴스를 선택하고 RDP를 클릭하여 해당 VM에 대한 원격 데스크톱 연결을 엽니다.
  3. 터미널 창을 열고 다음 명령어를 실행하여 드라이브를 Cloud Filestore 파일 공유에 매핑합니다.

    net use [DRIVE_LETTER]: \\[IP_ADDRESS]\[FILESHARE]
    

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

    • [DRIVE_LETTER]는 Cloud Filestore 파일 공유에 매핑할 드라이브입니다.
    • [IP_ADDRESS]는 Cloud Filestore 인스턴스의 IP 주소입니다.
    • [FILESHARE]는 Cloud Filestore 인스턴스의 파일 공유 이름입니다.

    예를 들면 net use Z: \\10.123.45.67\my_share입니다.

  4. 다음 명령어를 실행하여 매핑된 Cloud Filestore 파일 공유로 데이터를 복사합니다. [VALUES_IN_BRACKETS]를 적절한 값으로 바꾸세요. 지정한 위치의 하위 디렉터리로 재귀 실행하려면 gsutil rsync 명령어와 함께 -r 옵션을 사용합니다.

      gsutil rsync gs://[BUCKET] [MAPPED_DRIVE]
    

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

    • [BUCKET]은 복사할 데이터가 있는 Cloud Storage 버킷, 디렉터리 또는 하위 디렉터리입니다.
    • [MAPPED_DRIVE]는 Cloud Filestore 파일 공유에 매핑된 클라이언트의 드라이브입니다.

다음 명령어는 data 버킷 및 모든 하위 디렉터리의 데이터를 Cloud Filestore 파일 공유에 매핑된 `Z:` 드라이브로 복사합니다.

gsutil rsync -r gs://data Z:\

환경의 컴퓨터에서 Cloud Filestore 파일 공유로 데이터 복사

gcloud compute scp 명령어를 사용하여 현재 환경의 컴퓨터에서 Compute Engine Linux VM 인스턴스에 마운트된 Cloud Filestore 파일 공유로 데이터를 복사할 수 있습니다. gcloud compute scp 명령어는 Windows VM 인스턴스에서 작동하지 않습니다.

  1. SSH를 사용하여 복사할 데이터가 포함된 컴퓨터에 연결합니다.
  2. 다음 명령어를 실행하여 gcloud 도구가 설치되어 있는지 확인합니다.

    which gcloud
    

    gcloud 도구가 설치되어 있는 경우 이 명령어는 설치 경로를 반환합니다. 설치 경로가 반환되지 않는 경우 Cloud SDK 설치의 안내에 따라 설치합니다.

  3. 다음 명령어를 실행하여 마운트된 Cloud Filestore 파일 공유로 데이터를 복사합니다. 이때 [VALUES_IN_BRACKETS]는 적절한 값으로 바꿉니다.

    gcloud compute scp [LOCAL_DATA_PATH] \
        [CLIENT_NAME]:/[MOUNT_DIRECTORY] \
        --project [PROJECT_ID] --zone [LOCATION]
    

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

    • [LOCAL_DATA_PATH]는 인스턴스로 복사할 데이터가 포함된 로컬 파일 또는 디렉터리의 경로입니다. 다른 하위 디렉터리에서 데이터를 복사하려면 [LOCAL_DATA_PATH] 다음에 --recurse 플래그를 사용하세요.
    • [CLIENT_NAME]은 Cloud Filestore 파일 공유가 마운트된 클라이언트 VM 인스턴스의 이름입니다.
    • [MOUNT_DIRECTORY]는 Cloud Filestore 파일 공유가 마운트된 클라이언트 VM 인스턴스의 디렉토리입니다.
    • [PROJECT_ID]는 클라이언트 VM 인스턴스가 포함된 GCP 프로젝트의 ID입니다. gcloud config set project [PROJECT_NAME]을 사용하여 gcloud 기본 프로젝트를 설정한 경우 이 플래그를 생략하고 기본 프로젝트를 대신 사용할 수 있습니다.
    • [LOCATION]은 클라이언트 VM 인스턴스가 위치하는 GCP 영역입니다. gcloud config set compute/zone [ZONE]을 사용하여 gcloud 기본 위치를 설정한 경우 이 플래그를 생략하고 기본 위치를 대신 사용할 수 있습니다.

다음 명령어는 로컬 /etc/acme/data 디렉터리 및 해당 하위 디렉터리의 데이터를 us-central1-c 영역, myproject 프로젝트, nfs-client VM 인스턴스의 /mnt/filer 디렉터리로 복사합니다.

gcloud compute scp /etc/acme/data --recurse \
    nfs-client:/mnt/filer \
    --project myproject --zone us-central1-c

Cloud Filestore 파일 공유에서 Cloud Storage 버킷으로 데이터 복사

gsutil rsync명령어를 사용하여 Compute Engine VM 인스턴스에 마운트된 Cloud Filestore 파일 공유의 데이터를 Cloud Storage 버킷으로 복사할 수 있습니다.

계속 진행하기 전에 먼저 클라이언트 VM이 Cloud Storage에 쓸 수 있는지 확인합니다.

  1. VM 인스턴스 페이지로 이동합니다.
  2. 소스 Cloud Filestore 파일 공유가 마운트된 클라이언트 VM 인스턴스를 선택합니다.
  3. 인스턴스의 범위가 읽기 쓰기인지 확인합니다.
    1. 인스턴스 이름을 클릭하여 인스턴스 세부정보 페이지를 엽니다.
    2. Cloud API 액세스 범위를 확장하여 스토리지의 범위가 읽기 쓰기인지 확인합니다.

클라이언트 VM에 읽기 쓰기 범위가 없으면 다음 단계를 수행합니다.

  1. 페이지 상단의 중지를 클릭하여 인스턴스를 중지합니다.
  2. 인스턴스가 중지되면 페이지 상단의 편집을 클릭합니다.
  3. 액세스 범위 아래에서 각 API에 액세스 설정을 선택합니다.
  4. 스토리지 아래에서 읽기 쓰기를 선택하고 저장을 클릭합니다.
  5. 인스턴스 업데이트가 완료되면 페이지 맨 위의 시작을 클릭합니다.

Cloud Filestore 파일 공유에서 Cloud Storage 버킷으로 데이터를 복사하려면 다음을 수행합니다.

Linux

  1. VM 인스턴스 페이지로 이동합니다.
  2. 소스 Cloud Filestore 파일 공유가 마운트된 클라이언트 VM 인스턴스를 선택하고 SSH를 클릭하여 해당 VM 인스턴스에서 터미널을 엽니다.
  3. 다음 명령어를 실행하여 마운트된 Cloud Filestore 파일 공유의 데이터를 복사합니다. [VALUES_IN_BRACKETS]를 적절한 값으로 바꾸세요. 지정한 위치의 하위 디렉터리로 재귀 실행하려면 gsutil rsync 명령어와 함께 -r 옵션을 사용합니다.

     gsutil rsync [MOUNT_DIRECTORY] gs://[BUCKET]
    

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

    • [MOUNT_DIRECTORY]는 Cloud Filestore 파일 공유가 마운트된 클라이언트의 디렉터리입니다.
    • [BUCKET]은 데이터를 복사할 대상 Cloud Storage 버킷, 디렉터리 또는 하위 디렉터리입니다.

다음 명령어는 /mnt/filer 디렉터리 및 모든 하위 디렉터리의 데이터를 archive 버킷으로 복사합니다.

gsutil rsync -r /mnt/filer gs://archive

Windows

  1. VM 인스턴스 페이지로 이동합니다.
  2. 소스 Cloud Filestore 파일 공유가 마운트된 클라이언트 VM 인스턴스를 선택하고 RDP를 클릭하여 해당 VM에 대한 원격 데스크톱 연결을 엽니다.
  3. 터미널 창을 열고 다음 명령어를 실행하여 드라이브를 Cloud Filestore 파일 공유에 매핑합니다.

    net use [DRIVE_LETTER]: \\[IP_ADDRESS]\[FILESHARE]
    

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

    • [DRIVE_LETTER]는 Cloud Filestore 파일 공유에 매핑할 드라이브입니다.
    • [IP_ADDRESS]는 Cloud Filestore 인스턴스의 IP 주소입니다.
    • [FILESHARE]는 인스턴스의 파일 공유 이름입니다.

    예를 들면 net use Z: \\10.123.45.67\my_share입니다.

  4. 다음 명령어를 실행하여 매핑된 Cloud Filestore 파일 공유의 데이터를 복사합니다. [VALUES_IN_BRACKETS]를 적절한 값으로 바꾸세요. 지정한 위치의 하위 디렉터리로 재귀 실행하려면 gsutil rsync 명령어와 함께 -r 옵션을 사용합니다.

    다음 명령어를 실행하여 매핑된 Cloud Filestore 파일 공유의 데이터를 Cloud Storage 버킷으로 복사합니다. [VALUES_IN_BRACKETS]를 적절한 값으로 바꾸세요.

      gsutil rsync [MAPPED_DRIVE] gs://[BUCKET]
    

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

    • [MAPPED_DRIVE]는 Cloud Filestore 파일 공유에 매핑된 클라이언트의 드라이브입니다.
    • [BUCKET]은 데이터를 복사할 대상 Cloud Storage 버킷, 디렉터리 또는 하위 디렉터리입니다.

다음 명령어는 매핑된 드라이브인 Z:\` and all subdirectories to the 및 모든 하위 디렉터리의 데이터를 archive 버킷으로 복사합니다.

gsutil rsync -r Z:\ gs://archive