GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren und verwenden Sie Open vSwitch mit KVM unter CentOS 7 / RHEL 7

Öffnen Sie vSwitch ist ein kostenloser und quelloffener Multi-Layer-Software-Switch, der verwendet wird, um den Datenverkehr zwischen virtuellen Maschinen und physischen oder logischen Netzwerken zu verwalten. Es bietet Funktionen wie Traffic-Isolation in OpenStack-Mandanten mit Overlay-Techniken wie GRE , VXLAN und 802.1Q-VLANs .

Die Verwendung einer offenen vSwitch-Paketweiterleitungs-Engine im Kernel-Space oder im User-Space kann implementiert werden und die Link-Aggregation kann auch über LACP erreicht werden .

In diesem Artikel besprechen wir, wie Sie die neueste Version von Open vSwitch 2.9.2 auf CentOS 7 und RHEL 7 Server installieren. Außerdem werden wir sehen, wie Open vSwitch in virtuellen KVM-Maschinen für deren Vernetzung verwendet werden kann.

Lesen Sie mehr zu: So installieren und konfigurieren Sie KVM auf einem Ubuntu 18.04 LTS-Server

Ich gehe davon aus, dass Sie bereits einen CentOS 7- oder RHEL 7-Server mit KVM konfiguriert haben. Open vswitch (OVS) 2.0 ist in den standardmäßigen Yum-Repositories von CentOS 7 und RHEL 7 verfügbar, aber wenn Sie die neueste Version von Open vSwitch installieren, lesen Sie die folgenden Schritte.

Schritt 1) ​​Installieren Sie die erforderlichen Pakete mit dem Befehl yum

Melden Sie sich bei Ihrem CentOS 7- oder RHEL 7-Server an und führen Sie den folgenden Befehl yum aus,

[[email protected] ~]# yum install wget openssl-devel  python-sphinx gcc make python-devel openssl-devel kernel-devel graphviz kernel-debug-devel autoconf automake rpm-build redhat-rpm-config libtool python-twisted-core python-zope-interface PyQt4 desktop-file-utils libcap-ng-devel groff checkpolicy selinux-policy-devel -y

Schritt 2) Erstellen Sie einen ovs-Benutzer und laden Sie Open vSwitch 2.9 herunter

Erstellen Sie einen Benutzer mit dem Namen ovs mit dem folgenden Befehl

[[email protected] ~]# useradd ovs
[[email protected] ~]# su - ovs
[[email protected] ~]$

Laden Sie die OVS 2.9-Tar-Datei herunter und erstellen Sie die openvswitch-RPM mit den folgenden Befehlen,

[email protected] ~]$ mkdir -p ~/rpmbuild/SOURCES
[[email protected] ~]$ wget http://openvswitch.org/releases/openvswitch-2.9.2.tar.gz
[[email protected] ~]$ cp openvswitch-2.9.2.tar.gz ~/rpmbuild/SOURCES/
[[email protected] ~]$ tar xfz openvswitch-2.9.2.tar.gz
[[email protected] ~]$ rpmbuild -bb --nocheck openvswitch-2.9.2/rhel/openvswitch-fedora.spec
[[email protected] ~]$ exit
logout
[[email protected] ~]#

Installieren Sie nun Open vSwitch rpm mit dem folgenden yum-Befehl,

[[email protected] ~]# yum localinstall /home/ovs/rpmbuild/RPMS/x86_64/openvswitch-2.9.2-1.el7.x86_64.rpm -y

Schritt 3) Starten und aktivieren Sie den Open vSwitch Service

Verwenden Sie die folgenden systemctl-Befehle, um den offenen vSwitch-Dienst zu starten und zu aktivieren

