Citrix ADC

ov DPDKベースのホストインターフェイスを使用するように,KVM上のCitrix ADC VPXインスタンスを構成する

KVM (Fedoraおよび罗斯)で実行されているCitrix ADC VPXインスタンスを,データプレーン開発キット(DPDK)とともにOpen vSwitch (ov)を使用するように設定することで,ネットワークパフォーマンスを向上させることができます。このドキュメントでは,kvmホスト上のovs-dpdkによって公開されるvhost-userポ,トで動作するようにCitrix ADC VPX,转换器VPX,转换器VPX,转换器VPX,转换器VPX,转换器VPX,转换器VPX。

机汇は,オ:Apache 2.0ラ:ッチです。DPDKは,高速パケット処理のためのラaaplブラリとドラaaplバのセットです。

以下のバージョンのFedora,罗斯,ov,およびDPDKは,Citrix ADC VPXインスタンスを設定するために認定されています。

Fedora 罗斯
Fedora 25 罗斯7.4
ov 2.7.0 ov 2.6.1
DPDK 16.11.12 DPDK 16.11.12

前提条件

dpdkをンストルする前に,ホストに1gbの巨大なペジがあることを確認してください。

詳細にいては,このDPDKシステム要件ドキュメントを参照してください。ov DPDKベースのホストインターフェイスを使用するようにKVMでCitrix ADC VPXインスタンスを構成するために必要な手順の概要は次のとおりです。

  • dpdkを@ @ンスト@ @ルします。
  • ovsを構築し,etc . ovsンスト,etc . ovsルします。
  • ovsブリッジを作成します。
  • ovsブリッジに物理ンタフェスを接続します。
  • ovsデタパスにvhost-userポ,トを接続します。
  • ovs-dpdkベ,スのvhost-userポ,トでkvm-vpxをプロビジョニングします

DPDKの@ @ンスト@ @ル

DPDKをiphonesンストルするには,この使用DPDK打开vSwitchドキュメントに記載されている指示に従ってください。

Ovsのビルドとンストル

机汇のダウンロ,ドペ,ジからovsをダウンロ,ドします。次に,dpdkデタパスを使用してovsをビルドおよびンストルします。「打开vSwitchのaapl . cerンスト. cerルドキュメントに記載されている手順に従います。

詳細にいては,”DPDK入門ガaapl . exeドfor Linuxを参照してください。

Ovsブリッジの作成

必要に応じて,Fedoraコマンドかrosコマンドを入力して,OVSブリッジを作成します。

Fedoraコマンド

> $OVS_DIR/utilities/ovs-vsctl add-br ovs-br0——set bridge ovs-br0 datapath_type=netdev 

罗斯コマンド

—set bridge ov -br0 datapath_type=netdev 

物理▪▪ンタ▪フェ▪▪スをovsブリッジに接続します

ポートをDPDKにバインドし,次のFedoraまたは罗斯コマンドを入力してovブリッジにアタッチします。

Fedoraコマンド

> $OVS_DIR/utilities/ovs-vsctl add-port ovs-br0 dpdk0——set Interface dpdk0 type=dpdk options:dpdk-devargs=0000:03:00.0 > $OVS_DIR/utilities/ovs-vsctl add-port ovs-br0 dpdk1——set Interface dpdk1 type=dpdk options:dpdk-devargs=0000:03:00.1 

罗斯コマンド

ovs-vsctl add-port ovs-br0 dpdk0——set Interface dpdk0 type=dpdk options:dpdk-devargs=0000:03:00.0 ovs-vsctl add-port ovs-br0 dpdk1——set Interface dpdk1 type=dpdk options:dpdk-devargs=0000:03:00.1 

オプションの一部として表示されるdpdk-devargsは,それぞれの物理网卡のpci bdfを指定します。

ovsデタパスにvhost-userポ,トを接続する

ovsデタパスにvhost-userポ,トを接続するには,次のFedoraまたはrosコマンドを入力します。

Fedoraコマンド

