사용자 및 커널 공간의 Zevenet Load Balancer Enterprise Edition 아키텍처 내부

게시자 Zevenet | 2 년 2020 월 XNUMX 일

WeGO 소개

다음 기사의 목적은 시스템 관리자 및 소프트웨어 개발자를 대상으로 Zevenet ADC 소프트웨어의 작동 방식에 대해 더 알고 자하는 Zevenet 소프트웨어 내부의 아키텍처 개요를 제공하는 것입니다. 이 모든 정보는 프로덕션 시스템 구성 또는 문제 해결 목적으로도 사용될 수 있습니다.

제 베넷 아키텍처

Zevenet은 사용자와 커널 공간 모두에서 프로세스를 관리하여 성능을 극대화하지만 유연성이 가장 뛰어나며로드 밸런싱, 보안 및 고가용 성과 같은 애플리케이션 제공 컨트롤러에 위임 된 모든 작업을 수행 할 수 있습니다.

아래 다이어그램은 Zevenet 시스템을 내부적으로 구성하는 다양한 구성 요소를 전체적으로 보여줍니다. 더 단순하고 명확한 시야를 제공하기 위해 중요도가 떨어지는 추가 부분이 누락되었습니다.

다음 섹션에서는 다양한 부분과 상호 연결 방식에 대해 설명합니다.

사용자 공간의 Zevenet로드 밸런서

사용자 공간에서 사용되는 서브 시스템은 다음과 같습니다.

웹 GUI : 사용자가 전체 시스템의 구성 및 관리를 관리하는 데 사용하는 웹 그래픽 사용자 인터페이스는로드 밸런서에 수행 된 모든 작업에 대해 Zevenet API를 사용하는 HTTPS 웹 서버에서 관리합니다.

제 베넷 API : 또는 Zevenet 응용 프로그램 인터페이스 RESTJSON HTTPS를 통해 소비되는 인터페이스는 다음과 같은 사용자 관점에서 다른 사용자 인터페이스에 의해 사용됩니다. 웹 GUI 인터페이스 또는 ZCLI (Zevenet 명령 행 인터페이스). 이 도구는 RBAC 서브 시스템에 대한 조치를 점검하고 허용되는 경우 Zevenet Appliance에서 조치를 수행합니다. API는 다이어그램에 설명 된 다른 사용자 공간 서브 시스템을 연결하고 관리 할 수 ​​있습니다.

RBAC : 역할 기반 액세스 제어는 사용자, 그룹 및 역할에 대해 정의 된 액세스 및 제어 메커니즘입니다. 이 모듈은 그룹, 사용자 및 역할 간의 높은 수준의 구성으로 사용자가 수행 할 수있는 작업을 정의합니다. 사용자 역할에 따라 웹보기를로드 할 수있는 웹 GUI 인터페이스에 완전히 통합되어 있습니다. 또한이 하위 시스템은 API 또는 다른 도구를 사용하는 API.

LSLB – HTTP (S) : HTTP (S) 프로파일로 구성된 LSLB 모듈 (Local Service Load Balancer)은 처리량이 많은 응용 프로그램을 매우 효율적으로 관리 할 수있는 Zproxy라는 역방향 프록시에 의해 사용자 공간에서 실행됩니다. 이 하위 시스템은 API로 구성되며 IPDS 하위 시스템 (블랙리스트, DoS 규칙, RBL 및 WAF 규칙 세트 사용)으로 보호 할 수 있습니다.

GSLB : GSLB 프로파일 인스턴스로 구현 된 GSLB 모듈 (Global Service Load Balancer)은로드 밸런싱 기능이있는 고급 DNS 네임 서버로 작동 할 수있는 Gdnsd라는 DNS 서버 프로세스에 의해 사용자 공간에서 실행됩니다. 이 하위 시스템은 API로 구성되며 IPDS 하위 시스템 (블랙리스트, DoS 및 RBL 사용)으로 보호 할 수 있습니다.

건강 검진 : 이 서브 시스템은 API로 구성되며 모든로드 밸런서 모듈 (LSLB, GSLB 및 DSLB)에서 백엔드의 상태를 확인하는 데 사용됩니다. 단순 및 고급 검사는 백엔드에 대해 실행 된 다음 검사가 실패하면 지정된 팜에 대한 백엔드가 다운으로 표시되고 검사가 백엔드에 대해 다시 작동 할 때까지 더 이상 트래픽이 전달되지 않습니다. Farm Guardian은 이러한 검사를 담당하며 높은 수준의 유연성과 구성 가능성으로 설계되었습니다.

