2014년 6월 16일 월요일

neutron openvswitch plugin w/ nova libvirtgenericvif driver의 생성 순서

아래는 openvswitch plugin과 libvirtgenericvif driver 조합에서 vlan type을 이용할때 생성되는 과정을 그림으로 표현한 것이다.

1. 기본 상태:
우선 실제 물리 머신에 아래와 같이 vm을 위한 ethernet인 eth1이 존재한다.


2. 유저 생성 단계:
eth1에 연결된 br-eth1 bridge를 생성한다.
또한 gre, vlan등의 다양한 type들의 네트워크를 연결시켜 줄 수 있는 br-int bridge를 생성한다.

3. neutron openvswitch plugin 시작:
br-eth1과 br-int간의 bridge 연결을 위한 port를 생성하며 veth로 해당 port를 연결하고 해당 bridge에 기본적인 flow를 추가해 준다.

5. neutron openvswitch plugin에서 ovsdb-client monitoring을 통한 풀링:
br-int의 변화를 감지하여 해당 qvo port를 위한 vlan tagging을 해주며 이를 위한 flow를 br-int와 br-eth1에 추가한다.

6. vm 부팅:
vm이 시작하면서  libvirt의 xml파일안에 정의 되어 있는 qbr bridge에 tap port가 생성되어서 vm까지 네트워크가 완성된다.(이 xml은 이미 4번 단계에서 완성되어 있다.)


댓글 없음:

댓글 쓰기