> $OVS_DIR/utilities/ovs-vsctl add-port ovs-br0 vhost-user1——set Interface vhost-user1 type=dpdkvhostuser——set Interface vhost-user1 mtu_request=9000 > $OVS_DIR/utilities/ovs-vsctl add-port ovs- user0 vhost- user0——set Interface vhost-user2 type=dpdkvhostuser——set Interface vhost-user2 mtu_request=9000 chmod g+w /usr/local/var/run/openvswitch/vhost* 

罗斯コマンド

ovs-vsctl add-port ovs-br0 vhost-user1——set Interface vhost-user1 type=dpdkvhostuser——set Interface vhost-user1 mtu_request=9000 ovs-vsctl add-port ovs-br0 vhost-user2——set Interface vhost-user2 type=dpdkvhostuser——set Interface vhost-user2 mtu_request=9000 chmod g+w /var/run/openvswitch/vhost* 

ovs-dpdkベ,スのvhost-userポトを持kvm-vpxのプロビジョニング

次のqemuコマンドを使用して,cliからのみovs-dpdkベ,スのvhost-userポトを持Fedora KVM上のVPXンスタンスをプロビジョニングできます。Fedoraコマンド

qemu-system-x86_64 -name KVM-VPX -cpu host -enable-kvm -m 4096M \ -object memory-backend-file,id=mem,size=4096M,mem-path=/dev/hugepages,share=on -numa node,memdev=mem \ -mem-prealloc -smp sockets=1,cores=2 -drive file=,if=none,id=drive-ide0-0-0,format=< disk -image-format> \ -device ide-drive,bus=ide。0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=1 \ -netdev type=tap,id=hostnet0,script=no,downscript=no,vhost=on \ -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:0:3c:d1:ae,bus=pci。0,addr=0x3 \ -chardev socket,id=char0,path= \ -netdev type=vhost-user,id=mynet1,chardev=char0,vhostforce -device virtio-net-pci,mac=00:00:00:00:00:01,netdev=mynet1,mrg_rxbuf=on \ -chardev socket,id=char1,path= \ -netdev type=vhost-user,id=mynet2,chardev=char1,vhostforce -device virtio-net pci,mac= 00:00:00:00:02,netdev=mynet2,mrg_rxbuf=on \——nographic 

rosの場合は,xml次のサンプルvirshを使用してCitrix ADC VPX耳机ンスタンスをプロビジョニングします。

 dpdk-vpx1 aedb844b-f6bc-48e6-a4c6-36577f2d68d6 16777216      6  4096        /machine   hvm        Haswell-noTSX Intel      dpdk-vpx1 aedb844b-f6bc-48e6-a4c6-36577f2d68d6 16777216 16777216      6  4096          /machine           <型号后退='allow'>Haswell-noTSX Intel            <时钟offset='utc'/> destroy restartdestroy  <模拟器>/usr/libexec/qemu-kvm     
< Address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> < Address type=' 0x0000' bus='0x00' slot='0x04' function='0x0'/>
<源类型='unix' path='/var/run/openvswitch/vhost-user4' mode='客户端'/> <模型类型='virtio'/> <地址类型='pci'域='0x0000'总线='0x00' slot='0x09'函数='0x0'/> <串行类型='pty'> <目标端口='0'/> <控制台类型='pty'> <目标类型='串行'端口='0'/> <输入类型='鼠标'总线='ps2'/> <输入类型='键盘'总线='ps2'/> <图形类型='vnc'端口='-1' autoport='yes'> <监听类型='地址'/> <视频> <模型 type='cirrus' vram='16384' heads='1' primary='yes'/>

注意事項

xmlファ电子邮箱ルでは,サンプルファ电子邮箱ルに示されているように,hugepageサesc escズは1gbである必要があります。

    

また、サンプルファ▪▪ルでは、vhost-user1はovs-br0にバ▪▪ンドされたvhostユ,ザ,ポ,トです。

    

Citrix ADC VPX商城ンスタンスを起動するには,virshコマンドの使用を開始します。

ov DPDKベースのホストインターフェイスを使用するように,KVM上のCitrix ADC VPXインスタンスを構成する