비공개 IP Looker(Google Cloud 핵심 서비스) 인스턴스 만들기

비공개 IP 연결을 사용하면 인터넷을 통하지 않거나 외부 IP 주소를 사용하지 않고도 서비스에 연결할 수 있습니다. 인터넷을 통과하지 않으므로 비공개 IP를 통한 연결은 일반적으로 지연 시간이 짧고 공격 벡터가 제한됩니다. 비공개 IP 연결을 사용하면 Looker(Google Cloud 핵심 서비스) 인스턴스가 가상 프라이빗 클라우드(VPC)의 다른 리소스와 통신할 수 있지만 공개 인터넷에서 인바운드 통신을 할 수 없습니다.

비공개 IP 연결을 사용하면 VPC 서비스 제어와 같은 일부 기능을 사용할 수 있습니다. 하지만 비공개 IP 연결은 일부 Looker(Google Cloud 핵심 서비스) 기능과 호환되지 않습니다. 자세한 내용은 기능 호환성 테이블을 참조하세요.

Looker(Google Cloud 핵심 서비스)는 엔터프라이즈 또는 삽입 인스턴스 버전에 대해 비공개 IP를 지원합니다.

필수 역할 및 권한

비공개 IP 인스턴스를 설정하려면 다음 IAM 권한이 있어야 합니다.

  1. Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려면 Looker 관리자(roles/looker.Admin) 역할이 있어야 합니다.
  2. 할당된 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

    커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

    Terraform 또는 Google Cloud CLI로 비공개 IP 인스턴스를 만들고 이미 설정된 비공개 네트워크를 사용하는 경우 이러한 권한이 필요하지 않습니다.

VPC 서비스 제어 또는 고객 관리 암호화 키(CMEK)를 설정하려면 추가 IAM 역할이 필요할 수 있습니다. 이러한 기능에 대한 자세한 내용은 Looker(Google Cloud 핵심 서비스)의 VPC 서비스 제어 지원 또는 Looker(Google Cloud 핵심 서비스)에 CMEK 사용 설정 문서 페이지를 참조하세요.

시작하기 전에

  1. Google Cloud 콘솔의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 만들거나 Looker(Google Cloud 핵심) 인스턴스를 만들려는 기존 프로젝트로 이동합니다.

    프로젝트 선택기로 이동

  2. Google Cloud 콘솔에서 프로젝트에 Looker API를 사용 설정합니다. API를 사용 설정할 때는 API가 사용 설정되었는지 확인하기 위해 콘솔 페이지를 새로고침해야 할 수 있습니다.

    API 사용 설정

  3. Google Cloud 콘솔에서 프로젝트의 Service Networking API를 사용 설정합니다. API를 사용 설정할 때는 API가 사용 설정되었는지 확인하기 위해 콘솔 페이지를 새로고침해야 할 수 있습니다.

    API 사용 설정

  4. Google Cloud 콘솔에서 프로젝트에 대해 Compute Engine API를 사용 설정합니다. API를 사용 설정할 때는 API가 사용 설정되었는지 확인하기 위해 콘솔 페이지를 새로고침해야 할 수 있습니다.

    API 사용 설정

  5. OAuth 클라이언트를 설정하고 승인 사용자 인증 정보를 만듭니다. OAuth 클라이언트를 사용하면 인스턴스를 인증하고 인스턴스에 액세스할 수 있습니다. 다른 인증 방법을 사용하여 인스턴스에 사용자를 인증하는 경우에도 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려면 OAuth를 설정해야 합니다.

VPC 네트워크 만들기 및 구성