구성 파일 시스템 : 이 디렉토리는 구성 저장 목적으로 사용되며, 해당 서비스가 사용 가능한 경우이 디렉토리의 모든 변경 사항이 클러스터에 복제됩니다.

Nftlb : 이 사용자 공간 프로세스는 API 서브 시스템에 의해 관리되며 다음 두 가지 주요 목적으로 사용됩니다. LSLB – L4XNAT 관리 및 구성 IPDS 서브 시스템 모듈.

커널 공간의 Zevenet로드 밸런서

커널 공간에서 사용되는 서브 시스템은 다음과 같습니다.

넷 필터 시스템 LSLB L4xNAT : Netfilter 서브 시스템은로드 균형 조정을 위해 Nftlb에서 사용됩니다. Netfilter 규칙은이 Nftlb 프로세스에 의해 커널에로드됩니다. 고성능 L4로드 밸런서 구축. Nftlb는 트래픽 패킷을 최대한 최적으로 관리 할 수있는 효율적인 방법으로 커널에로드 밸런서 규칙을로드합니다. 또한 Nftlb는 침입 방지 및 보호 (블랙리스트, RBL 및 DoS)에 대한 Netfilter 규칙을로드합니다.

IPDS 블랙리스트 : 이 하위 시스템은 Netfilter 시스템에 통합되어 있으며 Nftlb에서 관리합니다. 로드 밸런서 규칙 전에 구성된 규칙 그룹으로 구성되어 있습니다. 주어진 출발지 IP에 대한 연결 끊기. 내부적으로 범주, 국가, 공격자 유형 등으로 정렬되고 매일 업데이트되는 일련의 규칙을 만듭니다.

IPDS RBL:이 서브 시스템은 이전 서브 시스템과 마찬가지로 Netfilter에도 통합되어 Nftlb에 의해 관리됩니다. 연결 설정 전에 원본 IP가 캡처되고 클라이언트 IP의 유효성이 검증됩니다. 외부 DNS 서비스. IP가 확인되면 IP가 악성으로 표시되고 연결이 끊어집니다.

IPDS DoS : Netfilter에 통합되고 Nftlb에 의해 관리되는 두 개의 이전 모듈과 동일한 구성 시스템. 패킷이 패킷의 일부인지 확인하는로드 밸런싱 규칙 이전에 구성된 규칙 세트입니다. 서비스 거부 공격. 일부 규칙은 패킷 흐름에 적용되어 공격을 수행하기 전에 차단합니다.

연결 추적 시스템 : 이 시스템은 Netfilter 서브 시스템이 연결 관리 목적, 네트워크 변환 및 통계 모듈뿐만 아니라 건강 체크 백엔드에서 문제 발생시 연결 작업을 강제 실행하기 위해 하위 시스템을 검색합니다. 연결 추적 시스템은 클러스터링 서비스 연결 상태를 클러스터의 두 번째 노드로 전달하기 위해 클러스터 마스터 노드가 실패한 경우 두 번째 노드는 이전 마스터와 동일한 연결 상태로 트래픽을 관리 할 수 ​​있습니다.

라우팅 시스템 및 DSLB : 이 서브 시스템은 API에 의해 관리되며 커널 공간에서 구성됩니다. 라우팅 서브 시스템은 아이프로트2 여러 라우팅 테이블을 순서대로 관리 할 수 ​​있습니다. 정적 라우팅을위한 복잡한 규칙 세트를 유지하지 않기 위해또한 iproute2 덕분에 DSLB (Datalink Service Load Balancer) 모듈이 제공됩니다. 여러 게이트웨이로 업 링크의로드 밸런싱.

이 기사를 쓰는 시점에서 Zevenet 6은 현재 생산 중이므로 이러한 하위 시스템은 향후 버전에서 더 나은 성능 또는 더 많은 기능을 제공하도록 진화 할 수 있습니다.

추가 문서

Zevenet zproxy 벤치 마크, LSLB -HTTP (S) 프로파일
Zevenet nftlb 벤치 마크, LSLB – L4xNAT 프로필

공유 :

GNU Free Documentation License의 조건에 따른 문서.

이 글이 도움 되었나요?

관련 기사