From a5db42f366798034e464442c92a90529fc947f08 Mon Sep 17 00:00:00 2001 From: John DeNisco Date: Fri, 17 Aug 2018 14:25:15 -0400 Subject: docs: Moved installing up a level, removed guides. Change-Id: Ie4b2939b693698585f1f2d12391a0009e80bac0b Signed-off-by: John DeNisco --- docs/gettingstarted/index.rst | 19 +- docs/gettingstarted/installing/centos.rst | 247 ++++++++++++++++++++++ docs/gettingstarted/installing/index.rst | 50 +++++ docs/gettingstarted/installing/opensuse.rst | 57 +++++ docs/gettingstarted/installing/packages.rst | 85 ++++++++ docs/gettingstarted/installing/ubuntu.rst | 87 ++++++++ docs/gettingstarted/users/index.rst | 1 - docs/gettingstarted/users/installing/centos.rst | 247 ---------------------- docs/gettingstarted/users/installing/index.rst | 51 ----- docs/gettingstarted/users/installing/opensuse.rst | 57 ----- docs/gettingstarted/users/installing/packages.rst | 85 -------- docs/gettingstarted/users/installing/ubuntu.rst | 87 -------- docs/guides/api/index.rst | 19 -- docs/guides/api/jvpp.rst | 46 ---- docs/guides/index.rst | 10 - docs/index.rst | 1 - docs/reference/index.rst | 1 + docs/reference/jvpp.rst | 47 ++++ docs/usecases/index.rst | 1 - docs/usecases/uc_vSwitchvRouter.rst | 47 ---- 20 files changed, 586 insertions(+), 659 deletions(-) create mode 100644 docs/gettingstarted/installing/centos.rst create mode 100644 docs/gettingstarted/installing/index.rst create mode 100644 docs/gettingstarted/installing/opensuse.rst create mode 100644 docs/gettingstarted/installing/packages.rst create mode 100644 docs/gettingstarted/installing/ubuntu.rst delete mode 100644 docs/gettingstarted/users/installing/centos.rst delete mode 100644 docs/gettingstarted/users/installing/index.rst delete mode 100644 docs/gettingstarted/users/installing/opensuse.rst delete mode 100644 docs/gettingstarted/users/installing/packages.rst delete mode 100644 docs/gettingstarted/users/installing/ubuntu.rst delete mode 100644 docs/guides/api/index.rst delete mode 100644 docs/guides/api/jvpp.rst delete mode 100644 docs/guides/index.rst create mode 100644 docs/reference/jvpp.rst delete mode 100644 docs/usecases/uc_vSwitchvRouter.rst (limited to 'docs') diff --git a/docs/gettingstarted/index.rst b/docs/gettingstarted/index.rst index f29d17942e5..2efe372b4dc 100644 --- a/docs/gettingstarted/index.rst +++ b/docs/gettingstarted/index.rst @@ -5,16 +5,20 @@ Getting Started ###################### The Getting Started Guide is comprised of several different sections; a User section -that describes a basic installation and configuration of VPP (either manually or using -a config utility), another install for Developers, which contains additional code that -provides tools that are used in a development environment. +that describes a basic installation and configuration of VPP (either manually or +using a config utility), another install for Developers, which contains additional +code that provides tools that are used in a development environment. -The Users section covers basic VPP installation and configuration operations; this -section covers the following areas: +This section covers the following: -* Describes the different types of VPP packages, which are used in both basic and developer installs. * Describes how to manually install VPP Binaries on different OS platforms (Ubuntu, Centos, openSUSE) and then how to configure and use VPP. -* Explains how to use the Configuration Utility to install, and then configure VPP. +* Describes the different types of VPP packages, which are used in both basic and developer installs. +* A VPP tutorial which is a great way to learn VPP basics. + +The Users section covers configuration operations; this + +* How to configure and Run VPP manually. +* How to use the Configuration Utility to install, and then configure VPP. The Developers section covers the following areas: @@ -33,6 +37,7 @@ The Writing VPP Documentation section covers the following topics: .. toctree:: :maxdepth: 2 + installing/index.rst progressivevpp/index.rst users/index.rst developers/index.rst diff --git a/docs/gettingstarted/installing/centos.rst b/docs/gettingstarted/installing/centos.rst new file mode 100644 index 00000000000..dae24f6b4c8 --- /dev/null +++ b/docs/gettingstarted/installing/centos.rst @@ -0,0 +1,247 @@ +.. _centos: + +.. toctree:: + +Setup the fd.io Repository - Centos 7 +===================================== + +Update the OS +------------- + +Before starting the repository setup, it is a good idea to first update and upgrade +the OS; run the following command to update the OS: + +.. code-block:: console + + $ sudo yum update + + +Point to the Repository +----------------------- + +For CentOS based systems, there are two respositories to pull VPP binaries from: + +* CentOS NFV SIG Repository +* Nexus Repository + + +CentOS NFV SIG Repository +^^^^^^^^^^^^^^^^^^^^^^^^^ + +VPP is not in the official CentOS 7 distro; however, CentOS has Special +Interest Groups (SIG), which are smaller groups within the CentOS community that +focus on a small set of issues. The CentOS NFV (Network Function Virtualization) +SIG was created to provide a CentOS-based stack that will serve as a platform + +To install released packages from the CentOS NFV SIG Repository on an updated +Centos 7 system, first, install the CentOS NFV SIG FIDO repo file by running the +following command: + +.. code-block:: console + + $ sudo yum install centos-release-fdio + +then **'Install VPP RPMs'**, as described below. + +This will install the latest VPP version from the repository. To install an +older version, once the CentOS NFV SIG FDIO repo file has been installed, list +the stored versions: + +.. code-block:: console + + $ sudo yum --showduplicates list vpp* | expand + Loaded plugins: fastestmirror + Loading mirror speeds from cached hostfile + * base: repos-va.psychz.net + * epel: download-ib01.fedoraproject.org + * extras: mirror.siena.edu + * updates: repo1.ash.innoscale.net + Available Packages + vpp.x86_64 17.10-1 centos-fdio + vpp.x86_64 18.01.1-1 centos-fdio + vpp.x86_64 18.01.2-1 centos-fdio + vpp.x86_64 18.04-1 centos-fdio + vpp-api-java.x86_64 17.10-1 centos-fdio + vpp-api-java.x86_64 18.01.1-1 centos-fdio + vpp-api-java.x86_64 18.01.2-1 centos-fdio + vpp-api-java.x86_64 18.04-1 centos-fdio + vpp-api-lua.x86_64 17.10-1 centos-fdio + vpp-api-lua.x86_64 18.01.1-1 centos-fdio + vpp-api-lua.x86_64 18.01.2-1 centos-fdio + vpp-api-lua.x86_64 18.04-1 centos-fdio + vpp-api-python.x86_64 17.10-1 centos-fdio + vpp-api-python.x86_64 18.01.1-1 centos-fdio + vpp-api-python.x86_64 18.01.2-1 centos-fdio + vpp-api-python.x86_64 18.04-1 centos-fdio + vpp-devel.x86_64 17.10-1 centos-fdio + vpp-devel.x86_64 18.01.1-1 centos-fdio + vpp-devel.x86_64 18.01.2-1 centos-fdio + vpp-devel.x86_64 18.04-1 centos-fdio + vpp-lib.x86_64 17.10-1 centos-fdio + vpp-lib.x86_64 18.01.1-1 centos-fdio + vpp-lib.x86_64 18.01.2-1 centos-fdio + vpp-lib.x86_64 18.04-1 centos-fdio + vpp-plugins.x86_64 17.10-1 centos-fdio + vpp-plugins.x86_64 18.01.1-1 centos-fdio + vpp-plugins.x86_64 18.01.2-1 centos-fdio + vpp-plugins.x86_64 18.04-1 centos-fdio + vpp-selinux-policy.x86_64 18.04-1 centos-fdio + +Then install a particular version: + +.. code-block:: console + + $ sudo yum install vpp-17.10-1.x86_64 + + +Nexus Repository +^^^^^^^^^^^^^^^^ + +Build artifacts are also posted to a FD.io Nexus Repository. This includes +official point releases, as well as nightly builds. To use any of these build +artifacts, create a file *'/etc/yum.repos.d/fdio-release.repo'* with the +content that points to the version needed. Below are some common examples of +the content needed: + + +VPP Latest Release +"""""""""""""""""" + +To allow *'yum'* access to the official VPP releases, create the file +*'/etc/yum.repos.d/fdio-release.repo'* with the following content. + +.. code-block:: console + + $ cat /etc/yum.repos.d/fdio-release.repo + [fdio-release] + name=fd.io release branch latest merge + baseurl=https://nexus.fd.io/content/repositories/fd.io.centos7/ + enabled=1 + gpgcheck=0 + +The *'yum install vpp'* command will install the most recent release. To +install older releases, run the following command to get the list of releases +provided. + +.. code-block:: console + + $ sudo yum --showduplicates list vpp* | expand + +Then choose the release to install. See **'CentOS NFV SIG Repository'** for +sample *'yum --showduplicates list'* output and an example of installing a +particular version of the RPMs. + +VPP Stable Branch +""""""""""""""""""" + +To allow *yum* access to the build artifacts for a VPP stable branch, create +the file *'/etc/yum.repos.d/fdio-release.repo'* with the following content. + +.. code-block:: console + + $ cat /etc/yum.repos.d/fdio-release.repo + [fdio-stable-1804] + name=fd.io stable/1804 branch latest merge + baseurl=https://nexus.fd.io/content/repositories/fd.io.stable.1804.centos7/ + enabled=1 + gpgcheck=0 + +For other stable branches, replace the *'1804'* from the above content with the +desired release. Examples: 1606, 1609, 1701, 1704, 1707, 1710, 1804, 1807 + +The *'yum install vpp'* command will install the most recent build on the +branch, not the latest offical release. Run the following command to get the +list of images produce by the branch: + +.. code-block:: console + + $ sudo yum --showduplicates list vpp* | expand + +Then choose the image to install. See **'CentOS NFV SIG Repository'** for +sample *'yum --showduplicates list'* output and an example of installing a +particular version of the RPMs. + + +VPP Master Branch +""""""""""""""""""" + +To allow *yum* access to the nightly builds from the VPP master branch, create +the file *'/etc/yum.repos.d/fdio-release.repo'* with the following content. + +.. code-block:: console + + $ cat /etc/yum.repos.d/fdio-release.repo + [fdio-master] + name=fd.io master branch latest merge + baseurl=https://nexus.fd.io/content/repositories/fd.io.master.centos7/ + enabled=1 + gpgcheck=0 + +The *'yum install vpp'* command will install the most recent build on the +branch. Run the following command to get the list of images produce by the +branch. + +.. code-block:: console + + $ sudo yum --showduplicates list vpp* | expand + +Then choose the image to install. See **'CentOS NFV SIG Repository'** for +sample *'yum --showduplicates list'* output and an example of installing a +particular version of the RPMs. + + +Install VPP RPMs +================ + +To install the VPP packet engine, run the following command: + +.. code-block:: console + + $ sudo yum install vpp + +The *vpp* RPM depends on the *vpp-lib* and *vpp-selinux-policy* +RPMs, so they will be installed as well. + +.. note:: + + The *vpp-selinux-policy* will not enable SELinux on the system. It + will install a Custom VPP SELinux policy that will be used if SELinux is + enabled at any time. + +There are additional packages that are optional. These packages can be +combined with the command above and installed all at once, or installed as +needed: + +.. code-block:: console + + $ sudo yum install vpp-plugins vpp-devel vpp-api-python vpp-api-lua vpp-api-java + +Starting VPP +============ + +Once VPP is installed on the system, to run VPP as a systemd service on CentOS, +run the following command: + +.. code-block:: console + + $ sudo systemctl start vpp + +Then to enable VPP to start on system reboot, run the following command: + +.. code-block:: console + + $ sudo systemctl enable vpp + +Outside of running VPP as a systemd service, VPP can be started manually or +made to run within GDB for debugging. See :ref:`running` for more details and +ways to tailor VPP to a specific system. + + +Uninstall the VPP RPMs +====================== + +To uninstall a VPP RPM, run the following command: + +.. code-block:: console + + $ sudo yum autoremove vpp* diff --git a/docs/gettingstarted/installing/index.rst b/docs/gettingstarted/installing/index.rst new file mode 100644 index 00000000000..3615e6ff7c4 --- /dev/null +++ b/docs/gettingstarted/installing/index.rst @@ -0,0 +1,50 @@ +.. _installing: + +.. toctree:: + +.. _installingVPP: + +Downloading and Installing VPP +============================== + +If you want to use VPP it can be convenient to install the binaries from +existing packages. This guide describes how to pull, install and run the VPP packages. + +This section provides directions on how to Install VPP binaries on Ubuntu, Centos, +and openSUSE platforms. + +Installing on Ubuntu +--------------------------------- + +The following are instructions on how to install VPP on Ubuntu. + +.. toctree:: + + ubuntu + +Installing on Centos +------------------------------- + +The following are instructions on how to install VPP on Centos. + +.. toctree:: + + centos + +Installing on openSUSE +-------------------------------------- + +The following are instructions on how to install VPP on openSUSE. + +.. toctree:: + + opensuse + +Package Descriptions +---------------------------------- + +The following is a brief description of the packages to be installed with VPP. + +.. toctree:: + + packages diff --git a/docs/gettingstarted/installing/opensuse.rst b/docs/gettingstarted/installing/opensuse.rst new file mode 100644 index 00000000000..6d7873820dc --- /dev/null +++ b/docs/gettingstarted/installing/opensuse.rst @@ -0,0 +1,57 @@ +.. _opensuse: + +.. toctree:: + +Installing +========== + +To install VPP on openSUSE, first install the following release, and then execute +the associated commands. + +openSUSE Tumbleweed (rolling release) +------------------------------------------------------------ + +.. code-block:: console + + sudo zypper install vpp vpp-plugins + +openSUSE Leap 42.3 +-------------------------------- + +.. code-block:: console + + sudo zypper addrepo --name network https://download.opensuse.org/repositories/network/openSUSE_Leap_42.3/network.repo + sudo zypper install vpp vpp-plugins + +Uninstall +========= + +To uninstall the vpp plugins, run the following command: + +.. code-block:: console + + sudo zypper remove -u vpp vpp-plugins + +openSUSE Tumbleweed (rolling release) +------------------------------------- + +To uninstall the openSUSE Tumbleweed, run the following command: + +.. code-block:: console + + sudo zypper remove -u vpp vpp-plugins + +openSUSE Leap 42.3 +------------------ + +.. code-block:: console + + sudo zypper remove -u vpp vpp-plugins + sudo zypper removerepo network + +For More Information +==================== +For more information on VPP with openSUSE, please look at the following post. + +* https://www.suse.com/communities/blog/vector-packet-processing-vpp-opensuse/ + diff --git a/docs/gettingstarted/installing/packages.rst b/docs/gettingstarted/installing/packages.rst new file mode 100644 index 00000000000..55ddf05fdad --- /dev/null +++ b/docs/gettingstarted/installing/packages.rst @@ -0,0 +1,85 @@ +.. _packages: + +Packages +========== + +This section identifies the different VPP packages and describes their contents. + +.. toctree:: + +vpp +--- + +Vector Packet Processing executables. This is the primary package that must be +installed to use VPP. This package contains: + +* vpp - the vector packet engine +* vpp_api_test - vector packet engine API test tool +* vpp_json_test - vector packet engine JSON test tool + +vpp-lib +------- + +Vector Packet Processing runtime libraries. The *'vpp'* package depends on this +package, so it will always be installed. This package contains the VPP shared +libraries, including: + +* vppinfra - Foundation library supporting vectors, hashes, bitmaps, pools, and string formatting. +* svm - vm library +* vlib - vector processing library +* vlib-api - binary API library +* vnet - network stack library + +vpp-plugins +----------- + +Vector Packet Processing plugin modules. + +* acl +* dpdk +* flowprobe +* gtpu +* ixge +* kubeproxy +* l2e +* lb +* memif +* nat +* pppoe +* sixrd +* stn + +vpp-dbg +------- + +Vector Packet Processing debug symbols. + +vpp-dev +------- + +Vector Packet Processing development support. This package contains +development support files for the VPP libraries. + +vpp-api-java +------------ + +JAVA binding for the VPP Binary API. + +vpp-api-python +-------------- + +Python binding for the VPP Binary API. + +vpp-api-lua +----------- + +Lua binding for the VPP Binary API. + +vpp-selinux-policy +------------------ + +This package contains the VPP Custom SELinux Policy. It is only generated for +Fedora and CentOS distros. For those distros, the *'vpp'* package depends on +this package, so it will always be installed. It will not enable SELinux on +the system. It will install a Custom VPP SELinux policy that will be used if +SELinux is enabled at any time. diff --git a/docs/gettingstarted/installing/ubuntu.rst b/docs/gettingstarted/installing/ubuntu.rst new file mode 100644 index 00000000000..d1daed14ddb --- /dev/null +++ b/docs/gettingstarted/installing/ubuntu.rst @@ -0,0 +1,87 @@ +.. _ubuntu: + +.. toctree:: + +Ubuntu 16.04 - Setup the fd.io Repository +========================================== + +Choose one of the following releases to install. + + +Update the OS +----------------------- + +It is a good idea to first update and upgrade the OS before starting; run the following command to update the OS: + +.. code-block:: console + + apt-get update + + +Point to the Repository +----------------------------------- + +Create a file **/etc/apt/sources.list.d/99fd.io.list** with contents that point to +the version needed. The contents needed are shown below. + +.. _install_vpp: + +VPP latest Release +^^^^^^^^^^^^^^^^^^^ + +Create the file **/etc/apt/sources.list.d/99fd.io.list** that contain the following contents: + +.. code-block:: console + + deb [trusted=yes] https://nexus.fd.io/content/repositories/fd.io.ubuntu.xenial.main/ ./ + + +VPP stable/1804 Branch +^^^^^^^^^^^^^^^^^^^^^^^ + +Create the file **/etc/apt/sources.list.d/99fd.io.list** that contain the following contents: + +.. code-block:: console + + deb [trusted=yes] https://nexus.fd.io/content/repositories/fd.io.stable.1804.ubuntu.xenial.main/ ./ + + +VPP master Branch +^^^^^^^^^^^^^^^^^^^^ + +Create the file **/etc/apt/sources.list.d/99fd.io.list** that contain the following contents: + +.. code-block:: console + + deb [trusted=yes] https://nexus.fd.io/content/repositories/fd.io.master.ubuntu.xenial.main/ ./ + + +Install the Mandatory Packages +=============================== + +Install the mandatory packages by running the following commands: + +.. code-block:: console + + sudo apt-get update + sudo apt-get install vpp-lib vpp vpp-plugins + + +Install the Optional Packages +============================== + +Install the optional packages by running the following command: + +.. code-block:: console + + sudo apt-get install vpp-dbg vpp-dev vpp-api-java vpp-api-python vpp-api-lua + + +Uninstall the Packages +====================== + +Uninstall the packages by running the following command: + +.. code-block:: console + + sudo apt-get remove --purge vpp* diff --git a/docs/gettingstarted/users/index.rst b/docs/gettingstarted/users/index.rst index 4ec261a9937..7fdb2829eb8 100644 --- a/docs/gettingstarted/users/index.rst +++ b/docs/gettingstarted/users/index.rst @@ -22,6 +22,5 @@ section covers the following areas: :maxdepth: 2 configutil/index.rst - installing/index.rst configuring/index.rst running/index.rst diff --git a/docs/gettingstarted/users/installing/centos.rst b/docs/gettingstarted/users/installing/centos.rst deleted file mode 100644 index dae24f6b4c8..00000000000 --- a/docs/gettingstarted/users/installing/centos.rst +++ /dev/null @@ -1,247 +0,0 @@ -.. _centos: - -.. toctree:: - -Setup the fd.io Repository - Centos 7 -===================================== - -Update the OS -------------- - -Before starting the repository setup, it is a good idea to first update and upgrade -the OS; run the following command to update the OS: - -.. code-block:: console - - $ sudo yum update - - -Point to the Repository ------------------------ - -For CentOS based systems, there are two respositories to pull VPP binaries from: - -* CentOS NFV SIG Repository -* Nexus Repository - - -CentOS NFV SIG Repository -^^^^^^^^^^^^^^^^^^^^^^^^^ - -VPP is not in the official CentOS 7 distro; however, CentOS has Special -Interest Groups (SIG), which are smaller groups within the CentOS community that -focus on a small set of issues. The CentOS NFV (Network Function Virtualization) -SIG was created to provide a CentOS-based stack that will serve as a platform - -To install released packages from the CentOS NFV SIG Repository on an updated -Centos 7 system, first, install the CentOS NFV SIG FIDO repo file by running the -following command: - -.. code-block:: console - - $ sudo yum install centos-release-fdio - -then **'Install VPP RPMs'**, as described below. - -This will install the latest VPP version from the repository. To install an -older version, once the CentOS NFV SIG FDIO repo file has been installed, list -the stored versions: - -.. code-block:: console - - $ sudo yum --showduplicates list vpp* | expand - Loaded plugins: fastestmirror - Loading mirror speeds from cached hostfile - * base: repos-va.psychz.net - * epel: download-ib01.fedoraproject.org - * extras: mirror.siena.edu - * updates: repo1.ash.innoscale.net - Available Packages - vpp.x86_64 17.10-1 centos-fdio - vpp.x86_64 18.01.1-1 centos-fdio - vpp.x86_64 18.01.2-1 centos-fdio - vpp.x86_64 18.04-1 centos-fdio - vpp-api-java.x86_64 17.10-1 centos-fdio - vpp-api-java.x86_64 18.01.1-1 centos-fdio - vpp-api-java.x86_64 18.01.2-1 centos-fdio - vpp-api-java.x86_64 18.04-1 centos-fdio - vpp-api-lua.x86_64 17.10-1 centos-fdio - vpp-api-lua.x86_64 18.01.1-1 centos-fdio - vpp-api-lua.x86_64 18.01.2-1 centos-fdio - vpp-api-lua.x86_64 18.04-1 centos-fdio - vpp-api-python.x86_64 17.10-1 centos-fdio - vpp-api-python.x86_64 18.01.1-1 centos-fdio - vpp-api-python.x86_64 18.01.2-1 centos-fdio - vpp-api-python.x86_64 18.04-1 centos-fdio - vpp-devel.x86_64 17.10-1 centos-fdio - vpp-devel.x86_64 18.01.1-1 centos-fdio - vpp-devel.x86_64 18.01.2-1 centos-fdio - vpp-devel.x86_64 18.04-1 centos-fdio - vpp-lib.x86_64 17.10-1 centos-fdio - vpp-lib.x86_64 18.01.1-1 centos-fdio - vpp-lib.x86_64 18.01.2-1 centos-fdio - vpp-lib.x86_64 18.04-1 centos-fdio - vpp-plugins.x86_64 17.10-1 centos-fdio - vpp-plugins.x86_64 18.01.1-1 centos-fdio - vpp-plugins.x86_64 18.01.2-1 centos-fdio - vpp-plugins.x86_64 18.04-1 centos-fdio - vpp-selinux-policy.x86_64 18.04-1 centos-fdio - -Then install a particular version: - -.. code-block:: console - - $ sudo yum install vpp-17.10-1.x86_64 - - -Nexus Repository -^^^^^^^^^^^^^^^^ - -Build artifacts are also posted to a FD.io Nexus Repository. This includes -official point releases, as well as nightly builds. To use any of these build -artifacts, create a file *'/etc/yum.repos.d/fdio-release.repo'* with the -content that points to the version needed. Below are some common examples of -the content needed: - - -VPP Latest Release -"""""""""""""""""" - -To allow *'yum'* access to the official VPP releases, create the file -*'/etc/yum.repos.d/fdio-release.repo'* with the following content. - -.. code-block:: console - - $ cat /etc/yum.repos.d/fdio-release.repo - [fdio-release] - name=fd.io release branch latest merge - baseurl=https://nexus.fd.io/content/repositories/fd.io.centos7/ - enabled=1 - gpgcheck=0 - -The *'yum install vpp'* command will install the most recent release. To -install older releases, run the following command to get the list of releases -provided. - -.. code-block:: console - - $ sudo yum --showduplicates list vpp* | expand - -Then choose the release to install. See **'CentOS NFV SIG Repository'** for -sample *'yum --showduplicates list'* output and an example of installing a -particular version of the RPMs. - -VPP Stable Branch -""""""""""""""""""" - -To allow *yum* access to the build artifacts for a VPP stable branch, create -the file *'/etc/yum.repos.d/fdio-release.repo'* with the following content. - -.. code-block:: console - - $ cat /etc/yum.repos.d/fdio-release.repo - [fdio-stable-1804] - name=fd.io stable/1804 branch latest merge - baseurl=https://nexus.fd.io/content/repositories/fd.io.stable.1804.centos7/ - enabled=1 - gpgcheck=0 - -For other stable branches, replace the *'1804'* from the above content with the -desired release. Examples: 1606, 1609, 1701, 1704, 1707, 1710, 1804, 1807 - -The *'yum install vpp'* command will install the most recent build on the -branch, not the latest offical release. Run the following command to get the -list of images produce by the branch: - -.. code-block:: console - - $ sudo yum --showduplicates list vpp* | expand - -Then choose the image to install. See **'CentOS NFV SIG Repository'** for -sample *'yum --showduplicates list'* output and an example of installing a -particular version of the RPMs. - - -VPP Master Branch -""""""""""""""""""" - -To allow *yum* access to the nightly builds from the VPP master branch, create -the file *'/etc/yum.repos.d/fdio-release.repo'* with the following content. - -.. code-block:: console - - $ cat /etc/yum.repos.d/fdio-release.repo - [fdio-master] - name=fd.io master branch latest merge - baseurl=https://nexus.fd.io/content/repositories/fd.io.master.centos7/ - enabled=1 - gpgcheck=0 - -The *'yum install vpp'* command will install the most recent build on the -branch. Run the following command to get the list of images produce by the -branch. - -.. code-block:: console - - $ sudo yum --showduplicates list vpp* | expand - -Then choose the image to install. See **'CentOS NFV SIG Repository'** for -sample *'yum --showduplicates list'* output and an example of installing a -particular version of the RPMs. - - -Install VPP RPMs -================ - -To install the VPP packet engine, run the following command: - -.. code-block:: console - - $ sudo yum install vpp - -The *vpp* RPM depends on the *vpp-lib* and *vpp-selinux-policy* -RPMs, so they will be installed as well. - -.. note:: - - The *vpp-selinux-policy* will not enable SELinux on the system. It - will install a Custom VPP SELinux policy that will be used if SELinux is - enabled at any time. - -There are additional packages that are optional. These packages can be -combined with the command above and installed all at once, or installed as -needed: - -.. code-block:: console - - $ sudo yum install vpp-plugins vpp-devel vpp-api-python vpp-api-lua vpp-api-java - -Starting VPP -============ - -Once VPP is installed on the system, to run VPP as a systemd service on CentOS, -run the following command: - -.. code-block:: console - - $ sudo systemctl start vpp - -Then to enable VPP to start on system reboot, run the following command: - -.. code-block:: console - - $ sudo systemctl enable vpp - -Outside of running VPP as a systemd service, VPP can be started manually or -made to run within GDB for debugging. See :ref:`running` for more details and -ways to tailor VPP to a specific system. - - -Uninstall the VPP RPMs -====================== - -To uninstall a VPP RPM, run the following command: - -.. code-block:: console - - $ sudo yum autoremove vpp* diff --git a/docs/gettingstarted/users/installing/index.rst b/docs/gettingstarted/users/installing/index.rst deleted file mode 100644 index 12a5ab8e015..00000000000 --- a/docs/gettingstarted/users/installing/index.rst +++ /dev/null @@ -1,51 +0,0 @@ -.. _installing: - -.. toctree:: - -.. _installingVPP: - -Installing VPP from Packages -============================== - -If you want to use VPP it can be convenient to install the binaries from -existing packages. This guide describes how to pull, install and run the VPP packages. - -.. toctree:: - -Installing VPP ---------------- - -This section provides directions on how to Install VPP binaries on Ubuntu, Centos, -and openSUSE platforms. - -Installing on Ubuntu -^^^^^^^^^^^^^^^^^^^^^ -The following are instructions on how to install VPP on Ubuntu. - -.. toctree:: - - ubuntu - -Installing on Centos -^^^^^^^^^^^^^^^^^^^^ -The following are instructions on how to install VPP on Centos. - -.. toctree:: - - centos - -Installing on openSUSE -^^^^^^^^^^^^^^^^^^^^^^ -The following are instructions on how to install VPP on openSUSE. - -.. toctree:: - - opensuse - -Package Descriptions --------------------- -The following is a brief description of the packages to be installed with VPP. - -.. toctree:: - - packages diff --git a/docs/gettingstarted/users/installing/opensuse.rst b/docs/gettingstarted/users/installing/opensuse.rst deleted file mode 100644 index 6d7873820dc..00000000000 --- a/docs/gettingstarted/users/installing/opensuse.rst +++ /dev/null @@ -1,57 +0,0 @@ -.. _opensuse: - -.. toctree:: - -Installing -========== - -To install VPP on openSUSE, first install the following release, and then execute -the associated commands. - -openSUSE Tumbleweed (rolling release) ------------------------------------------------------------- - -.. code-block:: console - - sudo zypper install vpp vpp-plugins - -openSUSE Leap 42.3 --------------------------------- - -.. code-block:: console - - sudo zypper addrepo --name network https://download.opensuse.org/repositories/network/openSUSE_Leap_42.3/network.repo - sudo zypper install vpp vpp-plugins - -Uninstall -========= - -To uninstall the vpp plugins, run the following command: - -.. code-block:: console - - sudo zypper remove -u vpp vpp-plugins - -openSUSE Tumbleweed (rolling release) -------------------------------------- - -To uninstall the openSUSE Tumbleweed, run the following command: - -.. code-block:: console - - sudo zypper remove -u vpp vpp-plugins - -openSUSE Leap 42.3 ------------------- - -.. code-block:: console - - sudo zypper remove -u vpp vpp-plugins - sudo zypper removerepo network - -For More Information -==================== -For more information on VPP with openSUSE, please look at the following post. - -* https://www.suse.com/communities/blog/vector-packet-processing-vpp-opensuse/ - diff --git a/docs/gettingstarted/users/installing/packages.rst b/docs/gettingstarted/users/installing/packages.rst deleted file mode 100644 index 55ddf05fdad..00000000000 --- a/docs/gettingstarted/users/installing/packages.rst +++ /dev/null @@ -1,85 +0,0 @@ -.. _packages: - -Packages -========== - -This section identifies the different VPP packages and describes their contents. - -.. toctree:: - -vpp ---- - -Vector Packet Processing executables. This is the primary package that must be -installed to use VPP. This package contains: - -* vpp - the vector packet engine -* vpp_api_test - vector packet engine API test tool -* vpp_json_test - vector packet engine JSON test tool - -vpp-lib -------- - -Vector Packet Processing runtime libraries. The *'vpp'* package depends on this -package, so it will always be installed. This package contains the VPP shared -libraries, including: - -* vppinfra - Foundation library supporting vectors, hashes, bitmaps, pools, and string formatting. -* svm - vm library -* vlib - vector processing library -* vlib-api - binary API library -* vnet - network stack library - -vpp-plugins ------------ - -Vector Packet Processing plugin modules. - -* acl -* dpdk -* flowprobe -* gtpu -* ixge -* kubeproxy -* l2e -* lb -* memif -* nat -* pppoe -* sixrd -* stn - -vpp-dbg -------- - -Vector Packet Processing debug symbols. - -vpp-dev -------- - -Vector Packet Processing development support. This package contains -development support files for the VPP libraries. - -vpp-api-java ------------- - -JAVA binding for the VPP Binary API. - -vpp-api-python --------------- - -Python binding for the VPP Binary API. - -vpp-api-lua ------------ - -Lua binding for the VPP Binary API. - -vpp-selinux-policy ------------------- - -This package contains the VPP Custom SELinux Policy. It is only generated for -Fedora and CentOS distros. For those distros, the *'vpp'* package depends on -this package, so it will always be installed. It will not enable SELinux on -the system. It will install a Custom VPP SELinux policy that will be used if -SELinux is enabled at any time. diff --git a/docs/gettingstarted/users/installing/ubuntu.rst b/docs/gettingstarted/users/installing/ubuntu.rst deleted file mode 100644 index d1daed14ddb..00000000000 --- a/docs/gettingstarted/users/installing/ubuntu.rst +++ /dev/null @@ -1,87 +0,0 @@ -.. _ubuntu: - -.. toctree:: - -Ubuntu 16.04 - Setup the fd.io Repository -========================================== - -Choose one of the following releases to install. - - -Update the OS ------------------------ - -It is a good idea to first update and upgrade the OS before starting; run the following command to update the OS: - -.. code-block:: console - - apt-get update - - -Point to the Repository ------------------------------------ - -Create a file **/etc/apt/sources.list.d/99fd.io.list** with contents that point to -the version needed. The contents needed are shown below. - -.. _install_vpp: - -VPP latest Release -^^^^^^^^^^^^^^^^^^^ - -Create the file **/etc/apt/sources.list.d/99fd.io.list** that contain the following contents: - -.. code-block:: console - - deb [trusted=yes] https://nexus.fd.io/content/repositories/fd.io.ubuntu.xenial.main/ ./ - - -VPP stable/1804 Branch -^^^^^^^^^^^^^^^^^^^^^^^ - -Create the file **/etc/apt/sources.list.d/99fd.io.list** that contain the following contents: - -.. code-block:: console - - deb [trusted=yes] https://nexus.fd.io/content/repositories/fd.io.stable.1804.ubuntu.xenial.main/ ./ - - -VPP master Branch -^^^^^^^^^^^^^^^^^^^^ - -Create the file **/etc/apt/sources.list.d/99fd.io.list** that contain the following contents: - -.. code-block:: console - - deb [trusted=yes] https://nexus.fd.io/content/repositories/fd.io.master.ubuntu.xenial.main/ ./ - - -Install the Mandatory Packages -=============================== - -Install the mandatory packages by running the following commands: - -.. code-block:: console - - sudo apt-get update - sudo apt-get install vpp-lib vpp vpp-plugins - - -Install the Optional Packages -============================== - -Install the optional packages by running the following command: - -.. code-block:: console - - sudo apt-get install vpp-dbg vpp-dev vpp-api-java vpp-api-python vpp-api-lua - - -Uninstall the Packages -====================== - -Uninstall the packages by running the following command: - -.. code-block:: console - - sudo apt-get remove --purge vpp* diff --git a/docs/guides/api/index.rst b/docs/guides/api/index.rst deleted file mode 100644 index d410d4a10cc..00000000000 --- a/docs/guides/api/index.rst +++ /dev/null @@ -1,19 +0,0 @@ -.. _api: - -.. toctree:: - - -API User Guides -=============== - -This chapter describes how to use the C, Python and java APIs. - -.. _jvppjar: - -Downloading the jvpp jar ------------------------- -The following are instructions on how to download the jvpp jar - -.. toctree:: - - jvpp diff --git a/docs/guides/api/jvpp.rst b/docs/guides/api/jvpp.rst deleted file mode 100644 index 4c5c58256c2..00000000000 --- a/docs/guides/api/jvpp.rst +++ /dev/null @@ -1,46 +0,0 @@ -.. _jvpp: - -.. toctree:: - -Getting jvpp jar -------------------- -VPP provides java bindings which can be downloaded at: - -* https://nexus.fd.io/content/repositories/fd.io.release/io/fd/vpp/jvpp-core/18.01/jvpp-core-18.01.jar - -Getting jvpp via maven -------------------------- - -**1. Add the following to the repositories section in your ~/.m2/settings.xml to pick up the fd.io maven repo:** - -.. code-block:: console - - - fd.io-release - fd.io-release - https://nexus.fd.io/content/repositories/fd.io.release/ - - false - - - true - - - -For more information on setting up maven repositories in settings.xml, please look at: - -* https://maven.apache.org/guides/mini/guide-multiple-repositories.html - -**2. Then you can get jvpp by putting in the dependencies section of your pom.xml file:** - -.. code-block:: console - - - io.fd.vpp - jvpp-core - 17.10 - - -For more information on maven dependency managment, please look at: - -* https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html diff --git a/docs/guides/index.rst b/docs/guides/index.rst deleted file mode 100644 index ab73368e887..00000000000 --- a/docs/guides/index.rst +++ /dev/null @@ -1,10 +0,0 @@ -.. _guides: - -========================================= -User Guides -========================================= - -.. toctree:: - :maxdepth: 2 - - api/index.rst diff --git a/docs/index.rst b/docs/index.rst index 094ed95e622..14884481014 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -24,6 +24,5 @@ Finally it is useful both a software development kit or an appliance out of the links/index usecases/index troubleshooting/index - guides/index events/index reference/index diff --git a/docs/reference/index.rst b/docs/reference/index.rst index 23ddecdc280..521caedca25 100644 --- a/docs/reference/index.rst +++ b/docs/reference/index.rst @@ -8,6 +8,7 @@ Reference :maxdepth: 2 vppvagrant/index.rst + jvpp.rst readthedocs/index.rst github/index.rst cmdreference/index.rst diff --git a/docs/reference/jvpp.rst b/docs/reference/jvpp.rst new file mode 100644 index 00000000000..7dab4876782 --- /dev/null +++ b/docs/reference/jvpp.rst @@ -0,0 +1,47 @@ +.. _jvpp: + +.. toctree:: + +Getting jvpp jar +================ + +VPP provides java bindings which can be downloaded at: + +* https://nexus.fd.io/content/repositories/fd.io.release/io/fd/vpp/jvpp-core/18.01/jvpp-core-18.01.jar + +Getting jvpp via maven +------------------------------------ + +**1. Add the following to the repositories section in your ~/.m2/settings.xml to pick up the fd.io maven repo:** + +.. code-block:: console + + + fd.io-release + fd.io-release + https://nexus.fd.io/content/repositories/fd.io.release/ + + false + + + true + + + +For more information on setting up maven repositories in settings.xml, please look at: + +* https://maven.apache.org/guides/mini/guide-multiple-repositories.html + +**2. Then you can get jvpp by putting in the dependencies section of your pom.xml file:** + +.. code-block:: console + + + io.fd.vpp + jvpp-core + 17.10 + + +For more information on maven dependency managment, please look at: + +* https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html diff --git a/docs/usecases/index.rst b/docs/usecases/index.rst index 523dffa69d3..3507c2adf9d 100644 --- a/docs/usecases/index.rst +++ b/docs/usecases/index.rst @@ -12,4 +12,3 @@ extensive list, but should give a sampling of the many features contained in FD. containers vhost/index.rst homegateway - uc_vSwitchvRouter diff --git a/docs/usecases/uc_vSwitchvRouter.rst b/docs/usecases/uc_vSwitchvRouter.rst deleted file mode 100644 index ace67ec7608..00000000000 --- a/docs/usecases/uc_vSwitchvRouter.rst +++ /dev/null @@ -1,47 +0,0 @@ -.. _vswitch: - -.. toctree:: - -.. _vswitchrtr: - -vSwitch/vRouter -=============== - - -FD.io VPP as a vSwitch/vRouter ------------------------------- - -.. note:: - - We need to provide commands and and show how to use VPP as a vSwitch/vRouter - -One of the use cases for the FD.io VPP platform is to implement it as a -virtual switch or router. The following section describes examples of -possible implementations that can be created with the FD.io VPP platform. For -more in depth descriptions about other possible use cases, see the list -of - -.. figure:: /_images/VPP_App_as_a_vSwitch_x201.jpg - :alt: Figure: Linux host as a vSwitch - :align: right - - Figure: Linux host as a vSwitch - -You can use the FD.io VPP platform to create out-of-the-box virtual switches -(vSwitch) and virtual routers (vRouter). The FD.io VPP platform allows you to -manage certain functions and configurations of these application through -a command-line interface (CLI). - -Some of the functionality that a switching application can create -includes: - -* Bridge Domains -* Ports (including tunnel ports) -* Connect ports to bridge domains -* Program ARP termination - -Some of the functionality that a routing application can create -includes: - -* Virtual Routing and Forwarding (VRF) tables (in the thousands) -* Routes (in the millions) -- cgit 1.2.3-korg