비공개 IP 연결을 만들려면 먼저 가상 프라이빗 클라우드(VPC) 네트워크를 만들고 구성해야 합니다. Looker(Google Cloud 핵심 서비스)는 동일한 리전 또는 다른 리전의 동일한 VPC에서 여러 비공개 IP 인스턴스를 지원합니다.

  1. 프로젝트에서 VPC 네트워크를 만듭니다. 또는 새 VPC 네트워크를 만드는 대신 공유 VPC를 사용하는 경우 공유 VPC에 대해 이 섹션의 나머지 단계도 완료하는 것과 더불어 다음 섹션인 공유 VPC에서 인스턴스 만들기 섹션의 단계를 완료하세요.
  2. 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 5735RFC 1112에 명시된 대로 나중에 사용하도록 예약되어 있으며 Looker(Google Cloud 핵심 서비스)에서 지원되지 않습니다.
    Looker(Google Cloud 핵심 서비스) 인스턴스가 VPC 내의 리전에서 처음 생성되면 Looker가 프록시 전용 서브넷을 만듭니다. 프록시 전용 서브넷은 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들 때 예약하는 /22 서브넷의 /26 범위 서브넷을 사용합니다. 동일한 VPC 및 동일한 리전에 있는 모든 후속 비공개 IP Looker(Google Cloud 핵심 서비스) 인스턴스는 동일한 프록시 전용 서브넷을 사용합니다.
  3. 지정된 할당에 대해 이전 단계에서 할당된 IP 범위를 사용하여 VPC 네트워크에 비공개 서비스 액세스 연결을 추가합니다.
  4. VPC 네트워크가 생성되면 Google Cloud 프로젝트에서 Looker 인스턴스 만들기 페이지로 돌아갑니다. VPC 네트워크가 인식되도록 페이지를 새로고침해야 할 수도 있습니다.

위의 단계를 완료하면 Looker(Google Cloud 핵심 서비스) 인스턴스 만들기 문서 페이지의 시작하기 전에 섹션부터 시작하여 안내에 따라 인스턴스를 만들 수 있습니다.

동일한 VPC의 여러 비공개 IP 인스턴스

동일한 VPC에 비공개 IP 인스턴스가 여러 개 있는 경우 다음 사항에 유의하세요.

  • 두 개 이상의 비공개 IP Looker(Google Cloud 핵심 서비스) 인스턴스가 동일한 리전 및 동일한 VPC에 있고 해당 리전에서 생성된 첫 번째 Looker(Google Cloud 핵심 서비스) 인스턴스를 삭제하는 경우, 프록시 전용 서브넷은 나머지 인스턴스에서 계속 사용 중이므로 해제되지 않습니다. (프록시 전용 서브넷의 IP 주소 범위를 포함하는) 삭제된 인스턴스에 사용한 것과 동일한 주소 범위를 사용하는 새 비공개 IP Looker(Google Cloud 핵심 서비스) 인스턴스를 만들려고 하면 인스턴스 생성이 실패하고, 'IP 범위가 소진됨' 오류가 표시됩니다. IP 범위가 사용 중인지 확인하려면 서비스 네트워킹의 VPC 피어링을 확인하고, 가져오기 경로를 확인하여 원하는 IP 범위를 사용하고 있는지 확인하세요.
  • 두 개 이상의 비공개 IP 인스턴스가 동일한 VPC에 있고 인스턴스 중 하나를 삭제하는 경우 나머지 인스턴스를 다시 시작하여 해당 인스턴스의 서비스 네트워킹 연결을 다시 연결합니다.

공유 VPC에서 인스턴스 만들기

공유 VPC에서 Looker(Google Cloud 핵심 서비스) 인스턴스를 만드는 경우 공유 VPC의 호스트 프로젝트에서 다음 절차를 완료하세요.

  1. Google Cloud 콘솔의 공유 VPC 호스트 프로젝트에서 Looker API를 사용 설정합니다. API를 사용 설정할 때는 API가 사용 설정되었는지 확인하기 위해 콘솔 페이지를 새로고침해야 할 수 있습니다.

    API 사용 설정

  2. gcloud services identity create 명령어를 사용하여 공유 VPC의 호스트 프로젝트에서 서비스 계정을 만듭니다.

    gcloud beta services identity create --service=looker.googleapis.com --project=SHARED_HOST_PROJECT_ID
    

    SHARED_HOST_PROJECT_ID를 공유 VPC의 호스트 프로젝트로 바꿉니다.

  3. 호스트 프로젝트의 서비스 계정에 compute.globalAddresses.get IAM 권한을 부여합니다.

