79dcbc74cd
It is packaging responsibility to put libs in the right place. Use of lib64 resulted in huge amount of files with hardcoded lib64. This patch simplifies things... Change-Id: Iab0dea0583e480907732c5d2379eb951a00fa9e6 Signed-off-by: Damjan Marion <damarion@cisco.com>
75 lines
2.3 KiB
ReStructuredText
75 lines
2.3 KiB
ReStructuredText
.. _runningvpp:
|
|
|
|
Running VPP
|
|
===========
|
|
|
|
Using the files we create in :ref`settingupenvironment` we will now start and
|
|
run VPP.
|
|
|
|
VPP runs in userspace. In a production environment you will often run it
|
|
with DPDK to connect to real NICs or vhost to connect to VMs. In those
|
|
circumstances you usually run a single instance of VPP.
|
|
|
|
For purposes of this tutorial, it is going to be extremely useful to run
|
|
multiple instances of VPP, and connect them to each other to form a
|
|
topology. Fortunately, VPP supports this.
|
|
|
|
|
|
Using the files we created in setup we will start VPP.
|
|
|
|
.. code-block:: console
|
|
|
|
$ sudo /usr/bin/vpp -c startup1.conf
|
|
vlib_plugin_early_init:361: plugin path /usr/lib/vpp_plugins:/usr/lib/vpp_plugins
|
|
load_one_plugin:189: Loaded plugin: abf_plugin.so (ACL based Forwarding)
|
|
load_one_plugin:189: Loaded plugin: acl_plugin.so (Access Control Lists)
|
|
load_one_plugin:189: Loaded plugin: avf_plugin.so (Intel Adaptive Virtual Function (AVF) Device Plugin)
|
|
.........
|
|
$
|
|
|
|
If VPP does not start you can try adding **nodaemon** to the startup.conf file in the
|
|
**unix** section. This should provide more information in the output.
|
|
|
|
startup.conf example with nodaemon:
|
|
|
|
.. code-block:: console
|
|
|
|
unix {nodaemon cli-listen /run/vpp/cli-vpp1.sock}
|
|
api-segment { prefix vpp1 }
|
|
plugins { plugin dpdk_plugin.so { disable } }
|
|
|
|
The command **vppctl** will launch a VPP shell with which you can run
|
|
VPP commands interactively.
|
|
|
|
We should now be able to execute the VPP shell and show the version.
|
|
|
|
.. code-block:: console
|
|
|
|
$ sudo vppctl -s /run/vpp/cli-vpp1.sock
|
|
_______ _ _ _____ ___
|
|
__/ __/ _ \ (_)__ | | / / _ \/ _ \
|
|
_/ _// // / / / _ \ | |/ / ___/ ___/
|
|
/_/ /____(_)_/\___/ |___/_/ /_/
|
|
|
|
vpp# show version
|
|
vpp v18.07-release built by root on c469eba2a593 at Mon Jul 30 23:27:03 UTC 2018
|
|
vpp#
|
|
|
|
.. note::
|
|
|
|
Use ctrl-d or q to exit from the VPP shell.
|
|
|
|
If you are going to run several instances of VPP this way be sure to kill them
|
|
when you are finished.
|
|
|
|
You can use something like the following:
|
|
|
|
.. code-block:: console
|
|
|
|
$ ps -eaf | grep vpp
|
|
root 2067 1 2 05:12 ? 00:00:00 /usr/bin/vpp -c startup1.conf
|
|
vagrant 2070 903 0 05:12 pts/0 00:00:00 grep --color=auto vpp
|
|
$ kill -9 2067
|
|
$ ps -eaf | grep vpp
|
|
vagrant 2074 903 0 05:13 pts/0 00:00:00 grep --color=auto vpp
|