02ClusterXL 소개ClusterXL 소개
게이트웨이와 VPN 연결은 조직의 업무를 떠받치는 핵심 장비 입니다. 게이트웨이 한 대나 VPN 연결 하나가 죽으면 그 순간 활성 연결이 모두 끊기고, 중요한 데이터에 접근하지 못하게 됩니다. 그래서 조직과 바깥 세상 사이를 잇는 길목인 Security Gateway는 어떤 상황에서도 열려 있어야 합니다. ClusterXL 은 바로 그 길목이 멈추지 않게 게이트웨이를 여러 대 묶어 주는 Check Point의 소프트웨어 클러스터 솔루션입니다.
클러스터가 필요한 이유
한 대의 게이트웨이에 모든 트래픽을 맡기면, 그 한 대가 단일 장애점(single point of failure) 이 됩니다. 하드웨어가 고장 나거나, 소프트웨어에 문제가 생기거나, 케이블이 빠지는 순간 조직의 인터넷·VPN이 통째로 멈춥니다. 업무가 끊기지 않으려면, 한 대가 쓰러져도 다른 대가 즉시 그 자리를 메우는 구조가 필요합니다. 이것이 클러스터를 두는 이유입니다.
ClusterXL 솔루션이 하는 일
ClusterXL은 Security Gateway의 이중화(redundancy)와 부하 분산(Load Sharing) 을 위한 Check Point의 소프트웨어 기반 클러스터입니다. 하나의 ClusterXL Security Cluster 는 동일한 Check Point Security Gateway 여러 대 로 구성됩니다(멤버들이 똑같아야 한다는 점은 다음 장에서 자세히 다룹니다).
ClusterXL은 두 가지 방식으로 안정성을 제공합니다.
- High Availability(고가용성) Security Cluster 는 한 멤버가 죽으면 백업 멤버로 투명하게 페일오버 해, Security Gateway와 VPN 연결의 이중화를 보장합니다. 사용자는 전환이 일어났다는 사실조차 느끼지 못합니다.
- Load Sharing(부하 분산) Security Cluster 는 모든 멤버가 동시에 Active로 동작하며 트래픽을 나눠 처리 합니다. 그래서 안정성에 더해 성능까지 함께 끌어올린 다는 장점이 있습니다.
두 방식의 구체적인 동작은 HA·Load Sharing 모드에서 다룹니다.

위 그림의 각 번호는 다음을 가리킵니다.
| 번호 | 설명 |
|---|---|
| 1 | 내부 네트워크(Internal network) |
| 2 | 내부 네트워크용 스위치 |
| 3 | ClusterXL Software Blade를 켠 Security Gateway들 |
| 4 | 외부 네트워크용 스위치 |
| 5 | 인터넷 |
ClusterXL은 어떻게 동작하나
ClusterXL이 멤버 한 대가 죽어도 활성 연결을 살려 두고 데이터 유실을 막는 비결은 State Synchronization(상태 동기화) 입니다. 상태 동기화 덕분에 각 멤버는 다른 멤버를 지나가는 연결까지 모두 "알고" 있습니다. 그래서 어떤 멤버가 갑자기 쓰러져도, 그 멤버가 처리하던 연결을 다른 멤버가 끊김 없이 이어받을 수 있습니다(자세한 내용은 연결 동기화 참고).
주소를 다루는 방식도 한몫합니다. ClusterXL은 클러스터 자체에는 Virtual IP(가상 IP)를 쓰고, 각 멤버에게는 고유한 물리 IP와 MAC 주소를 둡니다. 이때 Virtual IP 주소는 어느 물리 인터페이스에도 속하지 않는 가상 주소입니다. 덕분에 바깥에서는 어느 멤버가 실제로 일하는지 신경 쓸 필요 없이 Virtual IP 하나만 바라보면 됩니다.
멤버를 하나로 묶는 접착제 — CCP
Security Cluster의 멤버들을 하나로 묶어 주는 접착제가 CCP(Cluster Control Protocol) 입니다. CCP 패킷은 일반 네트워크 트래픽과는 구별되는 별도의 트래픽 이며, 어떤 네트워크 스니퍼로든 들여다볼 수 있습니다.
CCP는 멤버들 사이에서 UDP 8116 포트 로 동작하며, 두 가지 역할을 맡습니다.
- 멤버들이 keep-alive 패킷을 주고받아 자신의 상태를 알리고 다른 멤버의 상태를 배우는 역할(이 역할은 ClusterXL 클러스터에만 해당됩니다).
- State Synchronization(Delta Sync) — 상태 동기화 역할.
Check Point의 CCP는 모든 ClusterXL 모드에서 공통으로 쓰입니다.
CCP 설정을 다루는 방법은 ClusterXL 구성 명령의 Cluster Control Protocol(CCP) 설정 항목을 참고하세요.