목차
웹을 통해 기존 컨트롤러를 분산 클러스터 모드로 구성하기
명령을 통해 새로 설치된 컨트롤러에 대한 분산 클러스터 모드 구성하기
분산 클러스터 모드가 실행되지 않는 경우 어떻게 문제를 해결하나요?
목표
이 문서에서는 컨트롤러 분산 노드의 개념을 설명합니다. 두 가지 배포 방법을 자세히 설명합니다. 하나는 기존 컨트롤러를 사용하여 웹 인터페이스를 통해 분산 노드를 배포하는 것이고, 다른 하나는 새로 컨트롤러를 설치할 때 터미널 명령을 통해 배포하는 것입니다.
요구 사항
- Omada 소프트웨어 컨트롤러
소개
Omada 소프트웨어 컨트롤러의 분산 클러스터 모드는 네트워크 고가용성에 대한 고객의 요구 사항을 충족할 수 있습니다. 이 모드에서는 여러 노드가 협업하여 Omada 디바이스를 관리합니다. 이러한 협업 방식은 컨트롤러가 관리할 수 있는 디바이스 수의 상한을 크게 늘릴 뿐만 아니라 여러 노드의 조율된 운영을 통해 전체 네트워크의 고가용성을 보장합니다. 노드에 장애가 발생하면 자동 부하 분산이 트리거되고 장애가 발생한 노드의 서비스는 다른 노드가 인수합니다. 장애 조치 기간 동안 원래 장애가 발생한 노드에서 관리하는 사이트 아래의 디바이스는 잠시 오프라인 상태가 되었다가 자동으로 다른 노드에 다시 연결됩니다. 디바이스가 '연결됨' 상태로 다시 시작되면 모든 서비스가 정상적으로 작동합니다.
아래 그림과 같이 여러 노드(3개 이상의 노드)가 Omada 디바이스를 공동으로 관리할 수 있는 일반적인 분산 클러스터 배포 토폴로지입니다.
전제 조건 및 주의 사항
분산 노드를 정식으로 구성하고 배포하기 전에 다음 제안 사항과 주의해야 할 사항이 있습니다.
- 분산 클러스터 모드에는 최소 3개의 노드가 필요합니다. 설정하기 전에 컨트롤러를 3개 이상 배포할 준비를 하세요.
- 분산 클러스터 모드를 설치하려면 Java 17이 필요합니다. sudo apt install openjdk-17-jre-headless를 사용하여 Java 17을 설치합니다.
- 컨트롤러 분산 클러스터 모드를 사용하려면 시스템의 핸들 수를 수정하는 것이 전제 조건입니다. "/etc/security/limits.conf"를 편집하고 다음 매개변수를 추가한 후 파일을 저장하고 로그아웃했다가 다시 로그인하여 변경 사항을 적용합니다.
* soft nofile 65535
* hard nofile 65535
Linux 버전에 따라 핸들 번호를 수정하는 방법이 다를 수 있다는 점에 유의하세요. Linux 버전에 따라 핸들 번호를 수정하세요.
- 각 노드의 시스템 시간이 20초 미만의 시간 차이로 일관되게 유지되도록 하세요.
- 모든 노드에서 JDK 및 MongoDB 버전이 일관되게 유지되는지 확인하세요.
- 노드 IP는 고정 IP만 지원합니다. IP/포트를 수정해야 하는 경우 다시 초기화해야 합니다. 클러스터 노드의 IP를 조정하는 방법을 참조하세요.
- 모든 노드는 동일한 네트워크 세그먼트 내에 배포하는 것이 좋습니다.
설정
웹을 통해 기존 컨트롤러를 분산 클러스터 모드로 구성하기
1단계. 전역 보기에서 전역 보기 > 설정 > 클러스터로 이동하여 클러스터를 활성화합니다. 그런 다음 모드를 분산 클러스터로 선택합니다.
2단계. 노드 추가 를 클릭하여 노드를 3개 이상 추가합니다. 이 노드의 이름 과 노드 관리 호스트 이름/IP를 입력합니다. 여기서 IP와 호스트 이름은 서로 다른 서버에 해당해야 합니다. 향후 버전에서는 노드가 동일한 IP 또는 호스트 이름을 사용하여 장치를 공동으로 관리할 수 있도록 지원할 예정입니다. 그런 다음 적용을 클릭합니다.
그 후 컨트롤러는 프롬프트 창과 속성 파일 초기화를 표시합니다. 초기화 속성 파일을 다운로드하세요. 설정을 적용하려면 컨트롤러를 재부팅해야 합니다. 장치 연결 끊김이나 기타 문제를 방지하기 위해 가능한 한 빨리 재부팅하세요.오프라인으로 추가된 노드는 다운 상태 노드로 간주되어 재해 복구 기능에 영향을 미칩니다. 해당 노드를 최대한 빨리 시작하세요.
3단계. 각 노드에서 속성 파일(2단계에서 다운로드)을 각각 교체합니다. 속성 파일의 경로는 다음과 같습니다: /opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties
4단계. 각 노드에서 각각 초기화 명령을 실행합니다. 노드를 초기화할 때 모든 노드의 계정과 비밀번호를 설정합니다. 노드를 초기화할 때 먼저 기본 노드(초기화 속성을 내보내는 노드)를 초기화합니다. 그렇지 않으면 초기화에 실패할 수 있습니다.
sudo omadacluster -config
/opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties -nodeName init
기본 노드 초기화 중 터미널 인쇄의 예시
기본 노드가 아닌 노드의 초기화 중 터미널 인쇄 예시
5단계. 배포가 성공적으로 완료되면 클러스터 페이지로 이동하여 확인합니다. 분산 클러스터 모드가 제대로 실행되면 모든 노드를 통해 컨트롤러에 액세스할 수 있습니다.
명령을 통해 새로 설치된 컨트롤러에 대해 분산 클러스터 모드 구성하기
1단계. 클러스터 모드 설치를 선택합니다(설치 후 자동으로 시작되지 않음).
- deb를 사용하여 설치
echo "omadac omadac/init-cluster-mode boolean true" | sudo debconf-set-selections
sudo dpkg -i /path/to/controller_installation_package
- tar.gz를 사용하여 설치
압축을 푼 후 셸 설치 스크립트를 통해 클러스터 모드를 배포합니다. ./install.sh init - cluster - mode를 입력하면 설치 후 시스템이 자동으로 시작되지 않으며 클러스터 설정을 위한 관련 프롬프트 정보가 인쇄됩니다.
2단계. 컨트롤러 설치를 시작하고 메시지에 따라 속성 파일을 편집합니다.
각 노드의 속성 파일 /opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties을 수정합니다.
3단계 각 노드에서 각각 초기화 명령을 실행합니다.
sudo omadacluster -config /opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties -node<nodeName> init
기본 노드 초기화 중 터미널 인쇄 예시
기본 노드가 아닌 노드의 초기화 중 터미널 인쇄 예시
4단계 배포가 성공하면 컨트롤러에 로그인하여 사용자 이름과 비밀번호를 설정하면 다른 노드에서 사용자 이름과 비밀번호를 동기화합니다.
그런 다음 클러스터 페이지로 이동하여 확인합니다. 분산 클러스터 모드가 제대로 실행되면 모든 노드를 통해 컨트롤러에 액세스할 수 있습니다.
분산 클러스터 모드의 고가용성
분산 클러스터 모드의 고가용성 특성은 다음 설명에 나와 있습니다. 혼합 노드의 총 개수가 3~4개일 경우 혼합 구성원 1개, 혼합 노드의 총 개수가 5~6개일 경우 혼합 구성원 2개, 혼합 노드의 총 개수가 7개일 경우 혼합 구성원 3개가 연결 해제될 수 있도록 허용됩니다. 즉, 내결함성 혼합 노드 수가 최대 혼합 노드 수의 절반 미만입니다.
혼합 노드 수 |
허용된 연결 해제된 혼합 노드 수 |
3 |
1 |
4 |
1 |
5 |
2 |
6 |
2 |
연결이 끊긴 노드 수가 허용된 한도를 초과하면 전체 클러스터가 오작동합니다. 클러스터를 복원하려면 연결이 끊긴 노드를 다시 온라인 상태로 만들어 내결함성 노드 수가 혼합 노드 최대 수의 절반 이하가 되도록 해야 합니다.
클러스터를 다시 시작해야 하는 경우, 모든 노드가 중지된 후 총 노드 수의 절반 이상이 동시에 시작되는지 확인하세요.
자주 묻는 질문
클러스터 노드의 IP를 조정하는 방법
컨트롤러의 분산 클러스터 모드가 실행 중일 때 노드의 IP를 수정하려면 다음 단계를 따라야 합니다:
(1)상태를 수정할 노드가 연결된 경우:
a. 지정된 노드의 네트워크 카드 IP를 수정하여 old 와 new IP를 동시에 바인딩하도록 합니다.
b. 모든 노드의 클러스터 인터페이스에서 지정된 노드의 IP를 새 IP로 변경합니다.
c. 지정된 노드에서 sudo tpeap stop 명령을 실행하여 노드를 종료한 다음, 새 IP만 바인딩하도록 네트워크 카드를 수정합니다.
d. sudo tpeap start 를 실행하여 노드를 시작합니다.
(2) 수정할 노드 상태가 연결이 끊긴 경우:
a. 지정된 노드의 네트워크 카드 IP를 수정하여 이전 IP와 새 IP를 모두 바인딩하도록 합니다.
b. 온라인 노드의 클러스터 인터페이스에서 지정된 노드의 IP를 새 IP로 변경하고 새 속성 파일을 내보냅니다.
c. 속성 파일을 수정할 노드로 전송합니다.
d. 지정된 노드에서 이 속성 파일을 사용하여 초기화 명령 sudo omadacluster -config<propertiesPath>-node<nodeName>init 를 실행하여 초기화합니다.
노드를 추가하거나 삭제하는 방법
(1)메모 추가
1단계. 새 노드에서 핸들 수를 조정하고 동일한 버전의 컨트롤러를 설치합니다.
2단계. 기존 노드에 새 노드를 설정합니다. 전체 보기 > 설정 > 클러스터 인터페이스로 이동하여 노드 추가를 클릭합니다. 새 노드의 이름과 IP/호스트명을 입력한 다음 적용을 클릭합니다.
확인을 클릭합니다.
3단계. 초기 속성 내보내기를 클릭한 다음 파일을 다운로드하여 새로 추가된 노드에 있는 컨트롤러의 /opt/tplink/EAPController/data/cluster 경로에 복사합니다.
4단계. 새 노드에서 터미널을 열고 초기화 명령을 실행합니다.
sudo omadacluster -config
/opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties -nodeName init
5단계. 노드를 성공적으로 추가한 후 클러스터 페이지로 이동하여 확인합니다. 분산 클러스터 모드가 제대로 실행 중이면 모든 노드를 통해 컨트롤러에 액세스할 수 있습니다.
(2) 노드 삭제
1단계. 삭제할 노드로 이동하여 해당 컨트롤러를 중지합니다.
2단계. 모든 노드에서 노드의 상태를 확인합니다.
3단계. 노드에 삭제 아이콘이 나타나면 삭제 버튼을 클릭한 다음 적용을 클릭합니다.
4단계. 모든 노드에서 삭제되는 노드를 확인할 수 있습니다.
클러스터 모드에서 컨트롤러를 업그레이드하는 방법.
분산 클러스터 모드는 오프라인 업그레이드를 지원합니다. 컨트롤러를 업그레이드하기 전에 컨트롤러의 실행을 중지하고 각 노드에 업그레이드할 컨트롤러를 직접 설치할 수 있습니다. 이후 버전에서는 온라인 업그레이드를 지원할 예정입니다.
분산 클러스터 모드가 실행되지 않는 경우 어떻게 문제를 해결하나요?
- 핸들 번호 수정이 성공했는지 확인합니다. "ulimit -a"를 사용하여 핸들 번호가 성공적으로 수정되었는지 확인할 수 있습니다.
- 사용된 컨트롤러 버전, Mongodb 버전, Java 버전을 포함하여 각 노드의 매개변수가 일관성이 있는지 확인합니다.
- 장기간 동안 노드 연결이 실패할 경우 웹을 통해 기존 컨트롤러를 분산 클러스터 모드로 구성할 때 반드시 기본 노드부터 시작하여 노드를 초기화해야 합니다.
노드 상태가 연결이 끊어진 경우 문제 해결 방법
전역 보기 > 설정 > 시스템 설정 > 각 노드별 현재 노드 시스템 시간의 시간 차이가 20초 이내인지 확인하시기 바랍니다.
기능 및 구성에 대한 더 많은 정보를 확인하려면 다운로드 센터에서 제품 설명서를 다운로드하세요.