(SDN에 대 한 Software Load Balancer SLB는 무엇입니까 ) ?

적용 대상: Azure Stack HCI, 버전 20H2; Windows Server 2019; Windows Server 2016

SDN (소프트웨어 정의 네트워킹 )을 배포 하는 csp (클라우드 서비스 공급자) 및 기업은 SLB (software Load Balancer)를 사용 하 여 가상 네트워크 리소스 간에 테 넌 트 및 테 넌 트 고객 네트워크 트래픽을 균등 하 게 배포할 수 있습니다. SLB는 여러 서버에서 동일한 워크로드를 호스팅할 수 있도록 하여 높은 가용성과 확장성을 제공합니다.

소프트웨어 Load Balancer에는 다음과 같은 기능이 포함 되어 있습니다.

  • 북쪽/남부 및 동/서 TCP/UDP 트래픽에 대 한 계층 4 (L4) 부하 분산 서비스입니다.

  • 공용 네트워크 및 내부 네트워크 트래픽 부하 분산.

  • Hyper-v 네트워크 가상화를 사용 하 여 만든 가상 네트워크 및 Vlan (virtual Local Area Network)에서 Dip (동적 IP 주소)를 지원 합니다.

  • 상태 프로브 지원 합니다.

  • 멀티플렉서 및 호스트 에이전트에 대 한 확장 기능 및 강화 기능을 포함 하 여 클라우드 규모를 사용할 준비가 되었습니다.

  • RAS 게이트웨이, 데이터 센터 방화벽 및 경로 리플렉터와 같은 SDN 기술과 원활 하 게 통합 하 여 다중 테 넌 트 통합에 지

자세한 내용은이 항목의 소프트웨어 Load Balancer 기능 을 참조 하세요.

참고

Vlan에 대 한 배포할지에는 네트워크 컨트롤러에서 지원 되지 않습니다. 그러나 데이터 센터 인프라 및 고밀도 웹 서버와 같은 서비스 공급자 관리 작업에 대해 SLB와 함께 Vlan을 사용할 수 있습니다.

소프트웨어 Load Balancer를 사용 하 여 다른 VM 워크 로드에 사용 하는 것과 동일한 Hyper-v 계산 서버에서 SLB Vm (가상 머신)을 사용 하 여 부하 분산 기능을 확장할 수 있습니다. 따라서 소프트웨어 부하 분산은 CSP 작업에 필요한 부하 분산 끝점의 신속한 생성 및 삭제를 지원 합니다. 또한, 소프트웨어 부하 분산은 클러스터당 수십 기가바이트를 지원 하 고, 간단한 프로 비전 모델을 제공 하며, 규모를 확장 하는 것이 쉽습니다.

소프트웨어 Load Balancer 작동 방법

소프트웨어 Load Balancer 데이터 센터에 있는 리소스의 클라우드 서비스 집합에 속하는 Dip에 Vip (가상 IP 주소)를 매핑하여 작동 합니다.

Vip는 분산 Vm 부하의 풀에 대 한 공용 액세스를 제공 하는 단일 IP 주소입니다. 예를 들어, Vip는 테 넌 트 및 테 넌 트 고객이 클라우드 데이터 센터의 테 넌 트 리소스에 연결할 수 있도록 인터넷에 노출 되는 IP 주소입니다.

Dip는 멤버 VIP 뒤 부하 분산 된 풀의 Vm의 IP 주소입니다. Dip는 테 넌 트 리소스를 클라우드 인프라 내에서 할당 됩니다.

Vip에는 SLB 멀티플렉서 (MUX)에 있습니다. MUX는 하나 이상의 Vm으로 구성 됩니다. 네트워크 컨트롤러는 각 VIP와 각 MUX 및 각 MUX 사용 하 여 프로토콜 BGP (Border Gateway)를 보급 한/32로 실제 네트워크에서 라우터를 각 VIP 제공 경로입니다. BGP에 실제 네트워크 라우터를 허용합니다.

  • MUXes가 계층 3 네트워크의 다른 서브넷에 있는 경우에도 각 MUX에서 VIP를 사용할 수 있음을 알아봅니다.

  • 각 VIP에 대 한 로드를 같은 비용 다중 경로 (ECMP) 라우팅을 사용 하 여 모든 사용 가능한 MUXes 분산 합니다.

  • 자동으로 MUX 실패 또는 노드 제거를 검색 및 실패 한 MUX로 트래픽 전송을 중지 합니다.

  • 정상 MUXes 실패 했거나 제거 MUX에서 로드를 분산 합니다.

