차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
openvswitch를_통한_vxlan_구성 [2021/07/04 13:58] – [참고문서] koovopenvswitch를_통한_vxlan_구성 [2021/07/05 14:31] (현재) koov
줄 161: 줄 161:
 </code> </code>
 </WRAP> </WRAP>
 +<WRAP center round important>
 +VxLAN을 이용한 libvirt Virtual Network를 생성할때 반드시 ''MTU''설정에 유의해야 한다. VxLAN자체에서 사용되는 헤더 사이즈로 인해 MTU를 1500 기본으로 사용하게 되면 정상적인 속도가 나오지 않는다는점 염두해두도록 한다. 따라서 VxLAN의 기반이 되는 Underlay network는 기본적으로 JumboFrame을 설정하는 것이 좋다.
 +</WRAP>
 +
  
 생성한 xml을 이용하여 libvirt Virtual Network를 생성한다. 생성한 xml을 이용하여 libvirt Virtual Network를 생성한다.
줄 175: 줄 179:
 이후 GuestVM에 해당 vxnet0 네트워크 인터페이스를 할당하면 된다. 이후 GuestVM에 해당 vxnet0 네트워크 인터페이스를 할당하면 된다.
  
 +===== NetworkManager-ovs 를 통한 vxlan 구성 =====
  
 +<WRAP prewrap>
 +<code bash>
 +nmcli conn add type ovs-bridge conn.interface ovs-sw0
 +nmcli conn add type ovs-port conn.interface ovs-sw0 master ovs-sw0
 +nmcli conn add type ovs-interface slave-type ovs-port conn.interface ovs-sw0 master ovs-sw0 ipv4.method manual ipv4.address 10.100.0.1/24
 +
 +ovs-vsctl add-port ovs-sw0 vxlan0 -- set Interface vxlan0 type=vxlan options:remote_ip=192.168.0.102
 +</code>
 +</WRAP>
 +
 +<WRAP center round important>
 +위 예제에서도 보이듯이 ''ovs-bridge''와 ''ovs-port'', ''ovs-interface'' 모든 interface의 name을 동일하게 맞춰줘야 한다.
 +그렇지 않다면 kvm virtual network 에서 정확한 정보를 가져오지 못해 vm의 network interface port 할당이 제대로 되지 않아 부팅에 실패하게 된다.
 +</WRAP>
 +
 +
 +===== linux network-script 를 이용한 영구 설정 =====
 +영구적으로 적용하려면 linux network script로 작성하면 된다.
 +
 +<WRAP prewrap>
 +<code bash>
 +[root@kvm31 network-scripts]# vim /etc/sysconfig/network-scripts/ifcfg-ovsbr0
 +DEVICE=ovsbr0
 +ONBOOT=yes
 +DEVICETYPE=ovs
 +TYPE=OVSBridge
 +BOOTPROTO=static
 +IPV6INIT=no
 +DELAY=0
 +IPADDR=10.10.10.1
 +PREFIX=8
 +HOTPLUG=no
 +</code>
 +</WRAP>
 +
 +만약 포트를 추가하고 싶은경우 아래와 같이 인터페이스를 생성한다.
 +아래는 물리NIC를 포트에 연결하는 예제이다.
 +
 +<WRAP prewrap>
 +<code bash>
 +[root@kvm31 network-scripts]# vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
 +HWADDR="00:0C:29:62:F9:D3"
 +TYPE="OVSPort"
 +DEVICETYPE="ovs"
 +OVS_BRIDGE="ovsbr0"
 +BOOTPROTO="none"
 +NAME="eno16777736"
 +UUID="5cc31ab7-c26d-48b6-89f2-a7c933d53cb8"
 +ONBOOT="yes"
 +NM_CONTROLLED="no"
 +</code>
 +</WRAP>
 +
 +vxlan interface 추가는 아래와 같다.
 +<WRAP prewrap>
 +<code bash>
 +DEVICE=vxnet0
 +ONBOOT=yes
 +DEVICETYPE=ovs
 +TYPE=OVSTunnel
 +OVS_BRIDGE=ovsbr0
 +OVS_TUNNEL_TYPE=vxlan
 +OVS_TUNNEL_OPTIONS="options:remote_ip=192.168.0.31"
 +</code>
 +</WRAP>
  
 +상세설정은 [[ovs for legacy network-script]] 페이지를 참조한다.
 ===== 참고문서 ===== ===== 참고문서 =====
   * https://bryan.wiki/277   * https://bryan.wiki/277
  • openvswitch를_통한_vxlan_구성.1625407100.txt.gz
  • 마지막으로 수정됨: 2021/07/04 13:58
  • 저자 koov