클러스터 구성 RELIANOID 커뮤니티 에디션 v7

카테고리 보기

클러스터 구성 RELIANOID 커뮤니티 에디션 v7

중요 사항 : noid-cluster-notify 다음과 같이 찾을 수도 있습니다. zeninotify. 참조하시기 바랍니다: https://www.relianoid.com/resources/knowledge-base/enterprise-edition-v8-administration-guide/whats-new-in-relianoid-ee-v8/

RELIANOID 로드 밸런서 클러스터 커뮤니티 에디션? #

고가용성 서비스를 제공합니다 RELIANOID 로드 밸런서 커뮤니티 에디션은 상태 비저장 클러스터로, 기본 커뮤니티 에디션 버전에 자동으로 포함됩니다. 이 서비스는 노드 간에 구성 파일을 효율적으로 복제하고, VRRP 프로토콜을 사용하여 노드 상태를 모니터링하며, 이 모든 것이 직관적인 설계를 통해 이루어집니다. 더욱 발전되고 기능이 풍부한 상태 저장 클러스터 서비스를 원하는 경우, Enterprise Edition 사용할 수 있습니다.

다음 단계에서는 설치 및 구성 프로세스를 간략하게 설명합니다. RELIANOID 로드 밸런서에 고가용성이 필수적인 경우 클러스터를 사용합니다.

개념 #

클러스터 노드 #

클러스터 노드 는 클러스터 내의 단일 컴퓨팅 장치입니다. 클러스터는 서로 연결된 컴퓨터 또는 서버 그룹으로, 마치 단일 시스템처럼 작업을 수행하기 위해 함께 작동합니다. 클러스터의 각 노드는 일반적으로 자체 처리 능력, 메모리 및 저장 장치를 갖추고 있으며, 네트워크를 통해 서로 통신하여 리소스를 공유하고 활동을 조정합니다. 클러스터 노드는 클러스터 서비스 내에서 작동하도록 구성된 로드 밸런서 인스턴스로 구성됩니다.

플로팅 인터페이스 #

플로팅 IP 주소는 클러스터 내의 한 노드에서 다른 노드로 신속하게 재할당될 수 있는 IP 주소입니다. 이는 여러 서버 또는 노드에서 동일한 서비스를 실행하는 고가용성 환경에서 흔히 사용되며, 한 노드에 장애가 발생하면 IP 주소가 다른 노드로 "플로팅"되어 서비스가 중단 없이 계속될 수 있도록 합니다.

심장의 고동 #

하트비트 는 클러스터 내의 노드들이 서로의 상태와 건전성을 알리는 데 사용하는 메커니즘입니다. 이 하트비트 신호는 노드가 정상적으로 작동하고 있음을 나타냅니다. 노드에서 하트비트가 감지되지 않으면 해당 노드에 장애 또는 문제가 발생했을 가능성이 있습니다.

동기화 #

구성 동기화 는 클러스터 내 모든 노드의 구성 설정이 일관되고 최신 상태인지 확인하는 프로세스를 의미합니다. 이는 특히 여러 노드가 서비스 또는 애플리케이션 제공에 관여하는 경우 클러스터의 무결성과 정상적인 기능을 유지하는 데 필수적입니다.

장애 조치 #

페일오버는 클러스터 내에서 장애가 발생했거나 사용할 수 없는 노드의 워크로드, 서비스 또는 리소스를 자동으로 재라우팅하거나 리디렉션하는 프로세스를 의미합니다.

클러스터 설정 #

요구조건 니즈 #

시작하려면 두 개의 인스턴스를 설치하세요. RELIANOID CE는 두 가지가 동일한 버전을 실행하고 있는지 확인합니다.

다음으로, 두 노드 모두에서 NTP 서비스가 올바르게 구성되었는지, 그리고 로드 밸런서에서 해당 노드에 접근할 수 있는지 확인하십시오. 시스템 시간 동기화는 VRRP 프로토콜이 제대로 작동하는 데 필수적입니다.

또한 동기화를 자동화하려면 로드 밸런서 간에 암호 없이 SSH 로그인을 구성하는 것이 필수적입니다. 예를 들어 ssh-copy-id 명령어를 사용하여 원격 액세스 키를 설정하십시오.

