Skip to main content
AWS PrivateLink를 사용하면 트래픽을 공용 인터넷에 노출하지 않고 VPC, AWS 서비스, 온프레미스 시스템, ClickHouse Cloud 간에 안전한 연결을 설정할 수 있습니다. 이 문서에서는 AWS PrivateLink를 사용해 ClickHouse Cloud에 연결하는 단계를 안내합니다. ClickHouse Cloud 서비스에 대한 액세스를 AWS PrivateLink 주소로만 제한하려면 ClickHouse Cloud IP 액세스 목록의 안내를 따르십시오.
ClickHouse Cloud는 다음 리전에서 교차 리전 PrivateLink를 지원합니다.
  • sa-east-1
  • il-central-1
  • me-south-1
  • mx-central-1
  • eu-central-2
  • eu-north-1
  • eu-south-2
  • eu-west-3
  • eu-south-1
  • eu-west-2
  • eu-west-1
  • eu-central-1
  • ca-west-1
  • ca-central-1
  • ap-northeast-1
  • ap-southeast-2
  • ap-southeast-1
  • ap-northeast-2
  • ap-northeast-3
  • ap-south-1
  • ap-southeast-4
  • ap-southeast-3
  • ap-south-2
  • ap-east-1
  • af-south-1
  • us-west-2
  • us-west-1
  • us-east-2
  • us-east-1 가격 관련 참고: AWS는 교차 리전 데이터 전송에 대해 요금을 부과합니다. 가격은 여기에서 확인하십시오.
AWS PrivateLink를 활성화하려면 다음 작업을 완료하십시오:
  1. 엔드포인트 “Service name”을 확인합니다.
  2. AWS 엔드포인트를 생성합니다.
  3. “Endpoint ID”를 ClickHouse Cloud 조직에 추가합니다.
  4. “Endpoint ID”를 ClickHouse 서비스 허용 목록에 추가합니다.
Terraform 예시는 여기에서 확인할 수 있습니다.

중요한 고려 사항

ClickHouse는 AWS 리전 내에서 동일한 게시된 서비스 엔드포인트를 재사용할 수 있도록 서비스를 그룹으로 묶으려고 합니다. 그러나 이러한 그룹화가 항상 보장되는 것은 아니며, 특히 서비스를 여러 ClickHouse 조직에 분산해 둔 경우에는 더욱 그렇습니다. 이미 ClickHouse 조직의 다른 서비스에 대해 PrivateLink를 구성한 경우에는 이러한 그룹화 덕분에 대부분의 단계를 건너뛰고 마지막 단계인 ClickHouse 서비스 허용 목록에 ClickHouse “Endpoint ID”를 추가하는 단계로 바로 진행할 수 있는 경우가 많습니다.

이 절차의 사전 요구 사항

시작하기 전에 다음이 필요합니다:
  1. AWS 계정.
  2. ClickHouse 측에서 Private Endpoint를 생성하고 관리하는 데 필요한 권한이 포함된 ClickHouse API Key.

단계

AWS PrivateLink를 통해 ClickHouse Cloud 서비스를 연결하려면 다음 단계를 따르십시오.

endpoint “Service name” 확인하기

옵션 1: ClickHouse Cloud 콘솔

ClickHouse Cloud 콘솔에서 PrivateLink를 통해 연결할 서비스를 연 다음, 설정 메뉴로 이동합니다. Service nameDNS name을 메모한 다음, 다음 단계로 이동하세요.

옵션 2: API

먼저, 명령을 실행하기 전에 다음 환경 변수를 설정하십시오.
리전, 공급자, 서비스 이름으로 필터링하여 ClickHouse INSTANCE_ID를 확인합니다:
PrivateLink 구성에 사용할 endpointServiceIdprivateDnsHostname을 확인하세요:
이 명령을 실행하면 다음과 비슷한 결과가 반환됩니다:
endpointServiceIdprivateDnsHostname를 메모해 두고 다음 단계로 진행하세요.

AWS 엔드포인트 생성

