Product Documentation

Microsoft Azure에 Citrix NetScaler VPX 배포

Oct 19, 2016

NetScaler VPX 가상 장비는 Microsoft Azure Marketplace에서 이미지로 제공됩니다. Microsoft ARM(Azure Resource Manager)의 NetScaler VPX를 통해 고객은 비즈니스 요구 사항에 필요한 Azure 클라우드 컴퓨팅 기능을 활용하고 NetScaler 부하 분산 및 트래픽 관리 기능을 사용할 수 있습니다. Azure Resource Manager에 NetScaler VPX 인스턴스를 독립형 인스턴스로 배포하거나 활성-활성 또는 활성-비활성 모드의 고가용성 쌍으로 배포할 수 있습니다.  

메모

이 문서에서는 ARM(Azure Resource Manager)을 통해 배포된 경우 NetScaler VPX가 작동하는 방식에 대해 설명합니다. Azure 클라우드 서비스를 통해 NetScaler VPX가 작동하는 방식에 대한 자세한 내용은 http://docs.citrix.com/en-us/netscaler/10-5/vpx/deploy-vpx-on-azure.html을 참조하십시오.

이 문서에서는 사용자가 Microsoft Azure 용어와 네트워크 세부 사항을 잘 알고 있다고 가정합니다. Microsoft Azure에 대한 자세한 내용은 http://azure.microsoft.com/ko-kr/documentation/에서 Microsoft Azure 설명서를 참조하십시오.

이 문서에서는 사용자가 NetScaler 장비에 대한 기본 지식을 갖추고 있다고 가정합니다. NetScaler 장비에 대한 자세한 내용은 다음을 참조하십시오.

Azure 클라우드에서 Citrix XenApp 및 XenDesktop을 위한 NetScaler Gateway 구성과 관련된 자세한 내용은 https://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/netscaler-vpx-deployment-with-xendesktop-and-xenapp-on-microsoft-azure.pdf를 참조하십시오.

메모

Citrix XenApp 및 XenDesktop NetScaler Gateway 구성은 Azure Resource Management 모드가 아니라 Azure Service Management 모드에 기반합니다.

제한 사항 및 사용량 지침

