BQN 문서
닫기 아이콘

서론

R5.0은 현재 베타 테스트 중이며, 이 클러스터 기능은 아직 정식 출시되지 않았습니다.

R5.0부터 여러 대의 BQN 서버를 하나의 클러스터로 묶을 수 있습니다. 이 클러스터는 관리 측면, 즉 공통 규칙 구성, 공통 소프트웨어 업데이트, 그리고 클러스터를 구성하는 서버 중 어느 쪽에서나 확인할 수 있는 공통 가시성 등을 지원합니다.

클러스터에 속한 서버 중 하나에 로그인하려면:

홈페이지에는 각 서버의 트래픽 처리량이 표시되며, BQN 상자를 클릭하면 해당 서버의 익숙한 BQN 홈페이지로 이동합니다.

이 페이지에서는 로컬 서버의 정보뿐만 아니라 클러스터 내 모든 서버의 정보도 확인할 수 있습니다. 예를 들어, ‘Status->Interfaces->Throughput’ 화면의 우측 상단에 있는 선택기를 통해 특정 BQN ID의 처리량이나 클러스터 내 모든 서버의 처리량을 확인할 수 있습니다(BQN 0 옆의 아이콘은 현재 BQN 0에 로그인되어 있음을 나타냅니다):

이 버전에서는 클러스터가 API 관련 기능(REST, RADIUS 또는 과금 시스템을 통한 통합)을 포함하지 않으며, 이러한 기능은 각 BQN 서버가 개별적으로 수행합니다. 또한 데이터 플레인 트래픽 분배도 다루지 않습니다. 각 BQN 서버는 외부 트래픽 분배 방식(예: 각 BQN 서버가 배치된 ISP 네트워크 내 위치에 기반)에 따라 트래픽을 수신하게 됩니다.

클러스터 배포

다음은 3대의 서버로 구성된 클러스터 배포의 예시입니다:

클러스터 내의 각 서버에는 고유한 식별자가 있으며, 이 예시에서는 식별자 0, 1, 2가 할당되어 있습니다. ID가 가장 낮은 서버(이 경우 0)가 클러스터 내의 다른 서버들과 통신하며, 이를 ‘주 서버(primary server)’라고 부릅니다. 나머지 두 서버는 보조 서버(secondary servers)입니다. 이 클러스터는 내결함성을 갖추고 있어, 주 서버가 사용할 수 없게 되면 ID가 그 다음으로 낮은 서버(이 예시에서는 1)가 주 서버 역할을 맡게 됩니다.

클러스터 서버 간의 통신은 서버 관리 IP 주소를 사용합니다. 통신 방식에는 두 가지 유형이 있습니다:

  • 클러스터 제어 트래픽: TCP, 포트 범위 63500~63755. 각 BQN은 포트 63500에 ID를 더한 번호에서 수신 대기합니다. 예를 들어, ID가 0인 BQN은 포트 63500을, ID가 1인 BQN은 포트 63501을 사용하는 식입니다.
  • 정보 전송: 포트 22의 SSH/SCP.

클러스터 내의 모든 서버는 해당 포트를 통해 다른 서버들과 통신할 수 있어야 합니다.

클러스터를 정의하려면, 각 서버의 ID와 해당 서버에 접속할 수 있는 IP 주소 및 SSH 포트 목록이 필요합니다. 모든 서버 관리 주소가 동일한 서브넷에 속해 있다면 이는 매우 간단합니다.

BQN
Id
Cluster
IP Address
SSH/SCP
Port
0 192.168.0.121 22
1 192.168.0.122 22
2 192.168.0.123 22

NAT 또는 포트 포워딩이 설정되어 있는 경우, 클러스터를 구성할 때 이를 반드시 고려해야 합니다. 다음 예시에서는 BQN에 공용 IP 주소를 통해 접속할 수 있으며, 해당 SSH 포트가 포트 포워딩되어 있습니다.

BQN
Id
Cluster
IP Address
SSH/SCP
Port
0 216.58.205.46 2022
1 216.58.205.47 2022
2 216.58.205.48 2022

다음 섹션에서는 네트워크 연결 상태를 확인하는 방법과 클러스터를 구축하기 위한 구성 단계를 자세히 설명합니다.

