참고: 동영상에 나온 정책은 권한 범위가 넓으며 Quick Start 용도로만 사용하기 위한 것입니다. 아래의 최소 권한 IAM 지침을 참조하십시오.
사전 준비 사항
- ClickHouse Connector Sink를 잘 알고 있습니다.
- Amazon MSK 및 MSK Connectors를 잘 알고 있습니다. Amazon MSK 시작하기 가이드와 MSK Connect 가이드를 참고하는 것을 권장합니다.
Amazon MSK용 ClickHouse 공식 Kafka Connector
연결 정보 확인
ClickHouse Cloud 서비스의 연결 정보는 ClickHouse Cloud 콘솔에서 확인할 수 있습니다.
서비스를 선택한 다음 Connect를 클릭하십시오.
HTTPS를 선택하십시오. 연결 정보가 예시
curl 명령으로 표시됩니다.
자가 관리형 ClickHouse를 사용하는 경우 연결 정보는 ClickHouse 관리자가 설정합니다.
단계
- ClickHouse Connector Sink를 숙지하십시오.
- MSK 인스턴스를 생성하십시오.
- IAM role을 생성하고 할당하십시오.
- ClickHouse Connect Sink의 릴리스 페이지에서
jar파일을 다운로드하십시오. - 다운로드한
jar파일을 Amazon MSK 콘솔의 사용자 지정 플러그인 페이지에 설치하십시오. - connector가 퍼블릭 ClickHouse 인스턴스와 통신하는 경우 인터넷 액세스를 활성화하십시오.
- config에 토픽 이름, ClickHouse 인스턴스 호스트명, 비밀번호를 지정하십시오.
권장 IAM 권한(최소 권한 원칙)
- AWS Glue Schema Registry를 사용할 때만 Glue 블록을 사용하세요.
- Secrets Manager에서 자격 증명/트러스트스토어를 가져올 때만 Secrets Manager 블록을 사용하세요. ARN 범위를 필요한 리소스로 한정하세요.
- S3에서 아티팩트(예: 트러스트스토어)를 로드할 때만 S3 블록을 사용하세요. 버킷/프리픽스로 범위를 한정하세요.
성능 튜닝
MSK Connect용 네트워킹 관련 참고 사항
- 프라이빗 서브넷 생성: VPC 내에 새 서브넷을 생성하고 프라이빗 서브넷으로 지정합니다. 이 서브넷은 인터넷에 직접 액세스할 수 없어야 합니다.
- NAT 게이트웨이 생성: VPC의 퍼블릭 서브넷에 NAT gateway를 생성합니다. NAT gateway를 사용하면 프라이빗 서브넷의 인스턴스가 인터넷이나 다른 AWS 서비스에 연결할 수 있지만, 인터넷에서 해당 인스턴스로 연결을 시작하는 것은 차단됩니다.
- 라우팅 테이블 업데이트: 인터넷으로 향하는 트래픽이 NAT gateway로 전달되도록 경로를 추가합니다.
- Security Group 및 네트워크 ACL 구성 확인: 관련 트래픽이 허용되도록 security groups 및 network ACLs (Access Control Lists)를 구성합니다.
- MSK Connect worker ENI에서 MSK brokers의 TLS 포트(일반적으로 9094)로 가는 트래픽.
- MSK Connect worker ENI에서 ClickHouse endpoint의 9440(네이티브 TLS) 또는 8443(HTTPS)으로 가는 트래픽.
- broker SG에서 MSK Connect worker SG의 인바운드 트래픽을 허용합니다.
- 자체 호스팅 ClickHouse를 사용하는 경우 server에 구성된 포트(기본값: HTTP용 8123)를 엽니다.
- MSK에 Security Group 연결: 이러한 security groups가 MSK 클러스터와 MSK Connect workers에 연결되어 있는지 확인합니다.
- ClickHouse Cloud 연결성:
- 퍼블릭 endpoint + IP 허용 목록: 프라이빗 서브넷에서의 NAT 이그레스가 필요합니다.
- 지원되는 경우 프라이빗 연결(예: VPC peering/PrivateLink/VPN)을 사용합니다. VPC DNS 호스트명/해상도가 활성화되어 있고 DNS가 프라이빗 endpoint를 확인할 수 있는지 점검하십시오.
- 연결성 검증(빠른 체크리스트):
- connector 환경에서 MSK bootstrap DNS를 확인하고 TLS를 통해 broker 포트에 연결합니다.
- 9440 포트(또는 HTTPS의 경우 8443 포트)에서 ClickHouse에 대한 TLS connection을 설정합니다.
- AWS 서비스(Glue/Secrets Manager)를 사용하는 경우 해당 endpoints로의 이그레스를 허용합니다.