root@noid-ce-01:~# ssh-keygen -t rsa # 암호 없이 Enter만 누르세요 root@noid-ce-01:~# ssh-copy-id root@noid-ce-02

그런 다음 보조 노드에서:

root@noid-ce-02:~# ssh-keygen -t rsa # 암호 없이 Enter만 누르세요 root@noid-ce-02:~# ssh-copy-id root@noid-ce-01

구성 #

클러스터 구성 파일을 설정하려면 먼저 템플릿 /usr/local/relianoid/app/ucarp/etc/cluster.conf.example 을 /usr/local/relianoid/app/ucarp/etc/cluster.conf 로 복사하십시오.

cp /usr/local/relianoid/app/ucarp/etc/cluster.conf.example /usr/local/relianoid/app/ucarp/etc/cluster.conf

다음으로 /usr/local/relianoid/app/ucarp/etc/cluster.conf 에 있는 구성 파일을 편집하십시오 . 필수 매개변수는 아래에 설명되어 있습니다.

#local_ip 및 Remote_ip가 구성된 클러스터에 사용되는 인터페이스 $interface="eth0"; #모니터링할 로컬 IP, 즉 192.168.0.101 $local_ip="192.168.101.242"; #모니터링할 원격 IP, 즉 192.168.0.102 $remote_ip="192.168.101.243"; #vrrp 프로토콜 통신에 사용되는 비밀번호 $password="secret"; # 네트워크의 vrrp 클러스터에 대한 고유 값 $cluster_id="1"; #클러스터에서 가상 IP를 사용합니다. 이 IP는 항상 마스터 노드 $cluster_ip="192.168.101.244"에서 실행됩니다. # 클러스터에 사용된 nic이 eth0과 다른 경우 다음 줄에서 제외 conf 파일을 변경하십시오.
######## $exclude="--exclude if_eth0_conf";

가상 인터페이스만 복제된다는 점에 유의하십시오 . 로드 밸런싱 서비스에 여러 NIC 또는 VLAN이 사용되는 경우 클러스터 구성 파일에서 해당 NIC 또는 VLAN을 제외해야 합니다. 예를 들어, eth0을 클러스터 용도로, vlan100 ( eth0.100 )을 로드 밸런싱 용도로 지정하는 경우 구성을 다음과 같이 조정해야 합니다.

$exclude="--exclude if_eth0_conf --exclude if_eth0.100_conf";

다음 사항을 유의하십시오. RELIANOID CE 클러스터는 루트 사용자에 의해 관리되며 다음을 사용합니다. rsync 를 통해 SSH 마스터 노드의 구성을 백업 노드로 복제합니다. 이를 위해서는 노드 간에 비밀번호 없이 SSH 접속을 설정하는 것이 중요합니다.

지정된 것을 확인하십시오 $cluster_ip 구성되고 하나에서 활성화됨 RELIANOID 가상 로드 밸런서이며, 이는 향후 마스터가 될 것입니다. 이 노드에서 서비스가 시작되면 구성 파일이 $cluster_ip 자동으로 백업 서버로 복제됩니다.

클러스터 노드 시작 및 중지 #

클러스터 서비스를 활성화하려면 다음 단계를 따르세요.

1. 이 단계는 다음에만 필요합니다. RELIANOID Community Edition 7.1 또는 이전 버전: 변수를 설정해야 합니다. $enable_cluster 파일에 /etc/init.d/relianoid-ce-cluster 가치에:

$enable_cluster="true";

2. relianoid-ce-cluster 서비스는 부팅 시 기본적으로 비활성화되어 있습니다. 재부팅 후 자동으로 활성화되도록 relianoid-ce-cluster를 활성화하려면 다음 명령을 실행하십시오 .

[] root@noid-ce-01:~# systemctl relianoid-ce-cluster를 활성화합니다

/usr/local/relianoid/app/ucarp/etc/cluster.conf 구성 파일을 수정하면 클러스터 서비스를 다시 시작해야 한다는 점 에 유의하십시오 . 따라서 구성 매개변수를 최종 확정한 후 다음 단계를 따라 두 노드 모두에서 클러스터를 다시 시작하십시오.

