NSX 제어부는 NSX 컨트롤러 클러스터에서 실행됩니다. NSX 컨트롤러는 NSX 논리적 스위칭 및 라우팅 기능에 대한 제어부 기능을 제공하는 고급 분산 상태 관리 시스템입니다. 이 컨트롤러는 네트워크 내 모든 논리적 스위치에 대한 중앙 제어 지점이며 모든 호스트, 논리적 스위치(VXLAN) 및 논리적 분산 라우터에 대한 정보를 유지 관리합니다.

컨트롤러 클러스터는 하이퍼바이저에서 분산 스위칭 및 라우팅 모듈을 관리합니다. 컨트롤러를 통과하는 데이터부 트래픽은 없습니다. 컨트롤러 노드는 3개 멤버의 클러스터에 배포되어 고가용성 및 확장을 사용하도록 설정합니다. 컨트롤러 노드가 실패해도 데이터부 트래픽에는 영향을 미치지 않습니다.

NSX 컨트롤러는 네트워크 정보를 호스트로 분산하는 방식으로 작동합니다. 높은 수준의 복원력을 달성할 수 있도록 NSX 컨트롤러는 스케일 아웃과 HA를 위해 클러스터링됩니다. NSX 컨트롤러를 3노드 클러스터에 배포해야 합니다. 세 개의 가상 장치는 NSX 도메인 내에서 작동하는 모든 네트워크의 상태를 제공, 유지 및 업데이트합니다. NSX Manager는 NSX 컨트롤러 노드를 배포하는 데 사용됩니다.

세 개의 NSX 컨트롤러 노드가 하나의 컨트롤러 클러스터를 구성합니다. "분할 브레인" 시나리오를 방지하려면 컨트롤러 클러스터에 쿼럼(과반수라고도 함)이 필요합니다. 분할 브레인 시나리오에서는 서로 겹치는 두 데이터 집합의 유지 보수로 인해 데이터 불일치가 발생합니다. 이러한 불일치는 실패 상태 및 데이터 동기화 문제로 인해 야기될 수 있습니다. 컨트롤러 노드를 세 개 사용할 경우 NSX 컨트롤러 노드 중 하나가 실패해도 데이터 중복성이 보장됩니다.

컨트롤러 클러스터에는 다음을 포함한 몇 가지 역할이 있습니다.

  • API 제공자

  • 지속성 서버

  • 스위치 관리자

  • 논리적 관리자

  • 디렉토리 서버

각 역할에는 마스터 컨트롤러 노드가 있습니다. 특정 역할의 마스터 컨트롤러 노드가 실패하면 클러스터는 사용 가능한 NSX 컨트롤러 노드 중에서 해당 역할의 새로운 마스터를 선택합니다. 해당 역할의 새 마스터 NSX 컨트롤러 노드는 작업의 손실된 부분을 나머지 NSX 컨트롤러 노드 간에 재할당합니다.

NSX는 세 가지 논리적 스위치 제어부 모드를 지원하는데, 멀티캐스트, 유니캐스트 및 하이브리드입니다. 컨트롤러 클러스터를 사용하여 VXLAN 기반 논리적 스위치를 관리할 경우 물리적 네트워크 인프라에서 멀티캐스트를 지원할 필요가 없습니다. 멀티캐스트 그룹 IP 주소를 제공할 필요가 없고, 물리적 스위치 또는 라우터에서 PIM 라우팅 또는 IGMP 스누핑 기능을 사용하도록 설정할 필요가 없습니다. 따라서 유니캐스트 및 하이브리드 모드는 물리적 네트워크에서 NSX를 분리합니다. 유니캐스트 제어부 모드의 VXLAN은 더 이상 물리적 네트워크가 논리적 스위치 내의 BUM(브로드캐스트, 알 수 없는 유니캐스트 및 멀티캐스트) 트래픽을 처리하기 위한 멀티캐스트를 지원하도록 요구하지 않습니다. 유니캐스트 모드에서는 모든 BUM 트래픽을 호스트에서 로컬로 복제하므로 물리적 네트워크 구성이 필요 없습니다. 하이브리드 모드에서는 성능 개선을 위해 일부 BUM 트래픽 복제가 첫 번째 홉 물리적 스위치로 오프로드됩니다. 하이브리드 모드에서는 첫 번째 홉 스위치에서 IGMP 스누핑과 각 VTEP 서브넷의 IGMP 쿼리 발송기에 대한 액세스 권한이 필요합니다.