여러 서버에 걸쳐 가상 서브넷을 만드는 방법은 무엇입니까?

여러 서버에 걸쳐 가상 서브넷을 만드는 방법은 무엇입니까?

가상 머신을 호스팅하는 CentOS 7 서버가 있습니다. 가상 머신은 해당 호스트의 네트워크 브리지에 연결되어 호스트의 가상 어댑터를 통해 서로 통신하거나 호스트와 통신할 수 있습니다. 각 호스트에는 외부 통신을 허용하는 물리적 어댑터도 있습니다. 브리지는 물리적 어댑터에 연결되어서는 안 됩니다.

다이어그램은 현재 레이아웃을 명확하게 표시해야 합니다. 서브넷 A는 호스트를 서로 연결합니다. 서브넷 B는 호스트 1 내에 완전히 존재합니다. 서브넷 C는 호스트 2 내에 완전히 존재합니다. VM에는 서브넷 A에 주소가 없어야 합니다.

현재 네트워크 레이아웃

모든 가상 머신이 동일한 주소 공간과 브로드캐스트 도메인을 공유하도록 두 개의 브리지를 가상 서브넷에 결합하고 싶습니다. 이를 수행할 수 있는 방법이 있습니까? 목표는 다음과 같습니다.

필수 네트워크 레이아웃

VM에는 자체 서브넷에 속해야 하는 CloudStack "공용" IP 주소가 있습니다. 가상 머신은 서브넷 A와 동일한 주소 공간에 있어서는 안 됩니다. CloudStack 공용 IP 범위는 영역 수준에서 정의되므로 동일한 Pod는 물론 VM이 모두 동일한 서브넷에 있어야 동일한 영역에 있어야 합니다. 호스트는 서브넷 간에 트래픽을 라우팅할 수 있습니다. 호스트에 더 많은 서브넷 A 주소를 추가할 수 없으며 호스트에서 NAT를 사용할 수도 없습니다. 서브넷 A에도 VLAN을 설정할 수 없습니다. 대부분의 경우 서브넷 A는 내가 제어할 수 없습니다.

답변1

vxlan을 사용하여 오버레이 네트워크를 생성함으로써 이 문제를 해결할 수 있었습니다. 각 호스트에 vxlan 어댑터를 추가하고 어댑터를 호스트의 브리지에 연결했습니다. 호스트 중 하나는 라우터 역할을 하여 vxlan 서브넷을 나머지 네트워크에 연결합니다.

관련 정보