OnWorks Linux dan Windows Online Workstations

logo

Pengehosan Dalam Talian Percuma untuk Workstation

<Sebelum | Contents [show] | Seterusnya>

5.5. OpenVswitch-DPDK


Sebagai perpustakaan, ia tidak melakukan banyak perkara dengan sendirinya, jadi ia bergantung pada projek baru muncul yang menggunakannya. Seorang pengguna pustaka yang telah pun disertakan dalam keluaran Ubuntu 16.04 ialah OpenVswitch dengan sokongan DPDK dalam pakej openvswitch-switch-dpdk.

Berikut contoh cara memasang dan mengkonfigurasi OpenVswitch asas menggunakan DPDK untuk kegunaan kemudian melalui libvirt/qemu-kvm.


sudo apt-get install openvswitch-switch-dpdk

sudo update-alternatives --set ovs-vswitchd /usr/lib/openvswitch-switch-dpdk/ovs-vswitchd- dpdk

echo "DPDK_OPTS='--dpdk -c 0x1 -n 4 -m 2048 --vhost-owner libvirt-qemu:kvm --vhost-perm 0664'" | sudo tee -a /etc/default/openvswitch-switch

perkhidmatan sudo openvswitch-switch mulakan semula


Sila ingat bahawa anda perlu menetapkan peranti kepada pemacu yang serasi dengan DPDK (lihat di atas) sebelum memulakan semula.


Bahagian itu --vhost-owner libvirt-qemu:kvm --vhost-perm 0664 akan menetapkan port vhost_user dengan pemilik/ kebenaran agar serasi dengan cara Ubuntu menjalankan qemu-kvm/libvirt dengan keistimewaan yang dikurangkan untuk lebih keselamatan.

Sila ambil perhatian bahawa bahagian -m 2048 ialah tetapan numa paling asas untuk sistem soket tunggal. Jika anda mempunyai berbilang soket, anda mungkin mahu menentukan cara membahagikan memori anda di antara mereka, sebagai contoh -m 1024, 1024. Harap maklum bahawa DPDK akan cuba berfungsi hanya dengan memori tempatan kepada kad rangkaian yang berfungsi dengannya (atas sebab prestasi). Yang berkata jika anda mempunyai berbilang nod, tetapi semua kad rangkaian pada satu, anda harus mempertimbangkan untuk menyebarkan kad anda. Jika tidak sekurang-kurangnya peruntukkan memori anda kepada nod tempat kad berada, contohnya dalam dua nod semua kepada nod #2: -m 0, 2048. Anda boleh menggunakan alat tersebut lstopo daripada pakej hwloc-nox untuk melihat pada soket mana kad anda berada.

OpenVswitch yang anda mulakan kini menyokong semua jenis port yang biasa dilakukan OpenVswitch, serta jenis port DPDK. Di sini contoh cara membuat jambatan dan - bukannya port luaran biasa - tambah port DPDK luaran padanya.


ovs-vsctl add-br ovsdpdkbr0 -- set bridge ovsdpdkbr0 datapath_type=netdev ovs-vsctl add-port ovsdpdkbr0 dpdk0 -- set Interface dpdk0 type=dpdk



gambar

Pendayaan DPDK dalam Open vSwitch telah berubah dalam versi 2.6. Jadi untuk pengguna keluaran

>=16.10, tetapi juga untuk pengguna Arkib Awan Ubuntu37 >=neutron pembolehan telah berubah berbanding dengan pengguna Ubuntu 16.04. Pilihan yang dahulunya diluluskan melalui DPDK_OPTS kini dikonfigurasikan melalui ovs-vsctl ke dalam pangkalan data konfigurasi Open vSwitch.


Contoh yang sama seperti di atas akan dalam cara baharu kelihatan seperti:


gambar

37 https://wiki.ubuntu.com/OpenStack/CloudArchive



# Dayakan DPDK

ovs-vsctl set Open_vSwitch . "other_config:dpdk-init=true"

# dijalankan pada teras 0

ovs-vsctl set Open_vSwitch . "other_config:dpdk-lcore-mask=0x1"

# Peruntukkan halaman besar 2G (tidak sedar nod Numa)

ovs-vsctl set Open_vSwitch . "other_config:dpdk-alloc-mem=2048"

# kumpulan/kebenaran untuk soket pengguna vhost (diperlukan untuk berfungsi dengan libvirt/qemu) set ovs-vsctl Open_vSwitch . \

"other_config:dpdk-extra=--vhost-owner libvirt-qemu:kvm --vhost-perm 0666"


Sila lihat dokumentasi huluan yang berkaitan dan halaman manual konfigurasi vswitch seperti yang disediakan oleh pakej untuk butiran lanjut:

/usr/share/doc/openvswitch-common/INSTALL.DPDK.md.gz

/usr/share/doc/openvswitch-common/INSTALL.DPDK-ADVANCED.md.gz

man ovs-vswitchd.conf.db


Pengkomputeran Awan OS teratas di OnWorks: