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) |
|
| 17 vCPU/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.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 | |
| Red Hat Enterprise Linux(RHEL) 9 | Junos OS 릴리스 23.4R1 | |
| CentOS 7.1, 7.2, 7.6 및 7.7 | Junos OS 릴리스 20.4R1 | |
| 다른 기능들 | ||
| 클라우드 초기화 |
해당 없음 | 예(Junos OS 릴리스 15.1X49-D100 및 Junos OS 릴리스 17.4R1 이후) |
| 파워 모드 IPSec (PMI) |
해당 없음 | |
| 섀시 클러스터 |
해당 없음 | 예(Junos OS 12.1X46-D10 이후) |
| 소프트웨어 RSS를 이용한 GTP TEID 기반 세션 배포 |
해당 없음 | 예(Junos OS 릴리스 19.3R1부터) |
| 장치 내 바이러스 백신 검색 엔진(Avira) |
해당 없음 | 예(Junos OS 릴리스 19.4R1부터) |
| LLDP (영문) |
해당 없음 | 예(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 가상 방화벽 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부터 vSRX 가상 방화벽에서 DPDK 버전 18.11이 지원됩니다. 이 기능을 통해 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 릴리스에 대해 간략하게 설명합니다.
| Linux 배포판 |
Linux 커널 버전 |
지원되는 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 이상 |
|
| RHEL (홍력) |
3.10 |
Junos OS 릴리스 15.1X49-D15 및 Junos OS 릴리스 17.3R1 이상 |
KVM 기반 vSRX 가상 방화벽을 위한 추가 Linux 패키지
표 4 에는 KVM에서 vSRX 가상 방화벽을 실행하기 위해 Linux 호스트 OS에 필요한 추가 패키지가 나와 있습니다. 서버에 없는 경우 이러한 패키지를 설치하는 방법은 호스트 OS 설명서를 참조하십시오.
| 패키지 |
버전 |
다운로드 링크 |
|---|---|---|
| libvirt 님 |
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 드라이버를 설치합니다.
메모:
게스트당 물리적 장치를 직접 할당하기 위한 하드웨어 지원을 제공하려면 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) 노드에 설치하는 것이 좋습니다.
하이퍼바이저에서 NUMA 노드 토폴로지가 인스턴스의 vCPU를 여러 호스트 NUMA 노드로 분산하도록 구성된 경우 vSRX 가상 방화벽의 패킷 포워딩 엔진(PFE)이 응답하지 않습니다. vSRX 가상 방화벽을 사용하려면 모든 vCPU가 동일한 NUMA 노드에 있는지 확인해야 합니다.
NUMA 노드 선호도를 설정하여 vSRX 가상 방화벽 인스턴스를 특정 NUMA 노드와 바인딩하는 것이 좋습니다. NUMA 노드 선호도는 vSRX 가상 방화벽 VM 리소스 스케줄링을 지정된 NUMA 노드로만 제한합니다.
vSRX 가상 방화벽 VM에 가상 인터페이스 매핑
Linux 호스트 OS에서 어떤 가상 인터페이스를 vSRX 가상 방화벽 VM에 매핑할지 결정하려면 다음과 같이 하십시오.
Linux 호스트 OS에서
virsh list명령을 사용하여 실행 중인 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) |
트러스트 |
거절하다 |