[[email protected] ~]# systemctl start openvswitch.service
[[email protected] ~]# systemctl enable openvswitch.service
Created symlink from /etc/systemd/system/multi-user.target.wants/openvswitch.service to /usr/lib/systemd/system/openvswitch.service.
[[email protected] ~]# systemctl status openvswitch.service
● openvswitch.service - Open vSwitch
Loaded: loaded (/usr/lib/systemd/system/openvswitch.service; enabled; vendor preset: disabled)
Active: active (exited) since Sun 2018-08-05 10:16:12 EDT; 17s ago
Main PID: 73958 (code=exited, status=0/SUCCESS)
Aug 05 10:16:12 compute02 systemd[1]: Starting Open vSwitch...
Aug 05 10:16:12 compute02 systemd[1]: Started Open vSwitch.
[[email protected] ~]#

Verwenden Sie den folgenden Befehl, um die OVS-Version zu überprüfen

[[email protected] ~]# ovs-vsctl -V
ovs-vsctl (Open vSwitch) 2.9.2
DB Schema 7.15.1
[[email protected] ~]#

Schritt:4 Erstellen Sie die OVS-Bridge und fügen Sie ihr Schnittstellen hinzu.

Verwenden Sie den folgenden Befehl, um eine Ovs-Brücke zu erstellen,

[[email protected] ~]# ovs-vsctl add-br ovs-br0

Spülen oder entfernen Sie jetzt die IP von der Schnittstelle, in meinem Fall die IP, die eno16777736 zugewiesen wurde

[[email protected] ~]# ip addr flush dev eno16777736

Weisen Sie nun diese IP-Adresse ovs bridge(ovs-br0)

zu
[[email protected] ~]# ip addr add 192.168.1.4/24 dev ovs-br0

Fügen Sie die Schnittstelle als Port in ovs-br0 mit dem folgenden Befehl hinzu,

[[email protected] ~]# ovs-vsctl add-port ovs-br0 eno16777736

Rufen Sie nun die Bridge mit dem folgenden Befehl „ip link“ auf,

[[email protected] ~]# ip link set dev ovs-br0 up

Hinweis: Die obigen Änderungen sind nicht persistent, also machen Sie diese Änderungen über den Neustart hinweg persistent, wir müssen eine OWS-Bridge-Datei erstellen, die Schritte sind unten gezeigt

[[email protected] ~]# cd /etc/sysconfig/network-scripts/
[[email protected] network-scripts]# cp ifcfg-eno16777736 ifcfg-ovs-br0
[[email protected] network-scripts]#
[[email protected] network-scripts]# vi ifcfg-eno16777736
DEVICE=eno16777736
HWADDR="00:0c:29:c1:c3:4e"
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=ovs-br0
ONBOOT=yes

Speichern und beenden Sie die Datei

[[email protected] network-scripts]# vi ifcfg-ovs-br0
DEVICE=ovs-br0
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=192.168.1.4
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes

Speichern und beenden Sie die Datei

Starten Sie den Netzwerkdienst mit dem folgenden Befehl neu,

[[email protected] network-scripts]# systemctl restart network

Überprüfen Sie nun die ovs Bridge und ihre Ports mit „ovs-vsctl ” Befehl

[[email protected] ~]# ovs-vsctl show
8dc5f8e7-0e54-4d9d-ba7a-cd6b9b94f470
    Bridge "ovs-br0"
        Port "ovs-br0"
            Interface "ovs-br0"
                type: internal
        Port "eno16777736"
            Interface "eno16777736"
    ovs_version: "2.9.2"
[[email protected] ~]#

Schritt:5 ) Erstellen und definieren Sie das virsh ovs-Netzwerk

Erstellen Sie eine ovs-Netzwerkdatei mit folgendem Inhalt ,

[[email protected] ~]# vi /tmp/ovs-network.xml
<network>
<name>ovs-network</name>
<forward mode='bridge'/>
<bridge name='ovs-br0'/>
<virtualport type='openvswitch'/>
</network>

Definieren Sie nun das ovs-Netzwerk mit dem folgenden virsh-Befehl,

[[email protected] ~]# virsh net-define /tmp/ovs-network.xml
Network ovs-network defined from /tmp/ovs-network.xml
[[email protected] ~]# virsh net-start ovs-network
Network ovs-network started
[[email protected] ~]# virsh net-autostart ovs-network
Network ovs-network marked as autostarted
[[email protected] ~]#