[] root@noid-ce-01:~# /etc/init.d/relianoid-ce-클러스터 중지 [] root@noid-ce-01:~# /etc/init.d/relianoid-ce-클러스터 시작

클러스터 서비스를 시작하면 로드 밸런서의 프롬프트가 수정되어 각 서비스의 클러스터 현재 상태를 표시하는지 확인하는 것이 중요합니다.

마스터 :

[마스터] root@noid-ce-01:~# 

지원:

[백업] root@noid-ce-02:~# 

구성 업데이트 #

클러스터링 서비스를 구성한 후에는 가상 서비스 및 가상/플로팅 IP와 관련된 모든 구성 설정이 클러스터 노드 전체에 자동으로 복제됩니다.

스테이트리스 클러스터에서는 사용자 세션과 연결이 동기화되지 않으므로 스테이트풀 클러스터를 사용해야 하며, 당사의 엔터프라이즈 로드 밸런서 에는 이러한 기능이 포함되어 있습니다.

클러스터 노드 업그레이드 #

클러스터 노드 업그레이드 RELIANOID 로드 밸런서는 클러스터 내의 각 노드를 최신으로 업데이트하는 것을 포함합니다. RELIANOID 로드 밸런서 소프트웨어 또는 펌웨어. 클러스터링 노드 업그레이드 과정에서는 마스터 노드 업그레이드를 진행하기 전에 백업 노드를 업그레이드하는 것이 좋습니다.

클러스터 서비스 로그 및 문제 해결 #

1. 두 클러스터 노드 사이에는 비밀번호 없는 SSH가 필수입니다.
2. 두 클러스터 노드 모두 NTP를 구성해야 합니다.
3. The noid-cluster-알림 서비스는 마스터 노드에서만 작동합니다. noid-cluster-알림 다음 명령을 실행하면 실행됩니다. 마스터 노드에서 다음과 유사한 출력이 표시됩니다.

[마스터] root@noid-ce-01:~# ps -ef | grep noid-cluster-notify root 16912 1 0 03:20 ? 00:00:00 /usr/bin/perl /usr/local/relianoid/bin/noid-cluster-notify.pl

백업 노드에서 해당 명령을 실행할 때 noid-cluster-notify 와 관련된 출력이 없어야 합니다 .

[백업] root@noid-ce-02:~# ps -ef | grep noid-cluster-notify [백업] root@noid-ce-02:~#

4. 로그에 대한 유카프 서비스는 다음에게 전달됩니다. syslog at / var / log / syslog .
5. 에 대한 로그 noid-cluster-알림 복제 서비스가 전송됩니다 /var/log/noid-cluster-notify.log .
6. 클러스터 상태는 프롬프트에서 확인할 수 있으며, 각 명령 실행 후 동적으로 업데이트됩니다. 또한, 클러스터 상태는 구성 파일에도 기록됩니다. /etc/relianoid-ce-cluster.status 이 파일이 없으면 클러스터 서비스가 중지됩니다.
7. 클러스터 노드가 승격되면 MASTER다음 스크립트가 실행됩니다. /usr/local/relianoid/app/ucarp/sbin/relianoid-ce-cluster-start .
8. 클러스터 노드가 승격되면 백업, 다음 스크립트가 실행됩니다. /usr/local/relianoid/app/ucarp/sbin/relianoid-ce-cluster-stop .
9. 클러스터 노드에서 광고 실행이 필요한 경우 다음 스크립트가 실행됩니다. /usr/local/relianoid/app/ucarp/sbin/relianoid-ce-cluster-advertisement .
10. 매개변수를 수정해야 하는 경우 유카프 실행 중에 조정할 수 있습니다. run_cluster() 스크립트의 서브루틴 /etc/init.d/relianoid-ce-cluster .
11. 클러스터 서비스는 다음을 활용합니다. VRRP 구현을 위해서는 스위치에서 멀티캐스트 패킷을 허용해야 합니다.

📄 이 문서를 PDF 형식으로 다운로드하세요 #

    이메일 : *

    BetterDocs 제공