FactStack

Snowflake Openflow DCP란, 방화벽 안 열고 사내 데이터 연결하는 방법

데이터 인프라

한마디로

인바운드 포트 없이 사내 Oracle, 프라이빗 Kafka를 Snowflake에 붙이는 에이전트가 나왔어요

한눈에

Snowflake가 Openflow용 Data Connectivity Proxy(DCP)를 일반 공개했습니다. 사내망이나 VPC 안에 있는 Oracle 데이터베이스, 프라이빗 Kafka 브로커, 여러 클라우드에 흩어진 데이터베이스에 인바운드 방화벽 포트를 열지 않고도 접근하게 해주는 에이전트예요. 금융, 헬스케어, 제조업처럼 deny-all-inbound 정책을 쓰는 조직도 이제 첫 파티 방식으로 데이터 연동 프로젝트를 시작할 수 있습니다.

AS-IS 방식은 왜 느렸나

기존에는 관리형 파이프라인 벤더가 프라이빗 소스에 접근하려면 네트워크 엔지니어링 팀을 끌어들이고 방화벽 규칙을 열고 변경 승인위원회(change advisory board)를 통과해야 했어요. 원문에 따르면 이 과정 자체가 몇 달씩 걸리는 네트워크 프로젝트였고, 회사마다 VPN, PrivateLink, 서드파티 에이전트를 토폴로지별로 따로 구축하다 보니 이 패치워크 자체가 또 다른 인프라 문제가 됐다고 해요. CSP 네이티브 프라이빗 연결(AWS PrivateLink, Azure Private Endpoint, Google Private Service Connect)은 같은 클라우드 안 경로에는 맞지만 온프레미스 소스는 다루지 못하고, VPN이나 ExpressRoute, VPC 피어링은 되긴 해도 매번 몇 주짜리 네트워크 엔지니어링 프로젝트라는 게 원문 설명입니다.

DCP는 무엇을 바꾸나

DCP는 데이터가 이미 있는 환경, 즉 온프레미스 데이터센터나 프라이빗 클라우드, VPC, 다른 클라우드 안에서 가볍게 돌아가는 에이전트로 배포돼요. 이 에이전트가 Snowflake로 443번 포트 아웃바운드 연결만 열고 mTLS로 암호화 터널을 맺으면, Snowflake가 그 터널을 통해 Openflow 트래픽을 프라이빗 소스까지 라우팅하는 구조입니다. 방화벽 입장에서는 내부에서 시작한 아웃바운드 TLS 연결 한 종류만 보이고, 열거나 바꾸거나 승인받아야 할 인바운드 규칙 자체가 없어요. 에이전트는 TCP 레벨에서 트래픽을 그대로 전달만 할 뿐 데이터를 들여다보거나 저장하지 않고, 소스 자격증명도 Snowflake 안에만 남아 에이전트로 넘어가지 않는다고 합니다.

실무 적용 포인트

부트스트랩 토큰은 7일간 유효하고, 이후에는 인증서 쌍으로 자동 인증하며 Snowflake가 백그라운드에서 인증서를 갱신해요. 접속 대상은 Snowflake 안에서 네트워크 규칙과 외부 액세스 통합으로 화이트리스트 등록하고, DCP 객체에 바인딩하는 방식이라 객체를 비활성화하면 인증서가 만료 전이어도 즉시 접근이 끊깁니다. 에이전트는 Docker 이미지로 제공되고 Docker나 다른 OCI 호환 런타임이 있는 리눅스 호스트에서 돌아가며 쿠버네티스는 필요 없다고 해요. 다만 에이전트가 사내 관리형 포워드 프록시(HTTPS_PROXY나 CONNECT 기반)를 거치는 구성은 아직 지원되지 않는다는 점은 도입 전에 확인할 필요가 있습니다.

  • 대상 소스: 온프레미스 Oracle, SQL Server, PostgreSQL, MySQL / VPC나 데이터센터 안 프라이빗 Kafka / 데이터는 AWS에 있고 Snowflake 계정은 Azure에 있는 크로스 클라우드 구성
  • 적용 조건: AWS, Azure, GCP에서 Standard, Enterprise, Business-Critical 에디션 고객에게 오늘부터 GA
  • 확인할 점: 에이전트 호스트가 443번 포트로 Snowflake에 직접 아웃바운드 접근이 가능해야 함

자주 묻는 질문

Snowflake DCP란

Snowflake Openflow에서 온프레미스 데이터베이스나 프라이빗 Kafka처럼 방화벽 안쪽 데이터 소스에 인바운드 포트를 열지 않고 접근하게 해주는 첫 파티 에이전트예요. 에이전트가 443번 포트로 아웃바운드 연결만 열고 mTLS 터널을 맺어 Snowflake가 그 터널로 Openflow 트래픽을 라우팅합니다.

DCP와 PrivateLink 같은 CSP 프라이빗 연결은 뭐가 다른가

AWS PrivateLink나 Azure Private Endpoint 같은 CSP 네이티브 프라이빗 연결은 같은 클라우드 안 경로에는 적합하지만 온프레미스 소스는 다루지 못해요. DCP는 온프레미스, VPC, 다른 클라우드까지 아우트바운드 에이전트 하나로 커버한다는 점이 다릅니다.

DCP는 어떻게 시작하나

먼저 CREATE DATA CONNECTIVITY PROXY로 객체를 만들고 SYSTEM$GENERATE_DATA_CONNECTIVITY_PROXY_BOOTSTRAP_TOKEN으로 7일짜리 부트스트랩 토큰을 발급합니다. 그다음 Docker로 dcp-agent 이미지를 실행하고 DESCRIBE DATA CONNECTIVITY PROXY로 상태를 확인하면 돼요.

어떤 에디션에서 쓸 수 있나

AWS, Azure, GCP에서 Standard, Enterprise, Business-Critical 에디션 고객이라면 오늘부터 별도 상위 에디션 전환 없이 바로 사용할 수 있다고 원문에 나와 있습니다.

에디터 노트

방화벽 인바운드 승인 절차가 데이터 연동 프로젝트 일정을 몇 달씩 잡아먹던 조직에는 실질적인 시간 단축이 될 만한 기능이에요. 다만 사내 관리형 포워드 프록시를 거치는 네트워크 구성이라면 아직 지원되지 않는다는 제약이 있으니, 기존 네트워크 정책과 맞는지 사전에 확인하는 게 안전합니다.

참고 출처 | 원문 보기

태그

용어 풀이
Snowflake
스노우플레이크
Openflow
오픈플로우
Data Connectivity Proxy
데이터 커넥티비티 프록시
mTLS
상호 TLS 인증
공유

관련 마테크