Looker(Google Cloud 핵심 서비스) 인스턴스에서 생성된 콘텐츠 및 내부 데이터를 포함하는 Looker(Google Cloud 핵심 서비스) 인스턴스 데이터를 하나의 Looker(Google Cloud 핵심 서비스) 인스턴스에서 내보낸 다음 해당 데이터를 다른 Looker(Google Cloud 핵심 서비스) 인스턴스로 가져올 수 있습니다. 다음과 같은 이유로 데이터를 내보내고 가져올 수 있습니다.
- 다른 Looker 버전(Google Cloud 핵심 서비스)으로 업그레이드 또는 다운그레이드하려는 경우
- 다른 프로젝트의 Looker(Google Cloud 핵심 서비스) 인스턴스로 이동하려는 경우
- 다른 리전의 Looker(Google Cloud 핵심 서비스) 인스턴스로 이동하려는 경우
필요한 역할
Looker(Google Cloud 핵심 서비스) 인스턴스 데이터를 가져오거나 내보내는 데 필요한 권한을 얻으려면 관리자에게 인스턴스가 생성된 프로젝트에 대한 Looker 관리자(roles/looker.admin
) IAM 역할을 부여해 달라고 요청하세요.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
Looker(Google Cloud 핵심 서비스) 인스턴스 데이터를 Cloud Storage 버킷으로 내보내기
다음 섹션에서는 인스턴스 데이터를 내보내는 방법을 설명합니다.
Cloud Storage 버킷으로 내보내는 데 필요한 객체 및 권한
- Looker 서비스 계정 Google Cloud CLI CLI, Terraform 또는 API를 사용하여 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들었고 아직 Looker 서비스 계정을 만들지 않은 경우 계정을 만들어야 합니다.
- Looker 서비스 계정에
storage.objects.create
권한이 할당된 Cloud Storage 버킷. 스토리지 객체 생성자(roles/storage.objectCreator
) IAM 역할에는 이 권한이 포함되어 있으므로 Looker 서비스 계정에 해당 역할을 할당할 수도 있습니다. - 고객 관리 암호화 키(CMEK) 이 CMEK는 내보내기 및 가져오기 프로세스에만 적용되며 인스턴스 데이터를 암호화하는 데 사용되는 CMEK와 다릅니다. Looker 서비스 계정에 CMEK
cloudkms.cryptoKeyVersions.useToEncrypt
권한을 할당해야 합니다. Cloud KMS CryptoKey 암호화(roles/cloudkms.cryptoKeyEncrypter
) 역할에 이 권한이 포함되어 있으므로 Looker 서비스 계정에 해당 역할을 할당할 수도 있습니다.
Cloud Storage 버킷으로 내보내기
데이터를 내보내려면 다음 옵션 중 하나를 선택합니다.
콘솔
Google Cloud 콘솔에서 Looker 페이지로 이동합니다.
페이지 상단의 조직 선택 드롭다운 목록에서 데이터를 내보낼 Looker(Google Cloud 핵심 서비스) 인스턴스가 포함된 조직 리소스를 선택합니다.
데이터를 내보낼 인스턴스 이름을 클릭합니다.
내보내기를 클릭합니다.
버킷 내보내기 필드에 내보내기 아티팩트를 만들 버킷 위치를 지정합니다. 입력 필드에 경로를
<bucket_name>/<folder_name>
으로 입력하거나 버킷에서 적절한 위치를 선택합니다.고객 관리 키 선택 필드에서 내보내기 아티팩트를 암호화하는 데 사용할 CMEK를 선택합니다.
내보내기를 클릭합니다.
gcloud
gcloud looker instances export INSTANCE_NAME \ --target-gcs-uri='gs://BUCKET_NAME/FOLDER_NAME' \ --kms-key=KMS_KEY_ID
다음을 바꿉니다.
INSTANCE_NAME
: Looker(Google Cloud 핵심 서비스) 인스턴스의 이름입니다. 인스턴스 URL과 연결되어 있지 않습니다.BUCKET_NAME
: 내보내기 아티팩트를 만들 Cloud Storage 버킷 위치입니다.FOLDER_NAME
: Cloud Storage 버킷 내에 내보내기 아티팩트를 배치할 폴더입니다.KMS_KEY_ID
: 가져오기 및 내보내기별 CMEK 키 ID에 대한 전체 경로
Cloud Storage 버킷에서 Looker(Google Cloud 핵심 서비스) 인스턴스로 데이터 가져오기
다음 섹션에서는 인스턴스 데이터를 가져오는 방법을 설명합니다.
Cloud Storage 버킷에서 가져오는 데 필요한 권한
- Looker 서비스 계정 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들기 위해 Google Cloud CLI, Terraform 또는 API를 사용했지만 아직 Looker 서비스 계정을 만들지 않은 경우 계정을 새로 만들어야 합니다.
- Looker 서비스 계정에
storage.objects.get
권한을 부여합니다. 스토리지 객체 뷰어(roles/storage.objectViewer
) IAM 역할에는 이 권한이 포함되어 있으므로 Looker 서비스 계정에 해당 역할을 할당할 수도 있습니다. - Looker 서비스 계정에
cloudkms.cryptoKeyVersions.useToDecrypt
권한을 할당해야 합니다. Cloud KMS CryptoKey 복호화(roles/cloudkms.cryptoKeyDecrypter
) 역할에는 이 권한이 포함되어 있으므로 Looker 서비스 계정에 해당 역할을 할당할 수도 있습니다.
Cloud Storage 버킷에서 가져오기
데이터를 가져오려면 다음 옵션 중 하나를 선택합니다.
콘솔
Google Cloud 콘솔에서 Looker 페이지로 이동합니다.
페이지 상단의 조직 선택 드롭다운 목록에서 데이터를 가져올 Looker(Google Cloud 핵심 서비스) 인스턴스가 포함된 조직 리소스를 선택합니다.
데이터를 가져올 인스턴스 이름을 클릭합니다.
가져오기를 클릭합니다.
버킷 가져오기 필드에 경로를 입력하거나 데이터를 내보낸 Cloud Storage 위치를 찾습니다.
metadata.json
파일과 다른 파일이 포함된 폴더를 선택합니다.가져오기를 클릭합니다.
gcloud
gcloud looker instances import INSTANCE_NAME \ --source-gcs-uri='gs://BUCKET_NAME/FOLDER_NAME'
다음을 바꿉니다.
INSTANCE_NAME
: Looker(Google Cloud 핵심 서비스) 인스턴스의 이름입니다. 인스턴스 URL과 연결되어 있지 않습니다.BUCKET_NAME
:metadata.json
파일과 다른 파일이 있는 Cloud Storage 버킷 위치입니다.FOLDER_NAME
:metadata.json
파일과 다른 파일이 있는 폴더입니다.
가져오기 후 Looker(Google Cloud 핵심 서비스) 사용자에게 개별 사용자 인증에 OAuth를 사용하는 BigQuery 또는 Snowflake 데이터베이스 연결을 다시 인증하라는 메시지가 표시될 수 있습니다. Looker(Google Cloud 핵심 서비스) 내보내기에서 개별 사용자의 데이터베이스 연결에 대한 OAuth 액세스 또는 갱신 토큰이 유지되지 않을 수 있기 때문입니다.
사용자는 다음 방법 중 하나를 사용하여 데이터베이스에 다시 인증할 수 있습니다.
- 개별 OAuth 데이터베이스 연결을 사용하는 Explore 또는 대시보드를 볼 때 표시되는 로그인 메시지를 따릅니다.
- 계정 페이지로 이동하여 OAuth 연결 사용자 인증 정보 제목 아래에서 데이터베이스마다 로그인을 선택합니다.
한 명의 사용자가 소유하고 OAuth 연결을 참조하는 자동화된 일정 또는 알림은 해당 사용자가 OAuth 사용자 인증 정보로 로그인할 때까지 중단됩니다.
Looker(Google Cloud 핵심 서비스) 데이터 내보내기 또는 가져오기 문제 해결
이 섹션에서는 내보내기 또는 가져오기 프로세스가 실패할 수 있는 오류 조건을 해결하는 방법을 설명합니다.
내보내기 중 오류
Looker 서비스 계정에
storage.objects.create
권한이나 Cloud Storage 버킷에 대한 스토리지 객체 생성자(roles/storage.objectCreator
) IAM 역할을 부여했는지 확인합니다.Looker 서비스 계정에
cloudkms.cryptoKeyVersions.useToEncrypt
권한 또는 만든 고객 관리 암호화 키(CMEK)에 대한 Cloud KMS CryptoKey 암호화(roles/cloudkms.cryptoKeyEncrypter
) 역할을 부여했는지 확인하세요.데이터를 내보내기 전에 지정된 Cloud Storage 위치에 이전 내보내기 작업의 파일이 없는지 확인합니다. 기존 파일이 있으면 먼저 삭제합니다.
요청자 지불이 사용 설정된 Cloud Storage 버킷은 사용할 수 없습니다.
가져오기 오류
Looker 서비스 계정에
storage.objects.get
권한이나 Cloud Storage 버킷에 대한 스토리지 객체 뷰어(roles/storage.objectViewer
) IAM 역할을 부여했는지 확인합니다.Looker 서비스 계정에
cloudkms.cryptoKeyVersions.useToDecrypt
권한 또는 만든 고객 관리 암호화 키(CMEK)에 대한 Cloud KMS CryptoKey 복호화(roles/cloudkms.cryptoKeyDecrypter
) 역할을 부여했는지 확인합니다.다음과 같이 대상 인스턴스와 내보내기 인스턴스 간의 버전 비호환성으로 인해 가져오기가 실패할 수 있습니다.
- 대상 인스턴스에 내보낸 데이터의 Looker 버전보다 낮은 Looker 마이너 버전이 있습니다. 예를 들어 대상 인스턴스가 Looker 23.5.X에 있지만 Looker 버전 23.6.X의 인스턴스에서 내보내기가 생성되었습니다.
- 내보내기 데이터를 만든 인스턴스의 마이너 버전은 대상 인스턴스의 Looker 버전보다 두 개 이상의 출시 버전만큼 뒤쳐져 있습니다. 예를 들어 대상 인스턴스가 Looker 23.6.X에 있지만 Looker 버전 23.4.X의 인스턴스에서 내보내기가 생성되었습니다.
이 경우 두 인스턴스가 동일한 Looker 버전을 실행하도록 내보내기 인스턴스 또는 대상 인스턴스를 업그레이드하세요.