NetScaler VPX 부하 분산 솔루션을 ARM에서 실행할 때는 다음 제한 사항이 적용됩니다.
  1. Azure에서 여러 개의 NIC를 사용하여 NetScaler VPX 인스턴스를 프로비전할 수는 있지만 여러 NIC 기능을 사용할 경우 다음 Microsoft 문서에 설명된 몇 가지 제약이 생기게 됩니다. http://azure.microsoft.com/blog/2014/10/30/multiple-vm-nics-and-network-virtual-appliances-in-azure/.

    제한 사항 중 하나는 "VM(가상 컴퓨터) 내부에서 NIC의 순서는 무작위임"으로 설명됩니다. 여러 개의 NIC를 사용하여 NetScaler VPX 인스턴스를 프로비전하면 Azure 프로세스나 Azure 도구 사용에 의해 가상 컴퓨터가 종료되었다가 다시 시작될 경우 해당 인스턴스가 응답하지 않게 될 수 있습니다.

    이 문제를 방지하려면 NetScaler VPX 인스턴스를 Azure 배포에서만 사용할 수 있는 단일 IP 모드로 배포하는 것이 좋습니다. Azure 배포에서 NetScaler VPX의 단일 IP 모드와 트래픽 흐름에 대한 자세한 내용은 Azure에서 NetScaler VPX가 작동하는 방식을 참조하십시오.

  2. Azure 아키텍처는 다음 NetScaler 기능을 지원하지 않습니다.

    클러스터링

    IPv6

    GARP(Gratuitous ARP)

    L2 모드

    태그가 지정된 VLAN

    동적 라우팅

    VMAC(가상 MAC)

    USIP

    GSLB

    CloudBridge Connector

  3. 인트라넷 IP(IIP) 기능은 지원되지 않습니다. 그 이유는 Azure가 이 기능에 필요한 IP 주소 풀을 제공하지 않기 때문입니다. IIP는 VOIP, SIP 또는 서버에서 시작된 연결 배포에서 자주 사용됩니다.
  4. 언제든 NetScaler VPX 가상 컴퓨터를 종료하고 일시적으로 할당을 취소해야 할 수도 있는 경우에는 가상 컴퓨터를 생성할 때 정적 내부 IP 주소를 할당하십시오. 정적 내부 IP 주소를 할당하지 않을 경우 Azure는 가상 컴퓨터가 다시 시작될 때마다 다른 IP 주소를 할당할 수 있으며 이로 인해 해당 가상 컴퓨터에 액세스하지 못하게 될 수 있습니다.
  5. Azure 배포에서는 다음 NetScaler VPX 모델만 지원됩니다. VPX 10, VPX 200 및 VPX 1000. 이러한 가상 장비는 둘 이상의 코어 및 2GB 이상의 메모리를 가진 모든 인스턴스 유형에 배포할 수 있습니다. NetScaler VPX 데이터시트(https://www.citrix.com/content/dam/citrix/en_us/documents/products-solutions/citrix-netscaler-vpx-data-sheet.pdf)를 참조하십시오.
  6. 가상 컴퓨터 프로비전 중에 Azure에서 생성되는 '배포 ID'는 ARM에서 사용자에게 표시되지 않습니다. ARM에서 배포 ID를 사용하여 NetScaler VPX 장비를 배포할 수 없습니다.

지원되는 기능

Azure에서 실행되는 NetScaler VPX 인스턴스를 처음 시작할 때 다음 기능을 사용할 수 있습니다.

  • 웹 로깅
  • 콘텐츠 스위칭
  • 부하 분산
  • SSL 오프로드
  • 콘텐츠 필터링
  • SSL VPN(최대 사용자 수 = 5)(최대 ICA 사용자 수 = 제한 없음)
  • 다시 쓰기
  • Responder
  • HTML 주입
  • NS의 Web Interface
  • AppFlow
  • vPath
  • 모델 ID 5
  • 강력한 암호화
Citrix에서 받은 NetScaler VPX 라이센스를 적용하면 추가 NetScaler 기능 및 처리량을 사용할 수 있습니다.

XenApp 및 XenDesktop 배포의 경우 NetScaler 장비의 VPN 가상 서버가 다음 모드로 구성될 수 있습니다.

  • 기본 모드. 이 모드에서는 ICAOnly VPN 가상 서버 매개 변수가 ON으로 설정됩니다. 기본 모드는 라이센스 없는 NetScaler VPX 인스턴스에서 완전하게 작동합니다.
  • Smart-Access(스마트 액세스) 모드. 이 모드에서는 ICAOnly VPN 가상 서버 매개 변수가 OFF로 설정됩니다. Smart-Access(스마트 액세스) 모드는 라이센스 없는 NetScaler VPX 인스턴스에서 5명의 AAA 세션 사용자에 대해서만 작동합니다.

메모

Smart Control(스마트 컨트롤) 기능을 구성하려면 NetScaler VPX 인스턴스에 Platinum 라이센스를 적용해야 합니다.

네트워크 아키텍처

ARM에서 NetScaler VPX VM(가상 컴퓨터)은 가상 네트워크에 상주합니다. 각 NetScaler VM에 가상 NIC(네트워크 인터페이스 카드)가 생성됩니다. 가상 네트워크에 구성된 NSG(네트워크 보안 그룹)가 NIC에 연결되고 함께 VM의 송수신 트래픽을 제어합니다.

NSG가 NetScaler VPX 인스턴스로 요청을 전달하면 VPX 인스턴스가 이 요청을 서버로 전송합니다. 서버의 응답은 이와 동일한 경로를 반대 방향으로 거치게 됩니다. NSG는 단일 VPX VM을 제어하도록 구성하거나 서브넷 및 가상 네트워크를 사용하여 다중 VPX VM 배포의 트래픽을 제어할 수 있습니다.

NIC에는 가상 네트워크, 서브넷, 내부 IP 주소 및 공용 IP 주소와 같은 네트워크 구성 세부 정보가 포함됩니다.

ARM에 있는 동안에는 VM 액세스에 사용되는 다음 IP 주소를 알고 있는 것이 좋습니다.

  • PIP(공용 IP) 주소는 NetScaler VM의 가상 NIC에 직접 구성되는 인터넷 연결 IP 주소입니다. 이 주소를 사용하면 NSG에 인바운드 및 아웃바운드 규칙을 구성할 필요 없이 외부 네트워크에서 바로 VM에 액세스할 수 있습니다.
  • NSIP(NetScaler IP) 주소는 VM에 구성된 내부 IP 주소입니다. 이 주소는 라우팅할 수 없습니다.
  • VIP(가상 IP) 주소는 NSIP와 포트 번호를 사용하여 구성됩니다. 클라이언트는 PIP 주소를 통해 NetScaler 서비스에 액세스하며 요청이 NetScaler VPX VM의 NIC 또는 Azure 부하 분산 장치에 도달하면 VIP가 내부 IP(NSIP) 및 내부 포트 번호로 변환됩니다.
  • 내부 IP 주소는 가상 네트워크의 주소 공간 풀에서 VM의 사설 내부 IP 주소입니다. 이 IP 주소는 외부 네트워크에서 연결할 수 없습니다. 이 IP 주소는 정적으로 설정하지 않는 한 기본적으로 동적입니다. 인터넷 트래픽은 NSG에 생성된 규칙에 따라 이 주소로 라우팅됩니다. NSG는 NIC와 함께 올바른 유형의 트래픽을 NIC의 올바른 포트로 선택적으로 전송합니다. 해당하는 트래픽 유형 및 포트는 VM에 구성된 서비스에 따라 다릅니다.

이 문서에서 PIP, VIP 및 ILPIP(인스턴스 수준 PIP)는 같은 항목을 의미하며 서로 바꿔 사용됩니다.

다음 그림에서는 ARM에서 프로비전된 NetScaler VPX 인스턴스를 통해 클라이언트에서 서버로 트래픽 흐름이 어떻게 이루어지는지 보여 줍니다.

localized image

Azure에서 NetScaler VPX가 작동하는 방식

온-프레미스 배포에서 NetScaler VPX 인스턴스에는 3개 이상의 IP 주소가 필요합니다.

  • NSIP(NetScaler IP) 주소라고 하는 관리 IP 주소
  • 서버 팜과 통신하기 위한 SNIP(서브넷 IP) 주소
  • 클라이언트 요청을 받아들이기 위한 VIP(가상 서버 IP) 주소

Azure 배포에서는 프로비전 중에 DHCP를 통해 하나의 IP 주소만 할당되며 이 주소는 사설(내부) 주소입니다.    

Azure에서 여러 개의 NIC를 사용하여 NetScaler VPX 인스턴스를 프로비전할 수는 있지만 여러 NIC 기능을 사용할 경우 인스턴스가 응답하지 못하게 만들 수도 있는 몇 가지 제약이 생깁니다. 이러한 제약에 대한 자세한 내용은  제한 사항 및 사용량 지침을 참조하십시오.

이러한 제한 사항을 방지하기 위해 Azure에서는 NetScaler VPX 인스턴스를 단일 IP 아키텍처로 배포할 수 있습니다. 단일 IP 아키텍처에서는 NetScaler 장비의 세 가지 IP 기능이 IP 주소 하나로 멀티플렉스됩니다. 이 단일 IP 주소는 서로 다른 포트 번호를 사용하여 NSIP, SNIP 및 VIP 기능을 합니다.

다음 이미지에서는 단일 IP 주소가 어떻게 NSIP, SNIP 및 VIP 기능으로 사용되는지 보여 줍니다.

localized image

메모

단일 IP 모드는 Azure 배포에서만 사용할 수 있습니다. 이 모드는 온-프레미스, AWS 또는 다른 유형으로 배포된 NetScaler VPX 인스턴스에 사용할 수 없습니다.

포트 주소 변환을 거치는 트래픽 흐름

Azure 배포에서 NetScaler VPX 인스턴스를 VM(가상 컴퓨터)으로 프로비전하면 Azure는 공용 IP 주소 및 내부 IP 주소(라우팅할 수 없음)를 NetScaler 가상 컴퓨터에 할당합니다. 인바운드 및 아웃바운드 규칙은 정의된 각 규칙에 대한 공용 포트 및 개인 포트와 함께 NetScaler 인스턴스에 대한 NSG에 정의됩니다. NetScaler 인스턴스는 내부 IP 주소 및 개인 포트에서 수신합니다.

모든 외부 요청은 NetScaler VPX VM의 가상 NIC에서 수신됩니다. NIC는 NSG에 연결되고 NSG는 요청의 대상 주소 및 포트(공용 IP 주소 및 포트)를 변환할 사설 IP 및 개인 포트 조합을 지정합니다. ARM은 PAT(포트 주소 변환)를 수행하여 공용 IP 주소 및 포트를 NetScaler 가상 컴퓨터의 내부 IP 및 개인 포트에 매핑하고 트래픽을 가상 컴퓨터에 전달합니다.

다음 그림에서는 Azure가 포트 주소 변환을 수행하여 트래픽을 NetScaler 내부 IP 주소 및 개인 포트로 전달하는 방법을 보여 줍니다.

localized image

이 예에서 VM에 할당된 공용 IP 주소는 140.x.x.x이며 내부 IP 주소는 10.x.x.x입니다. 인바운드 및 아웃바운드 규칙이 정의될 때 공용 HTTP 포트 80은 클라이언트 요청을 수신하는 포트로 정의되고 이에 대응되는 개인 포트 10080은 NetScaler 가상 컴퓨터의 수신 포트로 정의됩니다. 클라이언트 요청은 공용 IP 주소 140.x.x.x의 포트 80에서 수신됩니다. Azure는 포트 주소 변환을 수행하여 이 주소와 포트를 내부 IP 주소인 10.x.x.x와 개인 포트 10080에 매핑하고 클라이언트 요청을 전달합니다.

포트 사용 지침에 대한 자세한 내용은 포트 사용 지침을 참조하십시오.

NSG 및 액세스 제어 목록에 대한 자세한 내용은 https://azure.microsoft.com/ko-kr/documentation/articles/virtual-networks-nsg/를 참조하십시오.    

NAT(Network Address Translation)를 거치는 트래픽 흐름

NetScaler 가상 컴퓨터에 대한 인스턴스 수준의 PIP(공용 IP) 주소를 요청할 수도 있습니다. 이 직접 PIP를 VM 수준에서 사용할 경우 네트워크 트래픽을 가로채는 인바운드 및 아웃바운드 규칙을 정의할 필요가 없습니다. 인터넷에서 들어오는 요청은 VM에서 직접 수신됩니다. Azure는 NAT(Network Address Translation)를 수행하고 트래픽을 NetScaler 인스턴스의 내부 IP 주소에 전달합니다.

다음 그림에서는 Azure가 NAT(Network Address Translation)를 수행하여 NetScaler 내부 IP 주소를 매핑하는 방법을 보여 줍니다.

localized image

이 예에서 NSG에 할당된 공용 IP 주소는 140.x.x.x이며 내부 IP 주소는 10.x.x.x입니다. 인바운드 및 아웃바운드 규칙이 정의될 때 공용 HTTP 포트 80은 클라이언트 요청을 수신하는 포트로 정의되고 이에 대응되는 개인 포트 10080은 NetScaler 가상 컴퓨터의 수신 포트로 정의됩니다. 클라이언트 요청은 공용 IP 주소(140.x.x.x)에서 수신됩니다. Azure는 NAT(Network Address Translation)를 수행하여 PIP를 포트 10080에서 내부 IP 주소 10.x.x.x로 매핑하고 클라이언트 요청을 전달합니다.

메모

고가용성 NetScaler VPX VM은 트래픽의 부하 분산을 제어하는 인바운드 규칙이 정의되어 있는 외부 또는 내부 부하 분산 장치를 통해 제어됩니다. 이러한 부하 분산 장치는 외부 트래픽을 가장 먼저 가로챈 다음 백엔드 풀, NAT 규칙 및 상태 프로브 등 부하 분산 장치에 정의되고 구성된 부하 분산 규칙에 따라 전환합니다.

포트 사용 지침

NetScaler 가상 컴퓨터를 생성하는 동안 또는 가상 컴퓨터를 프로비전한 후 NSG의 인바운드 및 아웃바운드 규칙을 추가로 구성할 수 있습니다. 각 인바운드 및 아웃바운드 규칙은 공용 포트 및 개인 포트에 연결됩니다.

NSG 규칙을 구성하기 전에 사용 가능한 포트 번호와 관련된 다음 지침에 유의하십시오.

  1. 다음 포트는 NetScaler 가상 컴퓨터에 예약되어 있습니다. 인터넷에서 오는 요청에 대해 공용 IP 주소를 사용할 때 다음 번호는 개인 포트로 정의할 수 없습니다. 
    포트 21, 22, 80, 443, 8080, 67, 161, 179, 500, 520, 3003, 3008, 3009, 3010, 3011, 4001, 5061, 9000, 7000.

    하지만 VIP 같은 인터넷 연결 서비스에 표준 포트(예: 포트 443)를 사용하려면 NSG를 사용하여 포트 매핑을 만들어야 합니다. 그러면 표준 포트는 NetScaler에서 이 VIP 서비스용으로 구성된 다른 포트에 매핑됩니다.

    예를 들어 VIP 서비스가 NetScaler 인스턴스의 포트 8443에서 실행될 수 있지만 매핑되는 포트는 공용 포트 443입니다. 따라서 사용자가 공용 IP를 통해 포트 443에 액세스할 경우 실제로 요청은 개인 포트 8443으로 지정됩니다.

  2. 공용 IP 주소는 수동 FTP 또는 ALG처럼 포트 매핑이 동적으로 열리는 프로토콜을 지원하지 않습니다.
  3. 공용 IP 주소에는 Azure 부하 분산 장치를 사용할 수 없습니다. 부하 분산 장치에 구성된 PIP가 아닌 VPX 인스턴스에 연결된 PIP를 사용하는 트래픽에는 고가용성을 사용할 수 없습니다. ARM에서의 NetScaler VPX HA 구성에 대한 자세한 내용은 Azure에서 고가용성 모드로 NetScaler VPX 구성을 참조하십시오.
  4. NetScaler Gateway 배포에서는 SNIP가 구성되어 있지 않을 경우 NSIP를 SNIP로 사용할 수 있으므로 SNIP 주소를 구성할 필요가 없습니다.
    VIP 주소는 NSIP 주소와 일부 비표준 포트 번호를 사용하여 구성해야 합니다. 백엔드 서버의 콜백 구성에는 VIP URL과 함께 VIP 포트 번호를 지정해야 합니다(예: url:포트).

메모

참고: ARM에서 NetScaler VPX VM은 IP 주소 2개, 즉 공용 IP 주소와 내부 IP 주소와 연결됩니다. 외부 트래픽은 PIP에 연결되지만 내부 IP 주소 또는 NSIP는 라우팅할 수 없습니다. VPX에서 VIP를 구성하려면 내부 IP 주소와 포트 번호의 이 조합을 사용합니다.

예제:

VPN 가상 서버 FQDN이 vip.test.com이고 VPN 가상 서버가 포트 8443에서 실행되고 있는 경우 콜백 URL은 https://vip.test.com:8443이 됩니다.