멀티테넌트를 지원하는 컨테이너 기반의 SaaS 환경을 만들고 있다. 하나의 컨테이너 인스턴스에 여러 개의 SaaS 컨테이너가 네트워크 자원을 공유두고 경쟁을 한다. 따라서 SaaS 별로 트래픽을 제어 할 필요가 있다. OpenVSwitch의 QoS Policing를 이용해서 트래픽 대역폭을 제어하는 방법을 살펴보려 한다.
환경
VirtualBox로 VM을 하나 만들어서 여기에 docker를 설치했다. docker의 기본 네트워크는 리눅스 브릿지인데, 이걸 OpenVSwitch로 바꿨다. 테스트 환경은 아래와 같 구성했다.
OVS 브릿지를 만들고, 두 개의 가상 네트워크 디바이스(veth)를 만들어서 브릿지와 컨테이너를 연결 한다. 컨테이너와 가상머신에는 iperf를 설치해서 네트워크 대역폭을 측정한다. 두 개의 물리적인 호스트를 사이에 두고 테스트하면 좋겠으나, 기능에 대한 테스트는 이것으로 충분하다.
OpenVSwitch에서의 QoS Policing
환경
OVS 브릿지 네트워크 구성
QoS Policing 설정
테스트
iperf 설치
QoS Policing 설정이 없는 상태
QoS Policing 적용
참고
Recent Posts
Archive Posts
Tags