SDN용 SLB(소프트웨어 부하 분산 장치)란?

적용 대상: Azure Stack HCI, 버전 23H2 및 22H2; Windows Server 2022, Windows Server 2019, Windows Server 2016

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

소프트웨어 Load Balancer RAS 게이트웨이, 데이터 센터 방화벽경로 리플렉터와 같은 SDN 기술과 통합하여 다중 테넌트 통합 에지를 제공할 수 있습니다.

참고

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

소프트웨어 Load Balancer 사용하여 다른 VM 워크로드에 사용하는 동일한 Hyper-V 컴퓨팅 서버에서 SLB VM(가상 머신)을 사용하여 부하 분산 기능을 스케일 아웃할 수 있습니다. 이 때문에 소프트웨어 Load Balancer CSP 작업에 필요한 대로 부하 분산 엔드포인트의 신속한 생성 및 삭제를 지원합니다. 또한 소프트웨어 Load Balancer 클러스터당 수십 기가바이트를 지원하고, 간단한 프로비저닝 모델을 제공하며, 스케일 아웃 및 스케일 인이 용이합니다.

Windows Admin Center 사용하여 소프트웨어 Load Balancer 정책을 관리하는 방법을 알아보려면 SDN용 소프트웨어 Load Balancer 관리를 참조하세요.

소프트웨어 Load Balancer 무엇을 포함하나요?

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

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

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

  • HYPER-V 네트워크 가상화를 사용하여 만든 VLAN(가상 로컬 영역 네트워크) 및 가상 네트워크에서 DIP(동적 IP 주소)를 지원합니다.

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

  • 멀티플렉서 및 호스트 에이전트에 대한 스케일 아웃 기능 및 스케일 업 기능을 포함하여 클라우드 규모에 대한 준비가 완료되었습니다.

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

소프트웨어 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에 실제 네트워크 라우터를 허용합니다.

  • MUX가 계층 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(네트워크 주소 변환) - Hyper-V 호스트는 패킷에서 캡슐화를 제거하고, VIP를 DIP로 변환하고, 포트를 다시 매핑하고, 패킷을 DIP VM에 전달합니다.

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

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

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

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

  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를 선택한 다음 트래픽을 DIP로 라우팅하는 MUX에 의해 전송되고 처리됩니다. 해당 지점에서 설정 된 트래픽 흐름이 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 라우팅 및 BGP(Border Gateway Protocol)를 지원해야 하며 SLB MUXes의 BGP 피어링 요청을 수락하도록 구성해야 합니다.

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

소프트웨어 Load Balancer 인프라.

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

네트워크 컨트롤러

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

  • Windows Admin Center, System Center, Windows PowerShell 또는 다른 네트워크 관리 애플리케이션에서 Northbound API를 통해 들어오는 SLB 명령을 처리합니다.

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

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

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

SLB MUX

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

SLB 호스트 에이전트

소프트웨어 Load Balancer 배포하는 경우 Windows Admin Center, System Center, Windows PowerShell 또는 다른 관리 애플리케이션을 사용하여 모든 호스트 서버에 SLB 호스트 에이전트를 배포해야 합니다.

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

SDN 사용 Hyper-V 가상 스위치

가상 스위치가 SLB와 호환되려면 가상 스위치에서 VFP(가상 필터링 플랫폼) 확장을 사용하도록 설정해야 합니다. 이 작업은 SDN 배포 PowerShell 스크립트, Windows Admin Center 배포 마법사 및 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 instance 여러 테넌트 처리할 수 있습니다.

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

  • SLB 함수는 SET(Switch Embedded Teaming) 또는 SR-IOV(단일 루트 입력/출력 가상화)를 사용하는 경우에도 작동합니다.

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

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

확장 및 성능

  • MUXe 및 호스트 에이전트에 대한 스케일 아웃 및 스케일 업 기능을 포함하여 클라우드 규모에 대한 준비가 완료되었습니다.

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

고가용성

  • 활성/활성 구성에서 두 개 이상의 노드에 SLB를 배포할 수 있습니다.

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

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

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

다음 단계

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