KVM 기반 vSRX 가상 방화벽 요구 사항
이 섹션에서는 KVM에 vSRX 가상 방화벽 인스턴스를 구축하기 위한 요구 사항에 대한 개요를 제공합니다.
소프트웨어 사양
아래 표에는 KVM 환경에 vSRX 가상 방화벽을 구축할 때의 시스템 소프트웨어 요구 사항 사양이 나와 있습니다. 이 표에는 KVM에 vSRX 가상 방화벽을 구축하기 위한 특정 소프트웨어 사양이 소개된 Junos OS 릴리스가 요약되어 있습니다. 특정 기능을 활용하려면 특정 Junos OS 릴리스를 다운로드해야 합니다.
KVM 호스트 커널과 관련된 PML(Page Modification Logging) 문제로 인해 vSRX 가상 방화벽이 성공적으로 부팅되지 않을 수 있습니다. vSRX 가상 방화벽에서 이러한 동작이 발생하면 호스트 커널 수준에서 PML을 비활성화하는 것이 좋습니다. 중첩된 가상화 활성화의 일부로 PML을 비활성화하는 방법에 대한 자세한 내용은 vSRX 설치를 위한 서버 준비를 참조하십시오 .
기능 | 사양 | Junos OS 릴리스 소개 |
---|---|---|
vCPU/메모리 | vCPU 2개/4GB RAM |
Junos OS 릴리스 15.1X49-D15 및 Junos OS 릴리스 17.3R1(vSRX 가상 방화벽) |
vCPU 5개/8GB RAM |
Junos OS 릴리스 15.1X49-D70 및 Junos OS 릴리스 17.3R1(vSRX 가상 방화벽) |
|
vCPU 9개/16GB RAM |
Junos OS 릴리스 18.4R1(vSRX 가상 방화벽) Junos OS 릴리스 19.1R1(vSRX 가상 방화벽 3.0) |
|
vCPU 17개/32GB RAM |
Junos OS 릴리스 18.4R1(vSRX 가상 방화벽) Junos OS 릴리스 19.1R1(vSRX 가상 방화벽 3.0) |
|
추가 vRAM을 통한 유연한 플로우 세션 용량 확장 |
해당 없음 | Junos OS 릴리스 19.1R1(vSRX 가상 방화벽) Junos OS 릴리스 19.2R1(vSRX 가상 방화벽 3.0) |
멀티코어 스케일링 지원(소프트웨어 RSS) |
해당 없음 | Junos OS 릴리스 19.3R1(vSRX 가상 방화벽 3.0 전용) |
라우팅 엔진(vSRX 가상 방화벽 및 vSRX 가상 방화벽 3.0)을 위한 추가 vCPU 코어 예약 |
해당 없음 | |
Virtio (virtio-net, vhost-net) (vSRX 가상 방화벽 및 vSRX 가상 방화벽 3.0) |
해당 없음 | |
지원되는 하이퍼바이저 | ||
Linux KVM 하이퍼바이저 지원
메모:
여기에 언급된 특정 Junos OS 릴리스부터 시작하여 모든 후속 Junos OS 릴리스도 이러한 RHEL 버전 및 이후 릴리스를 지원합니다. |
Ubuntu 14.04.5, 16.04 및 16.10Ubuntu 14.04.5, 16.04, and 16.10 |
Junos OS 릴리스 18.4R1 |
Ubuntu 18.04 및 20.04 | Junos OS 릴리스 20.4R1 | |
Red Hat Enterprise Linux(RHEL) 7.3, 7.6 및 7.7 | Junos OS 릴리스 18.4R1 | |
레드햇 엔터프라이즈 리눅스(RHEL) 8.2 | Junos OS 릴리스 19.2R1 | |
레드햇 엔터프라이즈 리눅스(RHEL) 9 | Junos OS 릴리스 23.4R1 | |
CentOS 7.1, 7.2, 7.6 및 7.7CentOS 7.1, 7.2, 7.6, and 7.7 | Junos OS 릴리스 20.4R1 | |
다른 기능들 | ||
클라우드 초기화 |
해당 없음 | |
전원 모드 IPSec(PMI) |
해당 없음 | |
섀시 클러스터 |
해당 없음 | |
소프트웨어 RSS를 이용한 GTP TEID 기반 세션 배포 |
해당 없음 | 예(Junos OS 릴리스 19.3R1 이후) |
장치 내 바이러스 백신 검색 엔진(Avira) |
해당 없음 | 예(Junos OS 릴리스 19.4R1 이후) |
증권 시세 표시기 |
해당 없음 | 예(Junos OS 릴리스 21.1R1 이후) |
Junos Telemetry Interface |
해당 없음 | 예(Junos OS 릴리스 20.3R1 이후) |
시스템 요구 사항 | ||
하이퍼바이저의 하드웨어 가속/사용하도록 설정된 VMX CPU 플래그 |
해당 없음 | |
디스크 공간 |
16GB(IDE 또는 SCSI 드라이브)(vSRX 가상 방화벽) |
Junos OS 릴리스 15.1X49-D15 및 Junos OS 릴리스 17.3R1 |
18GB(vSRX 가상 방화벽 3.0) |
vNIC | 릴리스 도입 |
---|---|
Virtio SA 및 HA | |
Intel 82599/X520 시리즈를 통한 SR-IOV SA 및 HA | Junos OS 릴리스 15.1X49-D90 및 Junos OS 릴리스 17.3R1 |
Intel X710/XL710/XXV710 시리즈를 통한 SR-IOV SA 및 HA | Junos OS 릴리스 15.1X49-D90 |
Intel E810 시리즈를 통한 SR-IOV, SA 및 HA | Junos OS 릴리스 21.2R1
메모:
Junos OS 릴리스 23.2R2부터는 ICE 드라이버 1.12.7만 vSRX 3.0이 있는 E810과 호환됩니다. 1.12.7 미만 버전은 호환성 문제를 일으키며 FPC를 온라인 상태로 만들지 않습니다. |
Mellanox ConnectX-3을 통한 SR-IOV SA 및 HA | 지원되지 않음 |
Mellanox ConnectX-4/5/6을 통한 SR-IOV SA 및 HA(MLX5 드라이버만 해당) | Junos OS 릴리스 18.1R1(vSRX 가상 방화벽) vSRX Virtual Firewall 3.0의 Junos OS 릴리스 21.2R1 이후 |
Intel 82599/X520 시리즈를 통한 PCI 패스스루 | 지원되지 않음 |
Intel X710/XL710 시리즈를 통한 PCI 패스스루 | 지원되지 않음 |
DPDK(Data Plane Development Kit) 버전 17.05 |
Junos OS 릴리스 18.2R1 |
DPDK(Data Plane Development Kit) 버전 18.11 Junos OS 릴리스 19.4R1부터 DPDK 버전 18.11은 vSRX 가상 방화벽에서 지원됩니다. 이 기능을 통해 vSRX 가상 방화벽의 Mellanox Connect 네트워크 인터페이스 카드(NIC)는 이제 OSPF, 멀티캐스트 및 VLAN을 지원합니다. |
Junos OS 릴리스 19.4R1 |
DPDK(Data Plane Development Kit) 버전 20.11 Junos OS 릴리스 21.2R1부터 DPDK(Data Plane Development Kit)가 버전 18.11에서 버전 20.11로 업그레이드되었습니다. 새 버전은 vSRX 가상 방화벽 3.0에서 물리적 Intel E810 시리즈 100G NIC를 지원할 수 있는 ICE 폴 모드 드라이버(PMD)를 지원합니다. |
Junos OS 릴리스 21.2R1 |
KVM 기반 vSRX 가상 방화벽을 구축하려면 Intel VT(가상화 기술) 지원 프로세서가 포함된 호스트 OS에서 하드웨어 기반 가상화를 활성화해야 합니다. 여기에서 CPU 호환성을 확인할 수 있습니다. http://www.linux-kvm.org/page/Processor_support
아래 표에는 vSRX 가상 방화벽 VM의 사양이 나와 있습니다.
Junos OS 릴리스 19.1R1부터 vSRX 가상 방화벽 인스턴스는 Linux KVM 하이퍼바이저에서 Intel X710/XL710을 통해 단일 루트 I/O 가상화와 함께 9개 또는 17개의 vCPU를 사용하는 게스트 OS를 지원하여 확장성 및 성능 향상을 지원합니다.
vSRX 가상 방화벽에 대한 KVM 커널 권장 사항
표 3 에는 KVM에 vSRX 가상 방화벽을 구축할 때 Linux 호스트 OS에 권장되는 Linux 커널 버전이 나와 있습니다. 이 표에는 특정 Linux 커널 버전에 대한 지원이 도입된 Junos OS 릴리스가 간략하게 요약되어 있습니다.
리눅스 배포판 |
리눅스 커널 버전 |
지원되는 Junos OS 릴리스 |
---|---|---|
CentOS에 |
3.10.0.229 Linux 커널을 업그레이드하여 권장 버전을 캡처합니다. |
Junos OS 릴리스 15.1X49-D15 및 Junos OS 릴리스 17.3R1 이상 릴리스 |
우분투 |
3.16 |
Junos OS 릴리스 15.1X49-D15 및 Junos OS 릴리스 17.3R1 이상 릴리스 |
4.4 |
Junos OS 릴리스 15.1X49-D15 및 Junos OS 릴리스 17.3R1 이상 릴리스 |
|
18.04 | Junos OS 릴리스 20.4R1 이상 릴리스 |
|
20.04 | Junos OS 릴리스 20.4R1 이상 릴리스 |
|
증권 시세 표시기 |
3.10 |
Junos OS 릴리스 15.1X49-D15 및 Junos OS 릴리스 17.3R1 이상 릴리스 |
KVM의 vSRX 가상 방화벽을 위한 추가 Linux 패키지
표 4 에는 KVM에서 vSRX 가상 방화벽을 실행하기 위해 Linux 호스트 OS에 필요한 추가 패키지가 나와 있습니다. 이러한 패키지가 서버에 없는 경우 설치하는 방법은 호스트 OS 설명서를 참조하십시오.
패키지 |
버전 |
다운로드 링크 |
---|---|---|
리비르트 |
0.10.0 |
|
virt-manager (권장) |
0.10.0 |
하드웨어 사양
표 5 에는 vSRX 가상 방화벽 VM을 실행하는 호스트 시스템의 하드웨어 사양이 나와 있습니다.
구성 요소 |
사양 |
---|---|
호스트 프로세서 유형 |
Intel x86_64 멀티 코어 CPU
메모:
DPDK를 사용하려면 CPU에서 Intel 가상화 VT-x/VT-d를 지원해야 합니다. Intel 가상화 기술 정보를 참조하십시오. |
vSRX 가상 방화벽 및 vSRX 가상 방화벽 3.0에 대한 물리적 NIC 지원 |
메모:
Mellanox ConnectX-3 또는 ConnectX-4 제품군 어댑터와 함께 SR-IOV를 사용하는 경우 Linux 호스트에서 필요한 경우 최신 MLNX_OFED Linux 드라이버를 설치합니다. MLNX_OFED(Mellanox OpenFabrics Enterprise Distribution for Linux)를 참조하세요.
메모:
게스트당 물리적 장치를 직접 할당하기 위한 하드웨어 지원을 제공하려면 Intel VT-d 확장을 활성화해야 합니다. KVM에서 SR-IOV 및 PCI 구성의 내용을 참조하십시오. |
vSRX 가상 방화벽 3.0을 위한 물리적 NIC 지원 |
Intel X710/XL710/XXV710 및 Intel E810에서 SR-IOV를 지원합니다. |
vSRX 가상 방화벽 성능 향상을 위한 모범 사례
다음 사례를 검토하여 vSRX 가상 방화벽 성능을 개선하십시오.
NUMA 노드
x86 서버 아키텍처는 소켓 내의 다중 소켓과 다중 코어로 구성됩니다. 각 소켓에는 NIC에서 호스트로 I/O를 전송하는 동안 패킷을 저장하는 데 사용되는 메모리가 있습니다. 메모리에서 패킷을 효율적으로 읽으려면 게스트 애플리케이션 및 관련 주변 장치(예: NIC)가 단일 소켓 내에 있어야 합니다. 페널티는 메모리 액세스에 대한 CPU 소켓 스패닝과 관련이 있으며, 이로 인해 성능이 결정적이지 않을 수 있습니다. vSRX 가상 방화벽의 경우 최적의 성능을 위해 vSRX 가상 방화벽 VM의 모든 vCPU가 동일한 물리적 NUMA(Non-Uniform Memory Access) 노드에 있는 것이 좋습니다.
인스턴스의 vCPU를 여러 호스트 NUMA 노드에 분산하도록 하이퍼바이저에서 NUMA 노드 토폴로지를 구성한 경우 vSRX 가상 방화벽의 패킷 전달 엔진(PFE)이 응답하지 않게 됩니다. vSRX 가상 방화벽을 사용하려면 모든 vCPU가 동일한 NUMA 노드에 상주해야 합니다.
NUMA 노드 선호도를 설정하여 vSRX 가상 방화벽 인스턴스를 특정 NUMA 노드와 바인딩하는 것이 좋습니다. NUMA 노드 선호도는 vSRX 가상 방화벽 VM 리소스 스케줄링을 지정된 NUMA 노드로만 제한합니다.
vSRX 가상 방화벽 VM에 가상 인터페이스 매핑
Linux 호스트 OS에서 어떤 가상 인터페이스가 vSRX 가상 방화벽 VM에 매핑되는지 결정하려면:
virsh list
Linux 호스트 OS에서 명령을 사용하여 실행 중인 VM을 나열합니다.hostOS# virsh list
Id Name State ---------------------------------------------------- 9 centos1 running 15 centos2 running 16 centos3 running 48 vsrx running 50 1117-2 running 51 1117-3 running
-
virsh domiflist vsrx-name
명령을 사용하여 해당 vSRX 가상 방화벽 VM의 가상 인터페이스를 나열합니다.hostOS# virsh domiflist vsrx
Interface Type Source Model MAC ------------------------------------------------------- vnet1 bridge brem2 virtio 52:54:00:8f:75:a5 vnet2 bridge br1 virtio 52:54:00:12:37:62 vnet3 bridge brconnect virtio 52:54:00:b2:cd:f4
메모:첫 번째 가상 인터페이스는 Junos OS의 fxp0 인터페이스에 매핑됩니다.
KVM 기반 vSRX 가상 방화벽에 대한 인터페이스 매핑
vSRX 가상 방화벽 인스턴스에 대해 정의된 각 네트워크 어댑터는 vSRX 가상 방화벽 인스턴스가 독립형 VM인지 아니면 고가용성을 위한 클러스터 쌍 중 하나인지에 따라 특정 인터페이스에 매핑됩니다. vSRX 가상 방화벽의 인터페이스 이름과 매핑은 표 6 과 표 7에 나와 있습니다.
다음 사항에 유의하십시오.
독립 실행형 모드에서:
fxp0은 대역 외 관리 인터페이스입니다.
ge-0/0/0은 첫 번째 트래픽(수익) 인터페이스입니다.
클러스터 모드에서:
fxp0은 대역 외 관리 인터페이스입니다.
em0은 두 노드에 대한 클러스터 제어 링크입니다.
노드 0의 fab0에 대한 ge-0/0/0, 노드 1의 fab1에 대한 ge-7/0/0과 같이 모든 트래픽 인터페이스를 패브릭 링크로 지정할 수 있습니다.
표 6 에는 독립형 vSRX 가상 방화벽 VM의 인터페이스 이름과 매핑이 나와 있습니다.
네트워크 어댑터 |
vSRX 가상 방화벽을 위한 Junos OS의 인터페이스 이름 |
---|---|
1 |
fxp0 |
2 |
ge-0/0/0 |
3 |
ge-0/0/1 |
4 |
ge-0/0/2 |
5 |
ge-0/0/3 |
6 |
ge-0/0/4 |
7 |
ge-0/0/5 |
8 |
ge-0/0/6 |
표 7 에는 클러스터(노드 0 및 노드 1)에 있는 한 쌍의 vSRX 가상 방화벽 VM에 대한 인터페이스 이름과 매핑이 나와 있습니다.
네트워크 어댑터 |
vSRX 가상 방화벽을 위한 Junos OS의 인터페이스 이름 |
---|---|
1 |
fxp0(노드 0 및 1) |
2 |
em0(노드 0 및 1) |
3 |
ge-0/0/0 (노드 0)ge-7/0/0 (노드 1) |
4 |
ge-0/0/1(노드 0)ge-7/0/1(노드 1) |
5 |
ge-0/0/2(노드 0)ge-7/0/2(노드 1) |
6 |
ge-0/0/3(노드 0)ge-7/0/3(노드 1) |
7 |
ge-0/0/4(노드 0)ge-7/0/4(노드 1) |
8 |
ge-0/0/5(노드 0)ge-7/0/5(노드 1) |
KVM의 vSRX 가상 방화벽 기본 설정
vSRX 가상 방화벽에는 다음과 같은 기본 구성 설정이 필요합니다.
인터페이스에는 IP 주소가 할당되어야 합니다.
인터페이스는 영역에 바인딩되어야 합니다.
트래픽을 허용하거나 거부하려면 영역 간에 정책을 구성해야 합니다.
표 8 에는 vSRX 가상 방화벽의 보안 정책에 대한 공장 기본 설정이 나와 있습니다.
소스 영역 |
대상 영역 |
정책 작업 |
---|---|---|
트러스트 |
불신(Untrust) |
허락하다 |
트러스트 |
트러스트 |
허락하다 |
불신(Untrust) |
트러스트 |
거절하다 |