인터넷에서 공용 트래픽이 도착 하면 SLB MUX는 VIP를 대상으로 포함 하는 트래픽을 검사 하 고 개별 DIP에 도착 하도록 트래픽을 매핑하고 다시 작성 합니다. 인바운드 네트워크 트래픽의 경우이 트랜잭션은 MUX Vm과 대상 DIP가 있는 Hyper-v 호스트 간에 분할 되는 2 단계 프로세스에서 수행 됩니다.

  1. 부하 분산-MUX 사용 하 여 VIP는 DIP를 선택 하는 패킷을 캡슐화 하 고 DIP 있는 Hyper-v 호스트에는 트래픽을 전달 합니다.

  2. NAT (Network Address Translation)-Hyper-v 호스트는 패킷에서 캡슐화를 제거 하 고, VIP를 DIP로 변환 하 고, 포트를 다시 매핑하여, 패킷을 DIP VM에 전달 합니다.

MUX는 네트워크 컨트롤러를 사용 하 여 정의한 부하 분산 정책 때문에 Vip를 올바른 Dip에 매핑하는 방법을 알고 있습니다. 이러한 규칙에는 프로토콜, 프런트 엔드 포트, 백 엔드 포트 및 배포 알고리즘 (5, 3 또는 2 개 튜플)이 포함 됩니다.

Hyper-v 호스트에서 NAT를 수행 하기 때문에 테 넌 트 Vm이 인터넷 또는 원격 테 넌 트 위치에 응답 하 여 아웃 바운드 네트워크 트래픽을 다시 보낼 때 트래픽은 MUX를 우회 하 고 Hyper-v 호스트에서에 지 라우터로 직접 이동 합니다. 이 MUX 바이패스 프로세스에 직접 서버 반환 DSR () 호출 됩니다.

및 인바운드 네트워크 트래픽을 구현이 SLB MUX 초기 네트워크 트래픽 흐름이 설정 되 면 완전히 무시 합니다.

다음 그림에서 클라이언트 컴퓨터는 회사 SharePoint 사이트의 IP 주소에 대 한 DNS 쿼리를 수행 합니다 .이 경우에는 가상 회사인 Contoso가 지정 됩니다. 다음 프로세스가 발생 합니다.

  1. DNS 서버는 클라이언트에 107.105.47.60 VIP를 반환합니다.

  2. 클라이언트는 VIP에 HTTP 요청을 보냅니다.

  3. 실제 네트워크에 여러 경로가 모든 MUX에 있는 VIP 도달 하기 위해 사용할 수 있습니다. 그 과정에서 각 라우터는 MUX에 도착 하면 요청 될 때까지 경로의 다음 세그먼트를 선택 하 ECMP를 사용 합니다.

  4. 요청을 받는 MUX 구성 된 정책을 검사 하 고 두 Dip를 사용할 수 10.10.10.5 및 10.10.20.5, 107.105.47.60 VIP로 요청을 처리 하는 가상 네트워크에 있는지 확인

  5. MUX는 DIP 10.10.10.5를 선택 하 고 VXLAN를 사용 하 여 패킷을 캡슐화 하므로 호스트의 실제 네트워크 주소를 사용 하 여 DIP를 포함 하는 호스트로 보낼 수 있습니다.

  6. 호스트는 캡슐화 된 패킷을 수신 하 고 검사 합니다. 이제 대상이 VIP가 아닌 DIP 10.10.10.5 된 후에는 캡슐화를 제거 하 고 패킷을 다시 작성 한 후에는 해당 트래픽을 DIP VM으로 보냅니다.

  7. 요청은 서버 팜 2의 Contoso SharePoint 사이트에 도달 합니다. 서버 응답을 생성 하 고 원본으로는 자체 IP 주소를 사용 하 여 클라이언트에 보냅니다.

  8. 호스트는 클라이언트에서 대상 이제 VIP에 원래 요청을 만든 기억 하는 가상 스위치에서 나가는 패킷을 차단 합니다. 호스트는 클라이언트에 DIP 주소가 표시 되지 않도록 패킷의 원본을 VIP로 다시 작성 합니다.

  9. 호스트는 해당 표준 라우팅 테이블을 사용 하 여 클라이언트에 패킷을 전달 하는 실제 네트워크에 대 한 기본 게이트웨이로 패킷을 직접 전달 합니다. 그러면 결국 응답이 수신 됩니다.

