Product Documentation

Linux-KVM 플랫폼에 NetScaler VPX 가상 장비를 설치하기 위한 필수 구성 요소

Aug 30, 2016

하드웨어 요구 사항

다음 표에는 NetScaler VPX를 실행하는 Linux-KVM 서버의 최소 시스템 요구 사항에 대한 설명이 나와 있습니다.

구성 요소 요구 사항
CPU
  • AMD-V 및 Intel VT-X 프로세서에 포함된 하드웨어 가상화 기능을 사용하는 64비트 x86 프로세서

    CPU가 Linux 호스트를 지원하는지 여부를 테스트하려면 호스트 Linux 셸 프롬프트에 다음 명령을 입력합니다.

    .egrep'^flags.*(vmx|svm)'/proc/cpuinfo

    위 확장명에 대한 BIOS 설정이 비활성화된 경우 BIOS에서 활성화해야 합니다.

  • 호스트 Linux에 CPU 코어를 2개 이상 제공합니다.
  • 프로세서 속도에 대한 구체적인 권장 사항은 없지만 속도가 높을수록 VM 응용 프로그램의 성능이 향상됩니다.
메모리(RAM)

호스트 Linux 커널용 최소 4GB. VM에서 필요하면 메모리를 추가합니다.

하드 디스크

호스트 Linux 커널 및 VM 요구 사항에 대한 공간을 계산합니다. 단일 NetScaler VPX VM에는 20GB의 디스크 공간이 필요합니다.

소프트웨어 요구 사항

사용되는 호스트 커널은 모든 가상화 도구를 포함하는 64비트 Linux 커널, 릴리스 2.6.20 이상이어야 합니다. 3.6.11-4 이상과 같은 최신 커널을 사용하는 것이 좋습니다.

Red Hat, Centos 및 Fedora와 같은 대부분의 Linux 배포에는 테스트된 커널 버전 및 관련 가상화 도구가 포함되어 있습니다.

게스트 VM 하드웨어 요구 사항

NetScaler VPX는 IDE 하드 디스크 유형만 지원합니다. 하드 디스크 유형은 NetScaler 패키지의 일부인 XML 파일에서 구성되었습니다.

네트워킹 요구 사항

NetScaler VPX는 virtIO 반가상화 네트워크 인터페이스만 지원합니다.

원본 인터페이스 및 모드
원본 장치 유형은 브리지 또는 MacVTap일 수 있습니다. MacVTap의 경우 VEPA, 브리지, 개인 및 통과의 4가지 모드를 사용할 수 있습니다.
다음 표에는 사용할 수 있는 인터페이스 유형과 지원되는 트래픽 유형이 나와 있습니다.

NetScaler 인스턴스에서 최상의 성능을 보장하기 위해서는 원본 인터페이스에서 grolro 기능을 해제해야 합니다.

표 1. 인터페이스 유형
인터페이스 유형 고려 사항
원본: 브리지
  • Linux 브리지
  • 올바른 설정을 선택하지 않거나 IPtable 서비스를 비활성화하는 경우 호스트 Linux의 Ebtables 및 iptables 설정은 브리지의 트래픽을 필터링할 수 있습니다.
소스: MacVTap

모드: VEPA

  • 브리지보다 나은 성능
  • 동일한 하위 장치의 인터페이스를 VM 간에 공유할 수 있습니다.
  • 동일한 하위 장치를 사용한 VM 간 통신은 업스트림 또는 다운스트림 스위치가 VEPA 모드를 지원하는 경우에만 가능합니다.
소스: MacVTap

모드: 개인

  • 브리지보다 나은 성능
  • 동일한 하위 장치의 인터페이스를 VM 간에 공유할 수 있습니다.
  • 동일한 하위 장치를 사용한 VM 간 통신이 가능하지 않습니다.
소스: MacVTap

모드: 브리지

  • 브리지에 비해 나음
  • 동일한 하위 장치의 인터페이스를 VM 간에 공유할 수 있습니다.
  • 동일한 하위 장치를 사용한 VM 간 통신은 하위 장치 링크가 연결된 경우 가능합니다.
소스: MacVTap

모드: 통과

  • 브리지에 비해 나음
  • 동일한 하위 장치의 인터페이스를 VM 간에 공유할 수 없습니다.
  • 하나의 VM만 하위 장치를 사용할 수 있습니다.

표 2. 확인된 트래픽 유형
테스트 사례 브리지 MacVTap
VEPA 개인 브리지 통과
태그가 지정되지 않은 IPv4 S S S S S
태그가 지정된 IPv4 S NS NS NS NS
IPv4 L3 전달 S S S S S
IPv4 끝점 트래픽 S S S S S
브로드캐스트/멀티캐스트 트래픽 S S S S S
태그가 지정되지 않은 IPv6 S S S S S
태그가 지정된 IPv6 S NS NS NS NS
IPv6 L3 전달 S S S S S
IPv6 끝점 트래픽 S S S S S

S - 지원됨

NS - 지원되지 않음

원본 인터페이스의 속성

원본 인터페이스의 generic-receive-offload(gro) 및 large-receive-offload(lro) 기능을 해제했는지 확인합니다. 해당 grolro 기능을 해제하려면 호스트 Linux 셸 프롬프트에서 다음 명령을 실행합니다.

ethtool -K eth6 gro off

ethool -K eth6 lro off

예제:

[root@localhost ~]# ethtool -K eth6 Offload parameters for eth6: rx-checksumming: on tx-checksumming: on scatter-gather: on tcp-segmentation-offload: on udp-fragmentation-offload: off generic-segmentation-offload: on generic-receive-offload: off large-receive-offload: off rx-vlan-offload: on tx-vlan-offload: on ntuple-filters: off receive-hashing: on [root@localhost ~]#

예제:

호스트 Linux 브리지가 원본 장치로 사용되는 경우, 다음 예처럼 호스트를 게스트 VM에 연결하는 가상 인터페이스인 vnet 인터페이스에서 grolro 기능을 해제해야 합니다.

[root@localhost ~]# brctl show eth6_br bridge name     bridge id        STP enabled     interfaces eth6_br         8000.00e0ed1861ae       no          eth6                                                     vnet0                                                     vnet2 [root@localhost ~]#

위의 예에서 두 가상 인터페이스는 eth6_br 에서 파생되며 vnet0vnet2. 다음 명령을 실행하여 이러한 인터페이스에서 grolro 기능을 해제합니다.

ethtool –K vnet0 gro off ethtool –K vnet2 gro off ethtool –K vnet0 lro off ethtool –K vnet2 lro off 

필요한 모듈

더 나은 네트워크 성능을 얻으려면 Linux 호스트에 vhost_net 모듈이 있어야 합니다. 이 vhost_net 모듈이 있는지 확인하려면 Linux 호스트에서 다음 명령을 실행합니다.

lsmod | grep "vhost_net"

vhost_net 이 아직 실행되고 있지 않으면 다음 명령을 입력하여 실행합니다.

modprobe vhost_net