서비스 계정을 만들고 IAM 권한을 부여한 후 서비스 계정과 권한이 전파될 때까지 몇 분 정도 기다리세요.

또한 공유 VPC에 IPv4 IP 범위를 할당하고 이전 섹션인 VPC 네트워크 만들기 및 구성에 설명된 대로 공유 VPC에 비공개 서비스 액세스 연결을 추가합니다.

비공개 IP 인스턴스 만들기

Looker(Google Cloud 핵심 서비스)에서 새 인스턴스를 만드는 데 약 60분이 소요됩니다.

인스턴스를 생성할 때 비공개 IP를 할당해야 합니다. 인스턴스가 생성된 후에는 인스턴스에 비공개 IP를 추가하거나 인스턴스에서 비공개 IP를 삭제할 수 없습니다.

인스턴스를 만드는 동안 비공개 IP를 구성하려면 다음 옵션 중 하나를 선택합니다.

콘솔

  1. Google Cloud 콘솔의 프로젝트에서 Looker(Google Cloud 핵심 서비스) 제품 페이지로 이동합니다. 이 프로젝트에서 Looker(Google Cloud 핵심 서비스) 인스턴스를 이미 만들었으면 인스턴스 페이지가 열립니다.

    Looker(Google Cloud 핵심 서비스)로 이동

  2. 인스턴스 만들기를 클릭합니다.
  3. 인스턴스 이름 섹션에서 Looker(Google Cloud 핵심 서비스) 인스턴스의 이름을 입력합니다. 인스턴스 이름은 인스턴스가 생성된 후에는 Looker(Google Cloud 핵심 서비스)의 URL과 연결되지 않습니다. 인스턴스를 만든 후에는 인스턴스 이름을 변경할 수 없습니다.
  4. OAuth 애플리케이션 사용자 인증 정보 섹션에서 OAuth 클라이언트를 설정할 때 만든 OAuth 클라이언트 ID 및 OAuth 암호를 입력합니다.
  5. 리전 섹션의 드롭다운 메뉴에서 Looker(Google Cloud 핵심 서비스) 인스턴스를 호스팅할 적절한 옵션을 선택합니다. 프로젝트 할당량이 할당되는 구독 계약의 리전에 해당하는 리전을 선택하세요. 사용 가능한 리전은 Looker(Google Cloud 핵심 서비스) 위치 문서 페이지에 나열되어 있습니다.

    인스턴스가 생성되면 리전을 변경할 수 없습니다.

  6. 버전 섹션에서 엔터프라이즈 또는 삽입 버전 옵션을 선택합니다. 버전 유형은 인스턴스에 사용할 수 있는 일부 기능에 영향을 미칩니다. 연간 계약에 명시된 것과 동일한 버전 유형을 선택하고 해당 버전 유형에 할당된 할당량이 있는지 확인하세요.

    • 엔터프라이즈: 다양한 내부 BI 및 분석 사용 사례를 해결하기 위한 보안 강화 기능이 포함된 Looker(Google Cloud 핵심 서비스) 플랫폼
    • 삽입: 안정적인 외부 분석 및 커스텀 애플리케이션을 대규모로 배포하고 유지보수하기 위한 Looker(Google Cloud 핵심 서비스) 플랫폼

    인스턴스를 만든 후에는 버전을 변경할 수 없습니다. 버전을 변경하려면 가져오기 및 내보내기를 사용하여 Looker(Google Cloud 핵심 서비스) 인스턴스 데이터를 다른 버전으로 구성된 새 인스턴스로 이동할 수 있습니다.

  7. 인스턴스 맞춤설정 섹션에서 구성 옵션 표시를 클릭하여 인스턴스에 맞게 맞춤설정할 수 있는 추가 설정 그룹을 표시합니다.

  8. 연결 섹션에서 비공개 IP만 선택하거나 비공개 IP공개 IP를 모두 선택합니다. 선택한 네트워크 연결 유형은 인스턴스에 사용할 수 있는 Looker 기능에 영향을 미칩니다. 다음과 같은 네트워크 연결 옵션을 사용할 수 있습니다.

    • 공개 IP: 인터넷에 액세스할 수 있는 외부 IP 주소를 할당합니다.
    • 비공개 IP: Google에서 호스팅하는 내부 가상 프라이빗 클라우드(VPC) IP 주소를 할당합니다. 이 주소를 사용하여 VPC에 대한 액세스 권한이 있는 다른 리소스에서 연결할 수 있습니다. 엔터프라이즈삽입 버전에서만 비공개 IP를 지원합니다. VPC 서비스 제어를 사용하려면 비공개 IP만 선택해야 합니다.
    • 비공개 IP공개 IP를 모두 선택하면 수신 트래픽은 공개 IP를 통해 라우팅되고 발신 트래픽은 비공개 IP를 통해 라우팅됩니다. Looker(Google Cloud 핵심 서비스) 인스턴스는 공개 IP를 사용하여 인터넷 아웃바운드 트래픽을 시작하지 않습니다.
  9. 필수 API 사용 설정 팝업이 표시되면 Google Cloud 프로젝트에 추가 API를 사용 설정해야 합니다. 비공개 네트워크 연결에 필요한 API를 사용 설정하려면 모두 사용 설정을 클릭합니다.

  10. 네트워크 드롭다운에서 VPC 네트워크를 선택합니다. 비공개 IP 네트워크에는 비공개 서비스 액세스 연결이 필요하며, 이를 통해 서비스가 내부 IP 주소를 사용하여 독점적으로 통신할 수 있습니다. 비공개 IP 연결 설정에 대한 자세한 내용은 비공개 서비스 액세스 구성 문서 페이지를 참조하세요. VPC 네트워크를 만들 때 비공개 서비스 연결을 설정하지 않았으면 비공개 서비스 액세스 연결 필요 메시지에서 연결 설정을 클릭할 수 있습니다. 그러면 IP 범위를 할당하고 연결을 만들 수 있는 측면 패널이 열립니다.

  11. 할당된 IP 범위에서 Google이 Looker(Google Cloud 핵심 서비스) 인스턴스의 서브네트워크를 프로비저닝할 VPC 내의 IP 범위를 선택합니다. 서브네트워크는 VPC 네트워크의 다른 리소스에서 사용할 수 없는 IP 범위를 예약합니다. Looker(Google Cloud 핵심 서비스) 인스턴스를 만든 후에는 이 IP 범위를 수정할 수 없습니다. IP 범위 할당에는 다음 옵션이 포함됩니다.

    • 자동 할당된 IP 범위 사용을 선택하면 Google에서 VPC의 서브네트워크를 프로비저닝하기 위해 IP 범위를 자동으로 할당합니다.
    • 비공개 서비스 액세스 설정 중에 정의된 IP 범위를 선택합니다.
  12. 암호화 섹션에서 인스턴스에 사용할 암호화 유형을 선택할 수 있습니다. 다음과 같은 암호화 옵션을 사용할 수 있습니다.

  13. 유지보수 기간 섹션에서 선택적으로 Looker(Google Cloud 핵심 서비스)가 유지보수를 예약하는 요일 및 시간을 지정할 수 있습니다. 유지보수 기간은 1시간 동안 지속됩니다. 기본적으로 유지보수 기간선호 기간 옵션은 시스템 자동 선택 기간으로 설정됩니다.

  14. 유지보수 거부 기간 섹션에서 선택적으로 Looker(Google Cloud 핵심 서비스)가 유지보수를 예약하지 않는 일 단위를 지정할 수 있습니다. 유지보수 거부 기간은 최대 60일까지 설정할 수 있습니다. 유지보수 거부 기간 2개 사이에는 유지보수가 가능한 날이 14일 이상 있어야 합니다.

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