클러스터 구성

다음은 클러스터를 생성하는 단계별 절차입니다. BQN ID가 0인 주 서버와 ID가 1인 보조 서버 하나만으로 구성된 간단한 클러스터 예시를 사용해 보겠습니다.

소프트웨어 설치

클러스터에 포함될 모든 BQN 서버에는 다음 문서에 설명된 단계에 따라 BQN 소프트웨어(R5.0 이상)가 설치되어 있어야 합니다. '소프트웨어 설치' 섹션에 설명된 단계를 따라야 합니다.

BQN 식별자(BQN ID) 설정

각 BQN 서버에는 고유한 식별자가 부여됩니다. ID가 가장 낮은 BQN이 주 서버 역할을 수행합니다.

ID 0부터 시작하여 1, 2 순으로 진행하는 것을 권장합니다.

기본적으로 BQN 서버의 ID는 0이므로, 주 서버로 지정할 서버의 ID를 변경할 필요는 없습니다. 나머지 서버의 경우 다음 절차를 따르십시오:

  • ‘관리’ > ‘클러스터 ’로 이동한 후 ‘BQN ID 수정’을 클릭하십시오.
  • 0에서 255 사이의 새로운 BQN ID 값을 입력하십시오(예: 1). 이 변경 사항이 적용되면 소프트웨어가 재시작되므로, BQN이 트래픽을 처리 중인 경우 서비스가 잠시 중단될 수 있습니다. GUI에서 자동으로 로그아웃됩니다. 계속하려면 다시 로그인하십시오.

OAM IP 주소 연결성

BQN 관리용 IP 주소들은 서로 통신이 가능해야 합니다. 예를 들어, IP 주소가 192.168.56.111과 192.168.56.112인 두 BQN의 경우, 두 서버에 접속하여 상호 연결 상태를 확인합니다:


ssh bqnadm@192.168.56.111
bqnadm@bqn0# net ping 192.168.56.112
PING 192.168.56.112 (192.168.56.112) 56(84) bytes of data.
64 bytes from 192.168.56.112: icmp_seq=1 ttl=64 time=0.202 ms
64 bytes from 192.168.56.112: icmp_seq=2 ttl=64 time=0.149 ms
64 bytes from 192.168.56.112: icmp_seq=3 ttl=64 time=0.193 ms
64 bytes from 192.168.56.112: icmp_seq=4 ttl=64 time=0.193 ms
^C
--- 192.168.0.122 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3050ms
rtt min/avg/max/mdev = 0.149/0.184/0.202/0.022 ms
bqnadm@bqn0# exit
ssh bqnadm@192.168.56.112
bqnadm@bqn1# net ping 192.168.56.111
PING 192.168.56.111 (192.168.56.111) 56(84) bytes of data.
64 bytes from 192.168.56.111: icmp_seq=1 ttl=64 time=0.200 ms
64 bytes from 192.168.56.111: icmp_seq=2 ttl=64 time=0.199 ms
64 bytes from 192.168.56.111: icmp_seq=3 ttl=64 time=0.202 ms
^C
--- 192.168.0.121 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2032ms
rtt min/avg/max/mdev = 0.199/0.200/0.202/0.011 ms
bqnadm@bqn1# exit

이 클러스터는 63500번에서 63755번 사이의 TCP 포트 범위를 사용합니다. 포트 번호는 BQN 식별자에 따라 달라집니다. 예를 들어, ID 0과 1만 사용되는 경우 클러스터 제어를 위해 63500번과 63501번 포트가 사용됩니다.

해당 포트가 열려 있는지 확인하려면, telnet을 사용하여 각 BQN 주소와 포트로 TCP 트래픽을 전송하고, 대상 측에서 tcpdump를 사용하여 트래픽이 수신되는지 확인하십시오. 예를 들어, bqn0이 bqn1로 TCP를 전송할 수 있는지 확인하려면, 포트 63501(ID가 1인 BQN이 리스닝 중인 포트)을 확인해야 합니다. 대상 측에서 tcpdump를 실행하십시오:


ssh root@bqn1
bqn1:~ # tcpdump -i enp0s3 'tcp and port 63501'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on enp0s3, link-type EN10MB (Ethernet), capture size 65535 bytes