이 섹션에서는 AWS PrivateLink를 통해 ClickHouse를 구성할 때 필요한 ClickHouse 관련 세부 정보를 다룹니다. AWS 관련 단계는 확인이 필요한 위치를 안내하기 위한 참고용으로 제공되지만, AWS 측의 사전 고지 없이 시간이 지나면서 변경될 수 있습니다. AWS 구성은 구체적인 사용 사례에 맞게 검토하시기 바랍니다.필수 AWS VPC 엔드포인트, Security Group 규칙, DNS 레코드 구성은 ClickHouse의 책임 범위에 포함되지 않습니다.이전에 PrivateLink를 설정하는 동안 “private DNS names”를 활성화했으며, 현재 PrivateLink를 통해 새 서비스를 구성하는 데 어려움을 겪고 있다면 ClickHouse 지원팀에 문의하십시오. 그 밖의 AWS 구성 작업 관련 문제는 AWS 지원팀에 직접 문의하십시오.

옵션 1: AWS 콘솔

AWS 콘솔을 열고 VPCEndpointsCreate endpoints로 이동하세요. Endpoint services that use NLBs and GWLBs를 선택한 다음, Service Name 필드에 Endpoint “Service name” 가져오기 단계에서 얻은 Service nameconsole 또는 endpointServiceIdAPI를 입력하세요. 그런 다음 Verify service를 클릭하세요. PrivateLink를 통해 리전 간 연결을 설정하려면 “Cross region endpoint” 체크박스를 선택하고 서비스 리전을 지정하세요. 서비스 리전은 ClickHouse 인스턴스가 실행 중인 리전입니다. “Service name couldn’t be verified.” 오류가 발생하면 지원되는 리전 목록에 새 리전을 추가하도록 고객 지원팀에 문의하십시오. 다음으로, VPC와 서브넷을 선택하세요. 선택 사항으로 보안 그룹/태그를 할당하세요.
보안 그룹에서 443, 8443, 9440, 3306 포트가 허용되어 있는지 확인하세요.
VPC 엔드포인트를 생성한 후 Endpoint ID 값을 기록해 두세요. 다음 단계에서 필요합니다.

옵션 2: AWS CloudFormation

다음으로, 엔드포인트 “Service name” 확인 단계에서 확인한 Service nameconsole 또는 endpointServiceIdAPI를 사용해 VPC 엔드포인트를 생성해야 합니다. 서브넷 ID, 보안 그룹, VPC ID를 올바르게 사용해야 합니다.
VPC 엔드포인트를 생성한 후 Endpoint ID 값을 기록해 두세요. 다음 단계에서 필요합니다.

옵션 3: Terraform

아래의 service_nameEndpoint “Service name” 가져오기 단계에서 확인한 Service name콘솔 또는 endpointServiceIdAPI입니다
VPC 엔드포인트를 생성한 후 Endpoint ID 값을 메모해 두세요. 다음 단계에서 필요합니다.

엔드포인트의 프라이빗 DNS 이름 설정

DNS를 구성하는 방법은 여러 가지가 있습니다. 환경에 맞게 DNS를 설정하세요.
Endpoint “Service name” 가져오기 단계에서 얻은 “DNS name”이 AWS Endpoint 네트워크 인터페이스를 가리키도록 설정해야 합니다. 이렇게 하면 VPC/네트워크 내의 서비스와 구성 요소가 이를 올바르게 해석할 수 있습니다.

ClickHouse 서비스의 허용 목록에 “Endpoint ID” 추가

옵션 1: ClickHouse Cloud 콘솔

추가하려면 ClickHouse Cloud 콘솔로 이동하여 PrivateLink를 통해 연결할 서비스를 연 다음 설정으로 이동하십시오. Private Endpoint 설정을 클릭하여 private endpoints 설정을 여십시오. AWS Endpoint 생성 단계에서 얻은 Endpoint ID를 입력하십시오. “엔드포인트 생성”을 클릭하십시오.
기존 PrivateLink connection의 액세스를 허용하려면 기존 엔드포인트 드롭다운 메뉴를 사용하십시오.
제거하려면 ClickHouse Cloud 콘솔로 이동하여 서비스를 찾은 다음, 해당 서비스의 설정으로 이동하고 제거할 엔드포인트를 찾으십시오. 엔드포인트 목록에서 제거하십시오.