소프트웨어 부하 분산 프로세스

분산 데이터 센터 내부 트래픽의 부하를

서로 다른 서버에서 실행 되 고 동일한 가상 네트워크의 구성원 인 테 넌 트 리소스 사이에서 데이터 센터의 내부 네트워크 트래픽 부하를 분산 하는 경우 Vm이 연결 된 Hyper-v 가상 스위치는 NAT를 수행 합니다.

내부 트래픽 부하 분산을 사용 하는 경우 첫 번째 요청은 적절 한 DIP를 선택 하는 MUX를 통해 전송 되 고 처리 된 후 DIP로 트래픽을 라우팅합니다. 해당 지점에서 설정 된 트래픽 흐름이 MUX를 무시 하 고 VM VM에서 직접 이동 됩니다.

상태 프로브

소프트웨어 Load Balancer에는 다음을 포함 하 여 네트워크 인프라의 상태를 확인 하는 상태 프로브가 포함 됩니다.

  • 포트에 TCP 프로브

  • HTTP 검색 포트 및 URL을 실행

기존 부하 분산 장치 어플라이언스 프로브 기기에서 시작 하 고 DIP로 네트워크를 통해 이동 있는 달리 SLB 프로브 DIP의 위치를 더욱 호스트 간에 작업을 배포 하 고 DIP SLB 호스트 에이전트에서 직접 이동 하는 호스트에서 시작 됩니다.

소프트웨어 Load Balancer 인프라

소프트웨어 Load Balancer를 구성 하려면 먼저 네트워크 컨트롤러와 하나 이상의 SLB MUX Vm을 배포 해야 합니다.

또한 SDN 사용 Hyper-v 가상 스위치를 사용 하 여 Azure Stack HCI 호스트를 구성 하 고 SLB 호스트 에이전트가 실행 되 고 있는지 확인 해야 합니다. 호스트를 제공 하는 라우터는 ECMP 라우팅 및 Border Gateway Protocol (BGP)를 지원 해야 하며, SLB MUXes에서 BGP 피어 링 요청을 수락 하도록 구성 되어야 합니다.

다음 그림에서는 SLB 인프라의 개요를 제공 합니다.

소프트웨어 Load Balancer 인프라

다음 섹션에서는 소프트웨어 Load Balancer 인프라의 이러한 요소에 대 한 자세한 정보를 제공 합니다.

네트워크 컨트롤러

네트워크 컨트롤러가 SLB 관리자를 호스팅하고 소프트웨어 Load Balancer에 대해 다음 작업을 수행 합니다.

  • Windows 관리 센터, System Center, Windows PowerShell 또는 다른 네트워크 관리 응용 프로그램에서 Northbound API를 통해 제공 되는 SLB 명령을 처리 합니다.

  • Azure Stack HCI 호스트 및 SLB MUXes에 배포 하기 위한 정책을 계산 합니다.

  • 소프트웨어 Load Balancer 인프라의 상태를 제공 합니다.

Windows 관리 센터 또는 Windows PowerShell을 사용 하 여 네트워크 컨트롤러 및 기타 SLB 인프라를 설치 하 고 구성할 수 있습니다.

SLB MUX

SLB MUX 인바운드 네트워크 트래픽을 처리 하 고 Dip Vip 매핑됩니다 다음 올바른 DIP로 트래픽을 전달 합니다. 또한 각 MUX edge 라우터를 VIP 경로 게시 하려면 BGP를 사용 합니다. BGP Keep Alive은 MUX가 실패할 때 MUXes에 게 알리고,이로 인해 MUX 오류가 발생할 경우 활성 MUXes 부하를 재배포할 수 있습니다. 이는 기본적으로 부하 분산 장치에 대 한 부하 분산을 제공 합니다.

SLB 호스트 에이전트

소프트웨어 Load Balancer 배포 하는 경우 Windows 관리 센터, System Center, Windows PowerShell 또는 다른 관리 응용 프로그램을 사용 하 여 모든 호스트 서버에 SLB 호스트 에이전트를 배포 해야 합니다.