telnet을 사용하여 포트로 트래픽을 전송합니다(클러스터가 아직 구성되지 않은 상태에서는 수신 대기 중이지 않아 연결이 거부될 것으로 예상됩니다):


ssh root@bqn0
bqn0:~ # telnet 192.168.56.112 63501
Trying 192.168.56.112...
telnet: connect to address 192.168.56.112: Connection refused
bqn0:~ #

목적지에 도달하면 트래픽이 수신됩니다:


bqn1:~ # tcpdump -i enp0s3 'tcp and port 63501'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on enp0s3, link-type EN10MB (Ethernet), capture size 65535 bytes
19:55:01.510551 IP 192.168.56.111.51808 > 192.168.56.112.63501: Flags [S], seq 1158501329, win 29200, options [mss 1460,sackOK,TS val 277566580 ecr 0,nop,wscale 7], length 0
19:55:01.511800 IP 192.168.56.112.63501 > 192.168.56.111.51808: Flags [R.], seq 0, ack 1158501330, win 0, length 0
19:55:26.344664 IP 192.168.56.111.51812 > 192.168.56.112.63501: Flags [S], seq 3902161536, win 29200, options [mss 1460,sackOK,TS val 277591420 ecr 0,nop,wscale 7], length 0
19:55:26.344835 IP 192.168.56.112.63501 > 192.168.56.111.51812: Flags [R.], seq 0, ack 3902161537, win 0, length 0

bqn1에서 bqn0로 연결되는 63500번 포트도 마찬가지입니다.

SSH도 사용됩니다. bqn0에서 bqn1로 SSH 연결을 확인하려면.


bqn0:~ # ssh bqnadm@192.168.56.112
Password:
Last login: Thu Mar 26 19:28:22 2026 from 192.168.56.1
Have a lot of fun...
Copyright (c) 2009-2015 Bequant S.L.
bqnadm@bqn1# exit

마찬가지로 bqn1에서 bqn0로:


bqn1:~ # ssh bqnadm@192.168.56.111
Password:
Last login: Thu Mar 26 19:35:17 2026 from 192.168.56.1
Have a lot of fun...
Copyright (c) 2009-2015 Bequant S.L.
bqnadm@bqn0# exit

클러스터에 세 번째 서버를 추가할 경우, 앞서 설명한 대로 이 서버와 나머지 두 서버 간의 연결 상태를 확인해야 합니다.

때로는 BQN OAM IP 주소가 BQN의 실제 IP에 매핑된 공용 IP 주소를 통해 연결될 수 있습니다. 이 경우 매핑에 클러스터 포트(예: 63500-63501)를 추가해야 합니다. 연결 상태를 확인할 때는 해당 BQN 서버에 접속할 때 공용 IP 주소를 사용하십시오.

클러스터 전체에서 구성을 통합합니다

클러스터를 이전에 독립형으로 사용되던 BQN을 활용하여 구축할 경우, 각 BQN의 구성을 확인하여 차이점을 파악하고 공통된 구성으로 통일해야 합니다. 차이점이 있음에도 불구하고 구성을 통일하지 않으면, 클러스터의 구성으로 주 서버의 구성이 사용됩니다.

다음 예시는 일반적인 절차를 보여줍니다. 클러스터에 추가할 서버가 두 대 있습니다.

  1. 주 서버 에서 [관리] > [백업] > [구성 저장] 으로 이동하여 구성을 저장합니다(예: bqn0-v1.conf).
  2. 보조 서버에서도 [관리] > [백업] > [구성 저장 ]으로 이동하여 구성을 저장하십시오(예: bqn1-v1.conf).
  3. 두 파일을 비교해 보세요. 예를 들어, kdiff3 도구를 사용하면 다음과 같은 차이점을 확인할 수 있습니다:
  • bqn0에 NTP 서버 216.229.0.50이 없습니다. 추가하겠습니다.
  • bqn0에는 REST API가 활성화되어 있지 않습니다. 이를 추가하겠습니다.
  • 인터페이스 간의 차이는 문제가 되지 않습니다. 이는 서버마다 다르기 때문에 별도의 조치를 취하지 않습니다. 라우팅 역시 서버마다 다릅니다(이 예시에서는 동일하지만, 만약 달랐다면 병합되지 않았을 것입니다).
  • 속도 테스트 프로필에서 bqn1에 추가 항목이 있으므로, 이를 bqn0에 추가합니다.
  • sw-updates에서 bqn0에 항목이 하나 더 있는데, 이를 bqn1에 추가합니다.
  • bqn0에는 사용량이 많은 시간대의 소프트웨어 업데이트에 대한 추가 규칙이 있습니다. bqn1에 해당 정책과 규칙을 추가합니다(시간 프로필은 이미 존재했습니다).