옵션 2: API

PrivateLink를 통해 사용할 각 인스턴스의 허용 목록에 Endpoint ID를 추가해야 합니다. Create AWS Endpoint 단계의 정보를 사용해 ENDPOINT_ID 환경 변수를 설정합니다. 명령을 실행하기 전에 다음 환경 변수를 설정합니다:
허용 목록에 Endpoint ID를 추가하려면:
허용 목록에서 Endpoint ID를 제거하려면:
Private Link가 활성화된 각 서비스에는 공용 엔드포인트와 Private Endpoint가 있습니다. Private Link를 사용해 연결하려면 엔드포인트 “Service name” 가져오기에서 확인한 privateDnsHostnameAPI 또는 DNS Name콘솔의 Private Endpoint를 사용해야 합니다.

프라이빗 DNS 호스트명 확인

옵션 1: ClickHouse Cloud 콘솔
ClickHouse Cloud 콘솔에서 설정으로 이동합니다. Set up private endpoint 버튼을 클릭합니다. 열리는 플라이아웃에서 DNS Name을 복사합니다.
옵션 2: API
명령을 실행하기 전에 다음 환경 변수를 설정하세요:
INSTANCE_ID이 단계에서 확인할 수 있습니다.
다음과 비슷한 내용이 출력됩니다:
이 예시에서는 privateDnsHostname 호스트명 값으로 연결하면 PrivateLink로 라우팅되지만, endpointServiceId 호스트명으로 연결하면 인터넷을 통해 라우팅됩니다.

문제 해결

대부분의 경우 각 VPC에 대해 endpoint 서비스는 하나만 생성하면 됩니다. 이 endpoint는 해당 VPC의 요청을 여러 ClickHouse Cloud 서비스로 라우팅할 수 있습니다. 여기를 참조하세요

Private Endpoint 연결 시간 초과

  • VPC 엔드포인트에 Security Group을 연결하세요.
  • Endpoint에 연결된 Security Group의 inbound 규칙을 확인하고 ClickHouse 포트를 허용하세요.
  • 연결 테스트에 사용되는 VM에 연결된 Security Group의 outbound 규칙을 확인하고 ClickHouse 포트에 대한 연결을 허용하세요.

비공개 호스트명: 호스트 주소를 찾을 수 없음

  • DNS 구성을 확인하세요

상대방에 의해 연결이 재설정됨

  • 대부분 Endpoint ID가 서비스 허용 목록에 추가되지 않은 경우입니다. 단계를 참조하십시오.

엔드포인트 필터 확인

명령을 실행하기 전에 다음 환경 변수를 설정하십시오.
단계에서 INSTANCE_ID를 확인할 수 있습니다.

원격 데이터베이스에 연결하기

ClickHouse Cloud에서 MySQL 또는 PostgreSQL 테이블 함수를 사용해 Amazon Web Services (AWS) VPC에 호스팅된 데이터베이스에 연결하려는 상황을 가정해 보겠습니다. 이 연결을 안전하게 설정하는 데는 AWS PrivateLink를 사용할 수 없습니다. PrivateLink는 단방향 연결입니다. 내부 네트워크 또는 Amazon VPC에서 ClickHouse Cloud로는 안전하게 연결할 수 있지만, ClickHouse Cloud에서 내부 네트워크로 연결할 수는 없습니다. AWS PrivateLink documentation에는 다음과 같이 설명되어 있습니다.
하나 이상의 consumer VPC가 service provider VPC의 특정 서비스 또는 인스턴스 집합에 단방향으로 액세스하도록 허용하려는 클라이언트/서버 구성에서는 AWS PrivateLink를 사용하십시오. consumer VPC의 클라이언트만 service provider VPC의 서비스에 대한 연결을 시작할 수 있습니다.
이렇게 하려면 AWS Security Group을 구성하여 ClickHouse Cloud에서 내부 프라이빗 데이터베이스 서비스로의 연결을 허용하십시오. ClickHouse Cloud 리전의 기본 egress IP 주소사용 가능한 고정 IP 주소를 함께 확인하십시오.
마지막 수정일 2026년 7월 3일