SLB 호스트 에이전트 SLB 정책 업데이트 네트워크 컨트롤러에서 수신 대기합니다. 또한 호스트 에이전트는 로컬 컴퓨터에 구성 된 SDN 사용 Hyper-v 가상 스위치에 대 한 SLB를 위한 규칙을 프로그램 합니다.

SDN 사용 Hyper-v 가상 스위치

가상 스위치가 SLB와 호환 되려면 가상 스위치에서 VFP (가상 필터링 플랫폼) 확장을 사용 하도록 설정 해야 합니다. 이 작업은 SDN 배포 PowerShell 스크립트, Windows 관리 센터 배포 마법사 및 SCVMM (System Center Virtual Machine Manager) 배포에 의해 자동으로 수행 됩니다.

VFP 가상 스위치에서 사용 하도록 설정에 대 한 내용은 Windows PowerShell 명령 참조 Get-vmsystemswitchextension사용 VMSwitchExtension합니다.

SDN 사용 Hyper-v 가상 스위치는 SLB에 대해 다음 작업을 수행 합니다.

  • SLB에 대 한 데이터 경로 처리합니다.

  • 가 MUX에서 인바운드 네트워크 트래픽을 받습니다.

  • DSR를 사용 하 여 라우터를 보내는 아웃 바운드 네트워크 트래픽의 MUX를 무시 합니다.

BGP 라우터

BGP 라우터는 소프트웨어 Load Balancer에 대해 다음과 같은 작업을 수행 합니다.

  • ECMP를 사용 하 여 MUX로의 인바운드 트래픽을 경로입니다.

  • 아웃 바운드 네트워크 트래픽에 대 한 호스트에서 제공한 경로 사용 합니다.

  • SLB MUX에서 Vip에 대 한 경로 업데이트를 수신합니다.

  • 활성 상태로 유지 실패 하면 SLB MUXes SLB 회전에서 제거 합니다.

소프트웨어 Load Balancer 기능

다음 섹션에서는 소프트웨어 Load Balancer의 기능 중 일부에 대해 설명 합니다.

핵심 기능

  • SLB는 북쪽/남부 및 동/서 TCP/UDP 트래픽에 대해 계층 4 부하 분산 서비스를 제공 합니다.

  • Hyper-v 네트워크 가상화 기반 네트워크에서 SLB를 사용할 수 있습니다.

  • SDN 사용 Hyper-v 가상 스위치에 연결 된 DIP Vm에 대 한 VLAN 기반 네트워크에서 SLB를 사용할 수 있습니다.

  • 한 SLB 인스턴스는 여러 테 넌 트를 처리할 수 있습니다.

  • SLB 및 DIP는 DSR에서 구현 된 대로 확장 가능 하 고 대기 시간이 짧은 반환 경로를 지원 합니다.

  • 또한 스위치 포함 된 팀 (SET) 또는 단일 루트 입출력 가상화 (SR-IOV)를 사용 하는 경우 SLB 함수를 사용 합니다.

  • SLB에는 IPv6 (인터넷 프로토콜 버전 6) 및 IPv4 (버전 4) 지원이 포함 되어 있습니다.

  • 사이트 간 게이트웨이 시나리오의 경우 SLB는 모든 사이트 간 연결에서 단일 공용 IP를 활용할 수 있도록 NAT 기능을 제공 합니다.

확장 및 성능

  • MUXes 및 호스트 에이전트의 규모 확장 및 확장 기능을 포함 하 여 클라우드 규모를 사용할 준비가 되었습니다.

  • 하나의 활성 SLB 관리자 네트워크 컨트롤러 모듈에서 8 개의 MUX 인스턴스를 지원할 수 있습니다.

고가용성

  • 액티브/액티브 구성에서는 SLB를 세 개 이상의 노드에 배포할 수 있습니다.

  • MUXes는 추가 하 고 SLB 서비스에 영향을 주지 않고 MUX 풀에서 제거할 수 있습니다. 그러면 개별 MUXes 패치가 적용 될 때 SLB 가용성이 유지 됩니다.

  • 개별 MUX 인스턴스의 작동 시간은 99%입니다.

  • 상태 모니터링 데이터는 관리 엔터티에 사용할 수 있습니다.

다음 단계

관련 정보는 다음 항목을 참조 하세요.