앞서 설명한 단계를 모두 마쳤다면, 통합된 구성이 적용된 abqn0-v2.conf 및 bqn1-v2.conf 파일이 생성되었을 것입니다.

주 서버 의 [관리] > [백업] > [구성 불러오기 ]로 이동하여 bqn0-v2.conf 파일을 불러오십시오.

보조 서버에서도 bqn1-v2.conf 파일을 사용하여 동일한 작업을 수행하십시오.

클러스터 구성

먼저 주 서버를 구성하여 클러스터 생성을 시작하겠습니다. 주 서버의 GUI로 이동하여 [관리] > [클러스터]를 선택한 다음, [클러스터에 BQN 추가...]를 클릭하십시오.

대화 상자에서 보조 BQN ID(1)와 해당 BQN의 관리용 IP 주소를 입력하십시오. ‘클러스터 내 이 BQN의 IP 주소’ 필드에는 주 주소(primary address)를 입력하십시오.

이 예제에서는 관리용 IP 주소 192.168.56.111과 192.168.56.112를 사용합니다. 서버에 공용 IP 주소를 통해 접속할 수 있다면, 대신 해당 주소를 사용하십시오.

보조 BQN 서버에서도 동일한 절차를 따릅니다. 보조 GUI로 이동하여 [관리] > [클러스터]를 선택한 다음 [클러스터에 BQN 추가...]를 클릭합니다 ...

대화 상자에서 주 BQN ID(0)와 BQN IP 주소를 입력하십시오. ‘클러스터 내 이 BQN의 IP 주소’ 필드에는 보조 서버의 IP 주소를 입력하십시오.

IP 주소는 이 예시와 같이 관리용 주소일 수 있지만, 서버 중 하나라도 공용 IP 주소를 통해 접속할 수 있다면 해당 주소를 대신 사용하십시오.

클러스터의 상태가 '준비됨 '이고 상태가 '완료'로 표시되어야 합니다:

해당 서버의 GUI로 이동하여 ‘클러스터에 BQN 추가’를 클릭하면, 이 과정을 반복하여 클러스터에 서버를 더 추가할 수 있습니다.

문서 스타일링 태그
[.p-highlight] 로렘 입섬... [.p-highlight]

로렘 입섬 도르 시트 아멧, 콘섹테투르 아디피싱 엘리트. 에로스 엘리멘툼 트리스티크에 서스펜디스 바리우스 에님. 듀이스 커서스, 마이 퀴스 비베라 오르나레, 에로스 도르 인터둠 널라, 우트 코모도 디암 리베로 비타 에랏. 아이네안 포시 부스 니브 et 저주 커서스 아이디 루트룸 로렘 임페디트. Nunc ut sem vitae risus tristique posuere.

[.p-highlight-blue] Lorem ipsum... [.p-highlight-blue]]

로렘 입섬 도르 시트 아멧, 콘섹테투르 아디피싱 엘리트. 에로스 엘리멘툼 트리스티크에 서스펜디스 바리우스 에님. 듀이스 커서스, 마이 퀴스 비베라 오르나레, 에로스 도르 인터둠 널라, 우트 코모도 디암 리베로 비타 에랏. 아이네안 포시 부스 니브 et 저주 커서스 아이디 루트룸 로렘 임페디트. Nunc ut sem vitae risus tristique posuere.

[.p-highlight-red] Lorem ipsum... [.p-highlight-red]

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

단일 [.c-highlight]단어 한 칸 띄어쓰기 [.c-highlight] 스타일링에 대한 미리보기입니다.
싱글 미리보기 word mono-spaced 스타일링.
이전
다음