Date: 7월 27, 2022
SIOS LifeKeeper 및 Microsoft Azure용 일반 로드 밸런서 키트 소개
이 블로그에서 다룰 내용은 일반 로드 밸런서 애플리케이션 복구 키트(ARK) Linux용 SIOS Lifekeeper 및 특히 Microsoft Azure에서 구성하는 방법에 대해 설명합니다. 나는 2노드 NFS 클러스터를 사용할 것이고 그들이 제공하는 NFS 내보내기는 궁극적으로 로드 밸런서를 통해 액세스될 것입니다.
SIOS는 Azure에서 실행되는 LifeKeeper 클러스터에서 클라이언트 리디렉션을 용이하게 하기 위해 이 ARK를 만들었습니다.
Azure는 무상 ARP를 지원하지 않으므로 클라이언트는 기존 클러스터 가상 IP 주소에 직접 연결할 수 없습니다. 대신 클라이언트는 로드 밸런서에 연결해야 하며 로드 밸런서는 트래픽을 활성 클러스터 노드로 리디렉션합니다. . Azure는 계층 4(TCP, UDP)에서 작동하는 로드 밸런서 솔루션을 구현하며, 로드 밸런서는 활성 노드를 결정할 수 있는 상태 프로브인 개인 또는 공용 프런트엔드 IP를 갖도록 구성할 수 있습니다. 백엔드 IP 주소(클러스터의 각 노드에 대해) 및 수신/발신 네트워크 트래픽 규칙.
일반적으로 상태 프로브는 애플리케이션의 활성 포트를 모니터링하고 해당 애플리케이션이 활성 상태인 노드를 결정합니다. SIOS 일반 로드 밸런서 ARK는 활성 노드가 사용자 정의 포트에서 수신 대기하도록 구성됩니다. 그런 다음 이 포트는 Azure 부하 분산 장치에서 상태 프로브 포트로 구성됩니다. 이렇게 하면 활성 클러스터 노드가 TCP 상태 확인 프로브에 응답하여 자동 클라이언트 리디렉션을 활성화할 수 있습니다.
Azure의 설치 및 구성은 간단하고 아래에 자세히 설명되어 있습니다.
Azure Portal 내에서 부하 분산을 선택합니다. 로드 밸런서를 만들고 이름과 함께 배포할 리소스 그룹을 선택합니다. 예를 들어 IMA와 함께 로드 밸런서를 사용하는 클러스터 유형과 일치하는 이름을 사용하고 싶습니다. -NFS-LB는 두 IMA-NFS 노드 앞에 위치합니다.
이것이 공개 또는 비공개 LB인지 여부를 결정할 수 있습니다. 이 경우 이 리소스 그룹 내에서만 사용할 수 있도록 NFS 서버를 전면에 내보이도록 프라이빗 로드 밸런서를 구성하고 있습니다.
이름, 리소스 그룹 등을 결정하면 로드 밸런서의 이름, 가상 네트워크, 서브넷 및 IP를 할당하라는 메시지가 표시됩니다. IP 주소는 LifeKeeper에서 가상 IP 주소로 생성할 IP 주소와 동일해야 합니다.
로드 밸런서에 대한 기본 정보가 입력되면 로드 밸런서를 제공하기 위해 백엔드에서 구성할 머신을 정의해야 합니다. 제 경우에는 이 백엔드 풀이 내가 사용하는 두 개의 노드로 구성됩니다. 내 NFS 서버.
로드 밸런싱 규칙이 필요하며 이는 로드 밸런서가 활성 노드로 라우팅할 트래픽을 결정하는 방법입니다. – 여기에 구성된 포트 번호는 로드 밸런서를 지원하도록 일반 애플리케이션을 구성할 때 SPS-L에서 사용됩니다. 이 예에서는 모든 트래픽을 활성 노드로 라우팅하는 "HA 포트"를 사용하고 있습니다. 라우팅할 트래픽을 제한하려면 특정 애플리케이션 포트를 지정할 수 있습니다.
프런트엔드 IP는 로드 밸런서 IP여야 하고 백엔드 풀은 로드 밸런서에서 사용하는 리소스로 구성한 노드여야 합니다. "HA 포트" 버튼이 선택되어 있고 "유동 IP"가 활성화되어 있는지 확인합니다. "TCP 재설정"은 비활성화된 상태로 둘 수 있습니다.
상태 프로브를 생성할 때 SIOS Protection Suite 내에서 일반 애플리케이션을 생성할 때 사용될 포트이므로 여기에서 구성한 포트를 기록해 두십시오. "간격" 및 "비정상 임계값"에 대한 표준 값을 사용할 수 있습니다. 애플리케이션별 요구 사항이 있는 경우 나중에 변경할 수 있습니다.
이제 로드 밸런싱 규칙이 상태 프로브로 완료되어야 합니다. "추가"를 선택하십시오 "추가"를 선택하면 Azure에서 로드 밸런서 배포를 시작합니다. 이 작업은 몇 분 정도 걸릴 수 있으며 완료되면 구성이 SIOS Protection Suite로 이동합니다.
참고: 백엔드 머신이 로드 밸런서 뒤에 구성되면 인터넷 게이트웨이에 액세스할 수 없으므로 시스템 업데이트와 같은 작업이 작동하지 않습니다. 백엔드 리소스 그룹에서 컴퓨터를 제거하여 인터넷 액세스를 다시 허용할 수 있습니다.
SIOS 보호 제품군으로 구성
이 블로그의 경우 SPS-L을 사용하여 보호하도록 3개의 NFS 내보내기를 구성했으며, 3개의 내보내기는 Azure 부하 분산 장치의 프런트 엔드 IP와 동일한 IP를 사용하도록 구성되었습니다. Datakeeper를 사용하여 내보내기에 저장된 데이터를 복제하고 있습니다.
첫 번째 단계는 스크립트를 얻는 것입니다. 가장 간단한 방법은 wget을 사용하는 것이지만 winscp 또는 유사한 도구를 사용하여 전체 패키지를 다운로드하고 rpm을 노드에 직접 업로드할 수도 있습니다. Lifekeeper 클러스터의 모든 노드에 핫픽스를 설치해야 합니다.
전체 복구 키트는 여기에서 얻을 수 있습니다. http://ftp.us.sios.com/pickup/LifeKeeper_Linux_Core_en_9.5.1/patches/Gen-LB-PL-7172-9.5.1 wget으로 부품을 찾을 수 있습니다. wget http://ftp.us.sios.com/pickup/Gen-LB-PL-7172-9.5.1/steeleye-lkHOTFIX-Gen-LB-PL-7172-9.5.1-7154.x86_64.rpm wget http://ftp.us.sios.com/pickup/Gen-LB-PL-7172-9.5.1/steeleye-lkHOTFIX-Gen-LB-PL-7172-9.5.1-7154.x86_64.rpm.md5sum wget http://ftp.us.sios.com/pickup/Gen-LB-PL-7172-9.5.1/Gen-LB-readme.txt 다운로드가 완료되면 FTP 사이트에 기록된 값과 MD5 합계를 확인합니다.
다음과 같이 RPM을 설치하십시오. rpm -ivh steeleye-lkHOTFIX-Gen-LB-PL-7172-9.5.1-7154.x86_64.rpm 다음을 실행하여 설치가 성공했는지 확인하십시오. rpm -qa | grep steeleye-lkHOTFIX-Gen-LB-PL-7172 어떤 이유로 RPM을 제거해야 하는 경우 다음을 실행하여 수행할 수 있습니다. rpm -e steeleye-lkHOTFIX-Gen-LB-PL-7172-9.5.1-7154 .x86_64 다음은 이미 구성한 세 가지 NFS 내보내기를 보여주는 GUI입니다. SIOS Protection Suite 내에서 해야 할 일은 SIOS에서 제공하는 Hotfix 스크립트를 사용하여 Load Balancer를 정의하는 것입니다.
먼저 새 리소스 계층을 만들고 드롭다운에서 일반 응용 프로그램을 선택합니다. /opt/Lifekeeper/SIOS_Hotfixes/Gen-LB-PL-7172/에 있는 restore.pl 스크립트를 정의합니다. /opt/Lifekeeper/SIOS_Hotfixes/Gen-LB-PL-7172/에 있는 remove.pl 스크립트를 정의하십시오. /opt/Lifekeeper/SIOS_Hotfixes/Gen-LB-PL-7172/에 있는 quickCheck 스크립트를 정의하십시오. 로컬 복구 스크립트가 없으므로 이 입력을 지워야 합니다. 애플리케이션 정보를 묻는 메시지가 표시되면 상태 프로브 구성에서 구성한 것과 동일한 포트 번호(예: 54321)를 입력하려고 합니다. 서비스가 생성되면 서비스를 제공하도록 선택할 것입니다.
리소스 태그는 SPS-L GUI에 표시되는 이름입니다. 저는 쉽게 식별할 수 있는 이름을 사용하고 싶습니다.
모든 것이 올바르게 구성된 경우 "END 성공적인 복원"이 표시되면 리소스를 두 노드 중 하나에서 호스팅할 수 있도록 이를 다른 노드로 확장할 수 있습니다.
두 노드로 확장한 후 완료된 로드 밸런서 구성을 보여줍니다.
이 클러스터의 마지막 단계는 세 가지 NFS 내보내기에 대한 하위 종속성을 생성하는 것입니다. 즉, Datakeeper 미러 및 IP로 완료된 모든 NFS 내보내기는 로드 밸런서에 의존합니다. 활성 노드에서 심각한 문제가 발생하면 이러한 모든 리소스가 다른 작동 중인 노드로 장애 조치됩니다.
위의 Lifekeeper GUI에서 완성된 계층 구조. 아래는 NFS 내보내기, IP, 파일 시스템 및 DataKeeper 복제 볼륨을 로드 밸런서 리소스의 자식으로 보여주는 확장된 GUI 보기를 보여줍니다.
이것은 SIOS LifeKeeper를 사용하는 방법의 한 예일 뿐입니다. 하늘빛 간단한 NFS 클러스터를 보호합니다. 보호해야 하는 모든 비즈니스 크리티컬 애플리케이션에도 동일한 개념이 적용됩니다. Azure Load Balancer(내부 또는 외부)가 현재 애플리케이션을 호스팅하고 있는 노드를 결정할 수 있도록 SIOS에서 제공하는 Load Balancer ARK를 활용하기만 하면 됩니다.