
ObjectRocket 데이터베이스 서비스에 연결하고 상호작용하는 방법은 몇 가지가 있으며, 모두 매우 간단합니다.
첫 번째 단계는 "Create Instance(인스턴스 생성)" 버튼을 사용해 인스턴스를 만드는 것입니다. 인스턴스를 생성하면 연결 문자열(connect string)이 자동으로 프로비저닝됩니다. 다음과 같은 몇 가지 연결 방식 중에서 선택할 수 있습니다:
- 네이티브 MongoDB 드라이버, 일반 텍스트
- 네이티브 MongoDB 드라이버, SSL 암호화
- ObjectRocket API, SSL 암호화
연결 전 알아두어야 할 사항
연결 방법을 살펴보기 전에 먼저 개요를 짚고 넘어가겠습니다. ObjectRocket 서비스는 기본적으로 자동 샤딩(sharding) 시스템입니다. 즉, 연결하는 순간 최소 하나 이상의 샤드(레이아웃 설정에 따라 다름)에 즉시 연결됩니다. 또한 각 인스턴스의 복제 세트(replica set)에는 최소 3개의 멤버가 포함되어 있습니다. 연결 시 자동으로 해당 샤드의 현재 마스터로 라우팅되며, 드라이버나 시스템 측면에서 별도의 구성 작업이 필요 없습니다. 모든 과정이 매끄럽게 처리됩니다.
보안 및 ACL 설정
ObjectRocket 서비스는 기본적으로 외부에 개방되어 있지 않습니다. 보안은 엔터프라이즈급 시스템에서 가장 중요한 요소 중 하나이기 때문입니다. 따라서 연결하려면 먼저 자신의 클라이언트가 ACL(Access Control List) 목록에 등록되어 있어야 합니다. 이 작업은 GUI의 데이터베이스/Connections 탭에서 수행할 수 있습니다.
ACL 항목을 추가하면 방화벽을 열 수 있고, 체계적인 관리를 돕는 코멘트도 함께 남길 수 있습니다. CIDR 규격을 준수하는 주소라면 무엇이든 추가할 수 있어, 특정 IP 대역 전체를 한 번에 허용하는 것도 가능합니다. 예를 들어 EC2 웹 서버 전체를 한꺼번에 오픈할 수 있습니다.
빠른 네트워크 접근성
ObjectRocket은 미국 내 주요 데이터센터와 인접한 위치에 전략적으로 배치되어 있습니다. 독특한 네트워크 피어링(peering) 구조 덕분에 어떤 애플리케이션에서도 매우 빠르게 접근할 수 있습니다. 많은 경우 고객들은 로컬 클라우드 제공업체를 사용할 때와 비교해 ObjectRocket 사용 시 눈에 띄는 지연(latency) 차이를 느끼지 못합니다.
네이티브 연결
ObjectRocket에 네이티브 방식으로 연결하는 것은 매우 간단합니다. 일반적인 MongoDB 드라이버를 사용할 때처럼 평소와 같이 연결 문자열만 사용하면 됩니다:
$ mongo w-mongos0.objectrocket.com:4343여기서 조금 특별한 점은 이 호스트와 포트가 완전히 로드 밸런싱되고 이중화되어 있다는 것입니다. 따라서 애플리케이션에서 여러 호스트 주소를 지정하거나 복잡한 설정을 할 필요가 없습니다. 지정된 호스트명은 N개의 MongoS 서버 중 하나로 자동 라우팅됩니다. 애플리케이션 설정에 제공된 연결 문자열을 그대로 사용하기만 하면 되며, 언제든 자유롭게 샤딩을 추가해도 추가 구성 변경이 전혀 필요하지 않습니다.
SSL 연결
SSL 연결은 조금 다릅니다. 이 연결은 ObjectRocket POD에서 직접 종료되는 표준 SSL 연결입니다. 셸(shell)을 사용하는 경우 SSL로 컴파일된 클라이언트가 필요하며, 최근에는 많은 드라이버가 SSL을 지원합니다. 아직 SSL이 컴파일된 클라이언트를 사용하고 있지 않다면 저희에게 문의하세요. 소스에 통합할 수 있는 클라이언트를 보내드립니다.
또는 stunnel을 사용하는 방법도 있습니다. stunnel은 ObjectRocket 서비스와 매끄럽게 연동되므로, 기존 소프트웨어 스택을 수정하지 않고도 SSL 미지원 MongoDB 클라이언트를 계속 사용할 수 있습니다. SSL 연결 역시 로드 밸런싱과 이중화가 적용되며, 샤드가 추가되더라도 별도의 변경이 필요하지 않습니다.