이 페이지에서는 비공개 서비스 액세스 (PSA)를 사용하는 비공개 연결 (PSA) Looker (Google Cloud 핵심 서비스) 프로덕션 또는 비프로덕션 인스턴스를 만드는 방법을 설명합니다.
비공개 연결을 사용하면 인터넷을 통하지 않거나 외부 IP 주소를 사용하지 않고도 서비스에 연결할 수 있습니다. 인터넷을 통과하지 않으므로 비공개 연결은 일반적으로 지연 시간이 짧고 공격 벡터가 제한됩니다. 비공개 연결을 사용하면 Looker (Google Cloud 핵심 서비스) 인스턴스가 가상 프라이빗 클라우드 (VPC)의 다른 리소스와 통신할 수 있지만 공개 인터넷에서 인바운드 통신을 할 수 없습니다.
비공개 연결을 사용하면 VPC 서비스 제어와 같은 일부 기능을 사용할 수 있습니다. 하지만 비공개 연결은 일부 Looker (Google Cloud 핵심 서비스) 기능과 호환되지 않습니다. 자세한 내용은 기능 호환성 테이블을 참조하세요.
Looker (Google Cloud 핵심 서비스)은 엔터프라이즈 또는 삽입 인스턴스 버전에 대해 비공개 연결 (PSA)을 지원합니다.
필수 역할 및 권한
비공개 연결 (PSA) 인스턴스를 설정하려면 다음 IAM 권한이 있어야 합니다.
- Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려면 Looker 관리자(
roles/looker.Admin
) 역할이 있어야 합니다. -
할당된 IP 주소 범위를 만들고 비공개 연결을 관리하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Compute 네트워크 관리자 (
roles/compute.networkAdmin
) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.이 사전 정의된 역할에는 할당된 IP 주소 범위를 만들고 비공개 연결을 관리하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.
필수 권한
할당된 IP 주소 범위를 만들고 비공개 연결을 관리하려면 다음 권한이 필요합니다.
-
네트워크 드롭다운에서 사용 가능한 네트워크 확인:
-
compute.addresses.list
-
compute.globalAddresses.list
-
compute.networks.list
-
compute.globalAddresses.list
-
-
새 VPC 네트워크 만들기:
-
compute.addresses.create
-
compute.globalAddresses.create
-
serviceusage.services.enable
-
-
비공개 IP 범위를 할당하고 비공개 서비스 액세스 연결 설정:
compute.networks.addPeering
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
이미 설정된 비공개 네트워크를 사용하는 경우 이러한 권한이 필요하지 않습니다.
-
네트워크 드롭다운에서 사용 가능한 네트워크 확인:
VPC 서비스 제어 또는 고객 관리 암호화 키(CMEK)를 설정하려면 추가 IAM 역할이 필요할 수 있습니다. 이러한 기능에 대한 자세한 내용은 Looker(Google Cloud 핵심 서비스)의 VPC 서비스 제어 지원 또는 Looker(Google Cloud 핵심 서비스)에 CMEK 사용 설정 문서 페이지를 참조하세요.
시작하기 전에
- 영업팀과 협력하여 연간 계약이 완료되었는지, 프로젝트에 할당량이 할당되었는지 확인합니다.
- Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.
- Google Cloud 콘솔의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 만들거나 Looker (Google Cloud 핵심) 인스턴스를 만들려는 기존 프로젝트로 이동합니다.
- Google Cloud 콘솔에서 프로젝트에 Looker API를 사용 설정합니다. API를 사용 설정할 때는 API가 사용 설정되었는지 확인하기 위해 콘솔 페이지를 새로고침해야 할 수 있습니다.
- Google Cloud 콘솔에서 프로젝트의 Service Networking API를 사용 설정합니다. API를 사용 설정할 때는 API가 사용 설정되었는지 확인하기 위해 콘솔 페이지를 새로고침해야 할 수 있습니다.
- Google Cloud 콘솔에서 프로젝트에 대해 Compute Engine API를 사용 설정합니다. API를 사용 설정할 때는 API가 사용 설정되었는지 확인하기 위해 콘솔 페이지를 새로고침해야 할 수 있습니다.
- OAuth 클라이언트를 설정하고 승인 사용자 인증 정보를 만듭니다. OAuth 클라이언트를 사용하면 인스턴스를 인증하고 인스턴스에 액세스할 수 있습니다. 다른 인증 방법을 사용하여 인스턴스에 사용자를 인증하는 경우에도 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려면 OAuth를 설정해야 합니다.
VPC 네트워크 만들기 및 구성
비공개 연결을 만들려면 먼저 가상 프라이빗 클라우드 (VPC) 네트워크를 만들고 구성해야 합니다. Looker (Google Cloud 핵심 서비스)는 동일한 리전 또는 다른 리전의 동일한 VPC에서 여러 비공개 연결 (PSA) 인스턴스를 지원합니다.
- 프로젝트에서 VPC 네트워크를 만듭니다. 또는 새 VPC 네트워크를 만드는 대신 공유 VPC를 사용하는 경우 공유 VPC에 대해 이 섹션의 나머지 단계도 완료하는 것과 더불어 다음 섹션인 공유 VPC에서 인스턴스 만들기 섹션의 단계를 완료하세요.
- Looker(Google Cloud 핵심 서비스)에 대한 비공개 서비스 액세스를 위해 VPC에서 IPv4 IP 범위(CIDR 블록)를 할당합니다.
- 범위를 할당하기 전에 제약조건을 고려하세요.
- IP 주소 범위 크기를 설정할 때 최소 크기는
/22
블록입니다. - Looker(Google Cloud 핵심 서비스)는 내부적으로(즉, 조직 내에서) 사용되기 위해 할당되는 IP 주소를 지정하는 RFC 1918 내의 모든 IPv4 범위를 지원하며 인터넷에서 라우팅되지 않습니다. 구체적으로 다음과 같습니다.
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16
- 클래스 E IPv4 범위(
240.0.0.0/4
)는 RFC 5735 및 RFC 1112에 명시된 대로 나중에 사용하도록 예약되어 있으며 Looker(Google Cloud 핵심 서비스)에서 지원되지 않습니다. - 지정된 할당에 대해 이전 단계에서 할당된 IP 범위를 사용하여 VPC 네트워크에 비공개 서비스 액세스 연결을 추가합니다.
- VPC 네트워크가 생성되면 Google Cloud 프로젝트의 Looker 인스턴스 만들기 페이지로 돌아갑니다. VPC 네트워크가 인식되도록 페이지를 새로고침해야 할 수 있습니다.
/22
서브넷의 /26
범위 서브넷을 사용합니다. 동일한 VPC 및 동일한 리전에 있는 모든 후속 비공개 연결 (PSA) Looker (Google Cloud 핵심 서비스) 인스턴스는 동일한 프록시 전용 서브넷을 사용합니다.
위의 단계를 완료하면 Looker(Google Cloud 핵심 서비스) 인스턴스 만들기 문서 페이지의 시작하기 전에 섹션부터 시작하여 안내에 따라 인스턴스를 만들 수 있습니다.
동일한 VPC의 여러 비공개 연결 인스턴스
두 개 이상의 비공개 연결 Looker (Google Cloud 핵심 서비스) 인스턴스가 동일한 리전 및 동일한 VPC에 있고 해당 리전에서 생성된 첫 번째 Looker (Google Cloud 핵심 서비스) 인스턴스를 삭제하는 경우, 프록시 전용 서브넷은 나머지 인스턴스에서 계속 사용 중이므로 해제되지 않습니다. (프록시 전용 서브넷의 IP 주소 범위를 포함하는) 삭제된 인스턴스에 사용한 것과 동일한 주소 범위를 사용하는 새 비공개 연결 (PSA) Looker (Google Cloud 핵심 서비스) 인스턴스를 만들려고 하면 인스턴스 생성이 실패하고, 'IP 범위가 소진됨' 오류가 표시됩니다. IP 범위가 사용 중인지 확인하려면 서비스 네트워킹의 VPC 피어링을 확인하고, 가져오기 경로를 확인하여 원하는 IP 범위를 사용하고 있는지 확인하세요.
공유 VPC에서 인스턴스 만들기
공유 VPC에서 Looker(Google Cloud 핵심 서비스) 인스턴스를 만드는 경우 공유 VPC의 호스트 프로젝트에서 다음 절차를 완료하세요.
- Google Cloud 콘솔의 공유 VPC 호스트 프로젝트에서 Looker API를 사용 설정합니다. API를 사용 설정할 때는 API가 사용 설정되었는지 확인하기 위해 콘솔 페이지를 새로고침해야 할 수 있습니다.
gcloud
services identity create
명령어를 사용하여 공유 VPC의 호스트 프로젝트에 서비스 계정을 만듭니다.gcloud beta services identity create --service=looker.googleapis.com --project=SHARED_HOST_PROJECT_ID
SHARED_HOST_PROJECT_ID를 공유 VPC의 호스트 프로젝트로 바꿉니다.
호스트 프로젝트의 서비스 계정에
compute.globalAddresses.get
IAM 권한을 부여합니다.
서비스 계정을 만들고 IAM 권한을 부여한 후 서비스 계정과 권한이 전파될 때까지 몇 분 정도 기다립니다.
또한 공유 VPC에서 IPv4 IP 범위를 할당하고 이전 섹션인 VPC 네트워크 만들기 및 구성에 설명된 대로 공유 VPC에 비공개 서비스 액세스 연결을 추가합니다.
비공개 연결 인스턴스 만들기
Looker(Google Cloud 핵심 서비스)에서 새 인스턴스를 만드는 데 약 60분이 소요됩니다.
비공개 연결 (PSA) 인스턴스를 원하는 경우 Google Cloud CLI 또는 Terraform을 사용해야 하며 인스턴스를 만들 때 비공개 연결 (PSA)로 구성해야 합니다. 인스턴스가 생성된 후에는 인스턴스에 비공개 연결을 추가하거나 삭제할 수 없습니다.
Google Cloud CLI를 사용하여 비공개 연결 (PSA) 인스턴스를 만들려면 다음 단계를 따르세요.
- CMEK를 사용하는 경우 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들기 전에 서비스 계정, 키링, 키를 만드는 방법에 관한 안내를 따르세요.
gcloud looker instances create
명령어를 사용하여 인스턴스를 만듭니다.gcloud looker instances create INSTANCE_NAME \ --project=PROJECT_ID \ --oauth-client-id=OAUTH_CLIENT_ID \ --oauth-client-secret=OAUTH_CLIENT_SECRET \ --region=REGION \ --edition=EDITION \ --private-ip-enabled \ --consumer-network=CONSUMER_NETWORK --reserved-range=RESERVED_RANGE [--no-public-ip-enabled] [--public-ip-enabled]
다음을 바꿉니다.
INSTANCE_NAME
: Looker(Google Cloud 핵심 서비스) 인스턴스의 이름입니다. 인스턴스 URL과 연결되어 있지 않습니다.PROJECT_ID
: Looker (Google Cloud 핵심 서비스) 인스턴스를 만드는 Google Cloud 프로젝트의 이름입니다.OAUTH_CLIENT_ID
및OAUTH_CLIENT_SECRET
: OAuth 클라이언트를 설정할 때 만든 OAuth 클라이언트 ID 및 OAuth 암호입니다. 인스턴스가 생성되면 OAuth 클라이언트의 승인된 리디렉션 URI 섹션에 인스턴스의 URL을 입력합니다.REGION
: Looker(Google Cloud 핵심 서비스) 인스턴스가 호스팅되는 리전입니다. 구독 계약의 리전에 해당하는 리전을 선택하세요. 사용 가능한 리전은 Looker(Google Cloud 핵심 서비스) 위치 문서 페이지에 나열되어 있습니다.EDITION
: 인스턴스의 버전 및 환경 유형 (프로덕션 또는 비프로덕션)입니다. 비공개 연결 (PSA) 인스턴스의 경우core-enterprise-annual
,core-embed-annual
,nonprod-core-enterprise-annual
또는nonprod-core-embed-annual
여야 합니다. 연간 계약에 나열된 것과 동일한 버전 유형을 선택하고 할당된 할당량이 있는지 확인합니다. 인스턴스를 만든 후에는 버전을 변경할 수 없습니다. 버전을 변경하려면 가져오기 및 내보내기를 사용하여 Looker (Google Cloud 핵심 서비스) 인스턴스 데이터를 다른 버전으로 구성된 새 인스턴스로 이동할 수 있습니다.CONSUMER_NETWORK
: VPC 네트워크 또는 공유 VPC 네트워크입니다. 비공개 연결 (PSA) 인스턴스를 만드는 경우 설정해야 합니다.RESERVED_RANGE
: Google에서 Looker(Google Cloud 핵심 서비스) 인스턴스의 서브네트워크를 프로비저닝할 VPC 내의 IP 주소 범위입니다.
다음 플래그를 포함할 수 있습니다.
--private-ip-enabled
는 비공개 연결 (PSA)을 사용 설정합니다. 비공개 연결 (PSA) 인스턴스를 만들려면 이 값이 포함되어야 합니다.--public-ip-enabled
는 공개 IP를 사용 설정합니다.--no-public-ip-enabled
는 공개 IP를 사용 중지합니다.- Looker(Google Cloud 핵심 서비스) 인스턴스를 만들 때는
--async
를 사용하는 것이 좋습니다.
매개변수를 추가하여 다른 인스턴스 설정을 적용할 수 있습니다.
다음을 바꿉니다.[--maintenance-window-day=MAINTENANCE_WINDOW_DAY --maintenance-window-time=MAINTENANCE_WINDOW_TIME] [--deny-maintenance-period-end-date=DENY_MAINTENANCE_PERIOD_END_DATE --deny-maintenance-period-start-date=DENY_MAINTENANCE_PERIOD_START_DATE --deny-maintenance-period-time=DENY_MAINTENANCE_PERIOD_TIME] [--kms-key=KMS_KEY_ID] [--fips-enabled]
MAINTENANCE_WINDOW_DAY
:friday
,monday
,saturday
,sunday
,thursday
,tuesday
,wednesday
중 하나여야 합니다. 유지보수 기간 설정에 대한 자세한 내용은 Looker(Google Cloud 핵심 서비스)의 유지보수 정책 관리 문서 페이지를 참조하세요.MAINTENANCE_WINDOW_TIME
및DENY_MAINTENANCE_PERIOD_TIME
: UTC 시간 기준 24시간 형식이어야 합니다(예: 13:00, 17:45).DENY_MAINTENANCE_PERIOD_START_DATE
및DENY_MAINTENANCE_PERIOD_END_DATE
:YYYY-MM-DD
형식이어야 합니다.KMS_KEY_ID
: 고객 관리 암호화 키(CMEK)를 설정할 때 생성된 키여야 합니다.
--fips-enabled
플래그를 포함하여 FIPS 140-2 Level 1 규정 준수를 사용 설정할 수 있습니다.
인스턴스가 생성되는 동안 콘솔 내의 인스턴스 페이지에서 상태를 확인할 수 있습니다. Google Cloud 콘솔 메뉴에서 알림 아이콘을 클릭하여 인스턴스 생성 활동을 확인할 수도 있습니다.
비공개 연결 (PSA) 전용 인스턴스를 만들면 인스턴스 페이지에 URL이 표시되지 않습니다. 비공개 연결 (PSA) 인스턴스에 대한 액세스를 설정하는 방법에 관한 자세한 내용은 다음 생성 후 비공개 연결 (PSA) 인스턴스에 액세스 섹션을 참고하세요.
생성 후 비공개 연결 (PSA) 인스턴스 액세스
비공개 연결 (PSA)만 사용 설정된 인스턴스를 만들면 인스턴스 URL이 표시되지 않습니다. 인스턴스에 액세스하려면 인스턴스에 대한 커스텀 도메인을 구성하고 인스턴스의 OAuth 사용자 인증 정보에 해당 커스텀 도메인을 추가해야 합니다. 커스텀 도메인 설정 및 액세스를 위한 다양한 비공개 연결 네트워킹 옵션을 알아보려면 Looker (Google Cloud 핵심 서비스) 비공개 연결 인스턴스의 커스텀 도메인 네트워킹 옵션 문서 페이지를 참고하세요.