8.2. 다중 네트워크 플러그인(Multus) 지원
OpenShift Data Foundation은 베어 메탈 인프라에서 다중 네트워크 플러그인을 사용하여 다양한 유형의 네트워크 트래픽을 격리하여 보안 및 성능을 개선할 수 있는 기능을 지원합니다. Multus를 사용하면 호스트의 하나 이상의 네트워크 인터페이스를 OpenShift Data Foundation을 독점적으로 사용하도록 예약할 수 있습니다.
Multus를 사용하려면 먼저 Multus 사전 요구 사항 검증 툴을 실행합니다. 툴 사용 지침은 OpenShift Data Foundation - Multus 사전 요구 사항 검증 툴 을 참조하십시오. Multus 네트워크에 대한 자세한 내용은 여러 네트워크를참조하십시오.
8.2.1. Multus를 사용하여 스토리지 트래픽 분리
기본적으로 Red Hat OpenShift Data Foundation은 Red Hat OpenShift Software Defined Network(SDN)를 사용하도록 구성되어 있습니다. 기본 SDN은 다음과 같은 유형의 트래픽을 전달합니다.
- pod-to-pod 트래픽
- 스토리지가 OpenShift Data Foundation인 경우 공용 네트워크 트래픽이라고 하는 pod-to-storage 트래픽
- OpenShift Data Foundation 내부 복제 및 클러스터 네트워크 트래픽이라는 트래픽 재조정
OpenShift Data Foundation을 OpenShift 기본 네트워크에서 분리하는 방법은 다음 세 가지가 있습니다.
OpenShift Data Foundation의 공용 네트워크에 대해 호스트에 네트워크 인터페이스 예약
- pod-to-storage 및 내부 스토리지 복제 트래픽은 pod-to-pod 네트워크 트래픽과 분리된 네트워크에서 공존합니다.
- OpenShift Data Foundation 클러스터가 정상이면 애플리케이션 pod는 최대 공용 네트워크 스토리지 대역폭에 액세스할 수 있습니다.
- OpenShift Data Foundation 클러스터가 장애에서 복구되면 지속적인 복제 및 트래픽 재조정으로 인해 애플리케이션 pod가 대역폭을 줄일 수 있습니다.
OpenShift Data Foundation의 클러스터 네트워크의 호스트에 네트워크 인터페이스 예약
- pod-to-pod 및 pod-to-storage 트래픽 모두 OpenShift의 기본 네트워크를 계속 사용합니다.
- pod-to-storage 대역폭은 OpenShift Data Foundation 클러스터의 상태에 의해 덜 영향을 받습니다.
- 사용 중인 OpenShift 클러스터에서 pod-to-pod 및 pod-to-storage OpenShift Data Foundation 트래픽이 네트워크 대역폭에 적합할 수 있습니다.
- 스토리지 내부 네트워크에는 장애 발생 시 사용하도록 예약된 사용되지 않는 대역폭이 초과되는 경우가 많습니다.
OpenShift Data Foundation의 호스트에 두 개의 네트워크 인터페이스 예약: 하나는 공용 네트워크용이고 다른 하나는 클러스터 네트워크용입니다.
- pod-to-pod, pod-to-storage, 스토리지 내부 트래픽은 모두 분리되어 있으며 트래픽 유형은 리소스에 적합하지 않습니다.
- 모든 트래픽 유형에 대한 서비스 수준 계약을 보다 보장할 수 있습니다.
- 정상 런타임 중에 더 많은 네트워크 대역폭이 예약되지만 세 네트워크 모두에서 사용되지 않습니다.
듀얼 네트워크 인터페이스 분리 구성 스키마의 예:
Triple 네트워크 인터페이스 전체 분리된 구성 스키마의 예:
8.2.2. Multus 사용 시기
다음이 필요할 때 OpenShift Data Foundation에 Multus를 사용합니다.
개선된 대기 시간 - ODF를 사용한 Multus는 항상 대기 시간을 향상시킵니다. 거의 호스트 네트워크 속도로 호스트 인터페이스를 사용하고 OpenShift의 소프트웨어 정의 포드 네트워크를 바이패스합니다. 각 인터페이스에 대해 인터페이스 수준 튜닝당 Linux를 수행할 수도 있습니다.
대역폭 개선 - OpenShift Data Foundation 클라이언트 데이터 트래픽 및 내부 데이터 트래픽을 위한 전용 인터페이스입니다. 이러한 전용 인터페이스는 전체 대역폭을 예약합니다.
향상된 보안 - Multus는 보안 향상을 위해 스토리지 네트워크 트래픽을 애플리케이션 네트워크 트래픽과 분리합니다. 네트워크가 인터페이스를 공유할 때 대역폭 또는 성능은 분리되지 않을 수 있지만 QoS 또는 트래픽 셰이핑을 사용하여 공유 인터페이스의 대역폭 우선 순위를 지정할 수 있습니다.
8.2.3. Multus 구성
Multus를 사용하려면 나중에 클러스터에 연결된 OpenShift Data Foundation 클러스터를 배포하기 전에 네트워크 연결 정의(NAD)를 생성해야 합니다. 자세한 내용은 네트워크 연결 정의 생성 을 참조하십시오.
Pod에 추가 네트워크 인터페이스를 연결하려면 인터페이스 연결 방법을 정의하는 구성을 생성해야 합니다. NetworkAttachmentDefinition
CR(사용자 정의 리소스)을 사용하여 각 인터페이스를 지정합니다. 각 CR 내부의 CNI(Container Network Interface) 구성은 해당 인터페이스의 생성 방법을 정의합니다.
OpenShift Data Foundation은 다음 두 가지 유형의 드라이버를 지원합니다. 다음 표에서는 드라이버 및 해당 기능에 대해 설명합니다.
|
|
각 연결은 자체 MAC 주소가 있는 상위 인터페이스의 하위 인터페이스를 가져오고 호스트 네트워크에서 격리됩니다. | 각 연결은 자체 IP 주소를 가져오고 동일한 MAC 주소를 공유합니다. |
더 적은 CPU를 사용하고 Linux 브리지 또는 |
|
거의 항상 브리지 모드가 필요합니다. |
|
NIC(네트워크 인터페이스 카드)가 하드웨어에서 VLAN(가상 로컬 영역 네트워크)을 지원하는 경우 호스트 가까운 성능. |
NIC가 하드웨어에서 VLAN을 지원하지 않는 경우 |
OpenShift Data Foundation은 다음 두 가지 유형의 IP 주소 관리를 지원합니다.
| DHCP |
OpenShift/Kubernetes |
|
포드에 IP를 제공하는 DHCP 서버가 필요하지 않습니다. | 네트워크 DHCP 서버는 Multus Pod와 동일한 네트워크의 다른 호스트에 동일한 범위를 제공할 수 있습니다. |
DHCP 서버가 있는 경우 Multus configured IPAM이 동일한 범위를 제공하지 않도록 네트워크에서 여러 MAC 주소가 동일한 IP를 가질 수 없도록 합니다.
8.2.4. Multus 구성 요구사항
사전 요구 사항
- 공용 네트워크에 사용되는 인터페이스는 각 OpenShift 스토리지 및 작업자 노드에서 동일한 인터페이스 이름을 사용해야 하며 인터페이스는 모두 동일한 기본 네트워크에 연결되어 있어야 합니다.
- 클러스터 네트워크에 사용되는 인터페이스는 각 OpenShift 스토리지 노드에서 동일한 인터페이스 이름을 사용해야 하며 인터페이스는 모두 동일한 기본 네트워크에 연결되어 있어야 합니다. 클러스터 네트워크 인터페이스는 OpenShift 작업자 노드에 있을 필요가 없습니다.
- 공용 또는 클러스터 네트워크에 사용되는 각 네트워크 인터페이스는 최소 10기가비트 네트워크 속도를 사용할 수 있어야 합니다.
- 각 네트워크에는 별도의 VLAN(가상 로컬 영역 네트워크) 또는 서브넷이 필요합니다.
베어 메탈 에서 Multus 기반 구성을 구성하는 데 필요한 단계는 Multus 네트워크 생성 을 참조하십시오.