Установка OpenvSwitch в CentOS 7

Установка OpenvSwitch в CentOS 7

Roman Bogachev VMware Specialist | Drone Pilot | Traveler

Open vSwitch — программный многоуровневый коммутатор с открытым исходным текстом, предназначенный для работы в гипервизорах и на компьютерах с виртуальными машинами.

Основные возможности коммутатора:

  • Учёт трафика, в том числе проходящего между виртуальными машинами с использованием SPAN/RSPAN, sFlow[en] и Netflow.
  • Поддержка VLAN (IEEE 802.1q).
  • Привязка к конкретным физическим интерфейсам и балансировка нагрузки по исходящим MAC-адресам.
  • Работа на уровне ядра, поддержка существующих возможностей Linux по работе в качестве моста.
  • Поддерживает Openflow для управления логикой коммутации.

Помимо режима на уровне ядра, с меньшей производительностью open vSwitch может работать и с правами пользователя (вне ядра).

Основные области применения:

  • Замена обычных bridgetools.
  • Использование в составе Xen Server, Xen Cloud Platform, KVM, VirtualBox, QEMU, ProxMox (начиная с 2.3)
    Взято с Wikipedia

Добавлю ко всему вышесказанному механизм QoS, GRE-туннелирование, индивидуальные политики для виртуальных машин, а также возможность агрегации портов с распределением нагрузки.

Установка OpenvSwitch

Поскольку OpenvSwitch отсутствует в стандартных пакетах CentOS, то добавим дополнительный репозиторий RDO из которого произведем установку.

1
2
yum install https://rdoproject.org/repos/rdo-release.rpm
yum install openvswitch

Запускаем сервис

1
2
systemctl start openvswitch.service
systemctl enable openvswitch.service

Отключаем NetworkManager

1
2
3
4
systemctl disable NetworkManager
systemctl stop NetworkManager
systemctl enable network.service
systemctl start network.service

Настройка Bridge

Прежде всего создаем виртуальный коммутатор

1
ovs-vsctl add-br ovs-br0

И добвляем в него физический порт сервера:

1
ovs-vsctl add-port ovs-br0 eno16777984

Изменим конфигурацию на интерфейсах:

/etc/sysconfig/network-scripts/ifcfg-eno16777984

1
2
3
4
5
6
7
DEVICE="en016777984"
NM_CONTROLLED="yes"
ONBOOT="yes"
IPV6INIT=no
TYPE="OVSPort"
DEVICETYPE="OVSIntPort"
OVS_BRIDGE=ovs-br0

/etc/sysconfig/network-scripts/ifcfg-ovs-br0

1
2
3
4
5
6
7
8
9
10
11
DEVICE="ovs-br0"
NM_CONTROLLED="no"
PEERDNS=yes
ONBOOT="yes"
TYPE="OVSBridge"
BOOTPROTO="static"
IPADDR=192.168.2.67
NETMASK=255.255.255.0
GATEWAY=192.168.2.1
DNS1=192.168.2.6
HOTPLUG="no"

И перезапускаем сеть

1
systemctl restart network

На этом все. Более детальная информация по настройке будет представлена в других статьях.