gcloud

  1. CMEK를 사용하는 경우 Looker(Google Cloud 핵심 서비스) 인스턴스를 만들기 전에 서비스 계정, 키링, 키를 만드는 방법에 관한 안내를 따르세요.
  2. 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_IDOAUTH_CLIENT_SECRET: OAuth 클라이언트를 설정할 때 만든 OAuth 클라이언트 ID 및 OAuth 암호입니다. 인스턴스가 생성되면 OAuth 클라이언트의 승인된 리디렉션 URI 섹션에 인스턴스의 URL을 입력합니다.
    • REGION: Looker(Google Cloud 핵심 서비스) 인스턴스가 호스팅되는 리전입니다. 구독 계약의 리전에 해당하는 리전을 선택하세요. 사용 가능한 리전은 Looker(Google Cloud 핵심 서비스) 위치 문서 페이지에 나열되어 있습니다.
    • EDITION: 인스턴스의 버전입니다. 비공개 IP 인스턴스의 경우 core-enterprise-annual 또는 core-embed-annual이어야 합니다. 연간 계약에 명시된 것과 동일한 버전 유형을 선택하고 할당량이 할당되어 있는지 확인합니다. 인스턴스를 만든 후에는 버전을 변경할 수 없습니다. 버전을 변경하려면 가져오기 및 내보내기를 사용하여 Looker(Google Cloud 핵심 서비스) 인스턴스 데이터를 다른 버전으로 구성된 새 인스턴스로 이동할 수 있습니다.
    • CONSUMER_NETWORK: VPC 네트워크 또는 공유 VPC 네트워크입니다. 비공개 IP 인스턴스를 만드는 경우 설정해야 합니다.
    • RESERVED_RANGE: Google에서 Looker(Google Cloud 핵심 서비스) 인스턴스의 서브네트워크를 프로비저닝할 VPC 내의 IP 주소 범위입니다.

    다음 플래그를 포함할 수 있습니다.

    • --private-ip-enabled는 비공개 IP를 사용 설정합니다. 비공개 IP 인스턴스를 만들려면 이 항목을 포함해야 합니다.
    • --public-ip-enabled는 공개 IP를 사용 설정합니다.
    • --no-public-ip-enabled는 공개 IP를 사용 중지합니다.
    • Looker(Google Cloud 핵심 서비스) 인스턴스를 만들 때는 --async를 사용하는 것이 좋습니다.
  3. 매개변수를 추가하여 다른 인스턴스 설정을 적용할 수 있습니다.

    [--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_TIMEDENY_MAINTENANCE_PERIOD_TIME: UTC 시간 기준 24시간 형식이어야 합니다(예: 13:00, 17:45).
    • DENY_MAINTENANCE_PERIOD_START_DATEDENY_MAINTENANCE_PERIOD_END_DATE: YYYY-MM-DD 형식이어야 합니다.
    • KMS_KEY_ID: 고객 관리 암호화 키(CMEK)를 설정할 때 생성된 키여야 합니다.

    --fips-enabled 플래그를 포함하여 FIPS 140-2 Level 1 규정 준수를 사용 설정할 수 있습니다.

인스턴스가 생성되는 동안 콘솔 내의 인스턴스 페이지에서 상태를 확인할 수 있습니다. Google Cloud 콘솔 메뉴에서 알림 아이콘을 클릭하여 인스턴스 생성 활동을 확인할 수도 있습니다.

비공개 IP 전용 인스턴스를 만들면 인스턴스 페이지에 URL이 표시되지 않습니다. 비공개 IP 인스턴스에 대한 액세스를 설정하는 방법에 관한 자세한 내용은 다음 생성 후 비공개 IP 인스턴스에 액세스 섹션을 참조하세요.

생성 후 비공개 IP 인스턴스에 액세스

비공개 IP용으로만 사용 설정된 인스턴스를 만들면 인스턴스의 URL이 전송되지 않습니다. 인스턴스에 액세스하려면 인스턴스에 대한 커스텀 도메인을 구성하고 인스턴스의 OAuth 사용자 인증 정보에 해당 커스텀 도메인을 추가해야 합니다. 커스텀 도메인 설정 및 액세스를 위한 다양한 비공개 IP 네트워킹 옵션을 알아보려면 Looker(Google Cloud 핵심 서비스) 비공개 IP 인스턴스의 커스텀 도메인 네트워킹 옵션 문서 페이지를 참조하세요.

다음 단계