Überprüfen Sie nun das virsh-Netzwerk mit dem folgenden Befehl,

[[email protected] ~]# virsh net-list
 Name                 State      Autostart     Persistent
----------------------------------------------------------
 default              active     yes           yes
 ovs-network          active     yes           yes
[[email protected] ~]#

Schritt:6) Virtuelle Maschinen erstellen und ovs-network anhängen

Lassen Sie uns zwei Test-VMs mit dem folgenden virt-install-Befehl erstellen, geben Sie das Netzwerk für diese VMs als ovs-network an,

[[email protected] ~]# virt-install  -n testvm1  --description "Test VM1 for OVS "  --os-type=Linux  --os-variant=rhel7  --ram=1096  --vcpus=1  --disk path=/var/lib/libvirt/images/testvm1.img,bus=virtio,size=10  --network network:ovs-network --graphics none  --location /root/CentOS-7-x86_64-DVD-1511.iso --extra-args console=ttyS0

Erstellen Sie auf ähnliche Weise eine zweite Test-VM mit dem Namen „testvm2“

[[email protected] ~]# virt-install  -n testvm2  --description "Test VM2 for OVS "  --os-type=Linux  --os-variant=rhel7  --ram=1096  --vcpus=1  --disk path=/var/lib/libvirt/images/testvm2.img,bus=virtio,size=10  --network network:ovs-network --graphics none  --location /root/CentOS-7-x86_64-DVD-1511.iso --extra-args console=ttyS0

Sobald die VMs erstellt sind, sollten ihre Schnittstellen automatisch in ovs bridge (ov-br0) hinzugefügt werden, und wir können dies mit dem Befehl ovs-vsctl überprüfen,

[[email protected] ~]# ovs-vsctl show
8dc5f8e7-0e54-4d9d-ba7a-cd6b9b94f470
    Bridge "ovs-br0"
        Port "ovs-br0"
            Interface "ovs-br0"
                type: internal
        Port "eno16777736"
            Interface "eno16777736"
        Port "vnet0"
            Interface "vnet0"
        Port "vnet1"
            Interface "vnet1"
    ovs_version: "2.9.2"
[[email protected] ~]# ovs-vsctl list-ports ovs-br0
eno16777736
vnet0
vnet1
[[email protected] ~]#

Im obigen Befehl vnet0 &vnet1 sind VMs Tap-Schnittstelle. Wenn wir diese VMS herunterfahren, werden diese Ports automatisch von OVS Bridge (ovs-br0) entfernt. Protokolldateien für ovs (openvswitch) werden im Ordner „/var/log/openvswitch gespeichert “.

Ich hoffe, Sie haben zum Abschluss dieses Artikels eine Vorstellung davon bekommen, wie Sie Open vSwitch 2.9 mit KVM auf CentOS 7- und RHEL 7-Servern installieren und verwenden. Wenn Ihnen der Artikel gefällt, teilen Sie uns bitte Ihr Feedback und Ihre Kommentare mit.


Cent OS
  1. So installieren Sie KVM auf RHEL 8 / CentOS 8

  2. So installieren und verwenden Sie Curl unter CentOS 8

  3. So installieren Sie ownCloud auf CentOS 7

  4. Installieren Sie KVM Hypervisor auf CentOS 7.x und RHEL 7.x

  5. So installieren Sie Kolab 16 Groupware Server auf CentOS 7 / RHEL 7

So installieren und konfigurieren Sie HAProxy unter CentOS 8 / RHEL 8

So installieren Sie Kubernetes (k8s) mit Minikube unter CentOS 8

So installieren und verwenden Sie Fail2ban unter RHEL 8 / CentOS 8

So installieren Sie Ansible AWX mit Docker unter CentOS 7

So installieren und verwenden Sie Ruby on Rails mit PostgreSQL unter CentOS 7

So installieren und verwenden Sie Firewalld in CentOS / RHEL