summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorStephen Finucane <stephen@that.guru>2016-12-21 20:39:53 +0000
committerBen Pfaff <blp@ovn.org>2016-12-21 13:36:34 -0800
commitb8d24cc8a86be46caad00fdae96ff479a64d9b64 (patch)
tree17fcc2ce0a28bce07b2734288168aac1f649ecda /Documentation
parent890ffc066feba59197d8e3d44a9bc2e1f25971ce (diff)
downloadopenvswitch-b8d24cc8a86be46caad00fdae96ff479a64d9b64.tar.gz
doc: Misc Windows doc formatting fixes
There are a couple of minor issues with this document: - Some commands intended to be run in the MinGW shell are prefixed with '>', suggesting they are in fact PowerShell commands - PowerShell syntax highlighting is not enabled - Indentation is off for a couple of blocks Resolve all of these through use of the 'code-block' element and a lot of random fixes. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/intro/install/windows.rst496
1 files changed, 294 insertions, 202 deletions
diff --git a/Documentation/intro/install/windows.rst b/Documentation/intro/install/windows.rst
index 6d65f062d..1ba9b63f3 100644
--- a/Documentation/intro/install/windows.rst
+++ b/Documentation/intro/install/windows.rst
@@ -94,7 +94,7 @@ The following explains the steps in some detail.
directory (e.g.: ``C:/pthread``). You should add the pthread-win32's dll path
(e.g.: ``C:\pthread\dll\x86``) to the Windows' PATH environment variable.
-- OpenSSQL
+- OpenSSL
To get SSL support for Open vSwitch on Windows, you will need to install
`OpenSSL for Windows <http://www.openssl.org/related/binaries.html>`__
@@ -102,6 +102,13 @@ The following explains the steps in some detail.
Note down the directory where OpenSSL is installed (e.g.:
``C:/OpenSSL-Win32``) for later use.
+.. note::
+
+ Commands prefixed by ``$`` must be run in the Bash shell provided by MinGW.
+ Open vSwitch commands, such as ``ovs-dpctl`` are shown running under
+ PowerShell (``>`` prefix) but will also run under Bash. The remainder,
+ prefixed by ``>``, are PowerShell commands and must be run in PowerShell.
+
Install Requirements
--------------------
@@ -123,9 +130,11 @@ Bootstrapping
This step is not needed if you have downloaded a released tarball. If
you pulled the sources directly from an Open vSwitch Git tree or got a
Git tree snapshot, then run boot.sh in the top source directory to build
-the "configure" script::
+the "configure" script:
+
+.. code-block:: bash
- > ./boot.sh
+ $ ./boot.sh
.. _windows-configuring:
@@ -134,45 +143,53 @@ Configuring
Configure the package by running the configure script. You should provide some
configure options to choose the right compiler, linker, libraries, Open vSwitch
-component installation directories, etc. For example::
+component installation directories, etc. For example:
- > ./configure CC=./build-aux/cccl LD="$(which link)" \
- LIBS="-lws2_32 -liphlpapi -lwbemuuid -lole32 -loleaut32" \
- --prefix="C:/openvswitch/usr" \
- --localstatedir="C:/openvswitch/var" \
- --sysconfdir="C:/openvswitch/etc" \
- --with-pthread="C:/pthread"
+.. code-block:: bash
+
+ $ ./configure CC=./build-aux/cccl LD="$(which link)" \
+ LIBS="-lws2_32 -liphlpapi -lwbemuuid -lole32 -loleaut32" \
+ --prefix="C:/openvswitch/usr" \
+ --localstatedir="C:/openvswitch/var" \
+ --sysconfdir="C:/openvswitch/etc" \
+ --with-pthread="C:/pthread"
.. note::
- By default, the above enables compiler optimization for fast code. For
- default compiler optimization, pass the ``--with-debug`` configure option.
-
-To configure with SSL support, add the requisite additional options::
-
- > ./configure CC=./build-aux/cccl LD="`which link`" \
- LIBS="-lws2_32 -liphlpapi -lwbemuuid -lole32 -loleaut32" \
- --prefix="C:/openvswitch/usr" \
- --localstatedir="C:/openvswitch/var"
- --sysconfdir="C:/openvswitch/etc" \
- --with-pthread="C:/pthread" \
- --enable-ssl --with-openssl="C:/OpenSSL-Win32"
-
-Finally, to the kernel module also::
-
- > ./configure CC=./build-aux/cccl LD="`which link`" \
- LIBS="-lws2_32 -liphlpapi -lwbemuuid -lole32 -loleaut32" \
- --prefix="C:/openvswitch/usr" \
- --localstatedir="C:/openvswitch/var" \
- --sysconfdir="C:/openvswitch/etc" \
- --with-pthread="C:/pthread" \
- --enable-ssl --with-openssl="C:/OpenSSL-Win32" \
- --with-vstudiotarget="<target type>"
+
+ By default, the above enables compiler optimization for fast code. For
+ default compiler optimization, pass the ``--with-debug`` configure option.
+
+To configure with SSL support, add the requisite additional options:
+
+.. code-block:: bash
+
+ $ ./configure CC=./build-aux/cccl LD="`which link`" \
+ LIBS="-lws2_32 -liphlpapi -lwbemuuid -lole32 -loleaut32" \
+ --prefix="C:/openvswitch/usr" \
+ --localstatedir="C:/openvswitch/var"
+ --sysconfdir="C:/openvswitch/etc" \
+ --with-pthread="C:/pthread" \
+ --enable-ssl --with-openssl="C:/OpenSSL-Win32"
+
+Finally, to the kernel module also:
+
+.. code-block:: bash
+
+ $ ./configure CC=./build-aux/cccl LD="`which link`" \
+ LIBS="-lws2_32 -liphlpapi -lwbemuuid -lole32 -loleaut32" \
+ --prefix="C:/openvswitch/usr" \
+ --localstatedir="C:/openvswitch/var" \
+ --sysconfdir="C:/openvswitch/etc" \
+ --with-pthread="C:/pthread" \
+ --enable-ssl --with-openssl="C:/OpenSSL-Win32" \
+ --with-vstudiotarget="<target type>"
Possible values for ``<target type>`` are: ``Debug`` and ``Release``
.. note::
- You can directly use the Visual Studio 2013 IDE to compile the kernel
- datapath. Open the ovsext.sln file in the IDE and build the solution.
+
+ You can directly use the Visual Studio 2013 IDE to compile the kernel
+ datapath. Open the ovsext.sln file in the IDE and build the solution.
Refer to :doc:`general` for information on additional configuration options.
@@ -184,39 +201,49 @@ Building
Once correctly configured, building Open vSwitch on Windows is similar to
building on Linux, FreeBSD, or NetBSD.
-#. Run make for the ported executables in the top source directory, e.g.::
+#. Run make for the ported executables in the top source directory, e.g.:
+
+ .. code-block:: bash
- > make
+ $ make
For faster compilation, you can pass the ``-j`` argument to make. For
example, to run 4 jobs simultaneously, run ``make -j4``.
.. note::
- MSYS 1.0.18 has a bug that causes parallel make to hang. You can overcome
- this by downgrading to MSYS 1.0.17. A simple way to downgrade is to exit
- all MinGW sessions and then run the below command from MSVC developers
- command prompt.::
+ MSYS 1.0.18 has a bug that causes parallel make to hang. You can overcome
+ this by downgrading to MSYS 1.0.17. A simple way to downgrade is to exit
+ all MinGW sessions and then run the below command from MSVC developers
+ command prompt.:
+
+ .. code-block:: doscon
> mingw-get upgrade msys-core-bin=1.0.17-1
-#. To run all the unit tests in Open vSwitch, one at a time::
+#. To run all the unit tests in Open vSwitch, one at a time:
+
+ .. code-block:: bash
- > make check
+ $ make check
- To run all the unit tests in Open vSwitch, up to 8 in parallel::
+ To run all the unit tests in Open vSwitch, up to 8 in parallel:
- > make check TESTSUITEFLAGS="-j8"
+ .. code-block:: bash
-#. To install all the compiled executables on the local machine, run::
+ $ make check TESTSUITEFLAGS="-j8"
- > make install
+#. To install all the compiled executables on the local machine, run:
+
+ .. code-block:: bash
+
+ $ make install
.. note::
- This will install the Open vSwitch executables in ``C:/openvswitch``. You
- can add ``C:\openvswitch\usr\bin`` and ``C:\openvswitch\usr\sbin`` to
- Windows' PATH environment variable for easy access.
+ This will install the Open vSwitch executables in ``C:/openvswitch``. You
+ can add ``C:\openvswitch\usr\bin`` and ``C:\openvswitch\usr\sbin`` to
+ Windows' PATH environment variable for easy access.
The Kernel Module
~~~~~~~~~~~~~~~~~
@@ -231,20 +258,24 @@ the target Hyper-V machine.
- ``./datapath-windows/misc/uninstall.cmd``
.. note::
- The above path assumes that the kernel module has been built using Windows
- DDK 8.1 in Debug mode. Change the path appropriately, if a different WDK
- has been used.
+
+ The above path assumes that the kernel module has been built using Windows
+ DDK 8.1 in Debug mode. Change the path appropriately, if a different WDK has
+ been used.
Now run ``./uninstall.cmd`` to remove the old extension. Once complete, run
``./install.cmd`` to insert the new one. For this to work you will have to
turn on ``TESTSIGNING`` boot option or 'Disable Driver Signature
-Enforcement' during boot. The following commands can be used::
+Enforcement' during boot. The following commands can be used:
+
+.. code-block:: powershell
- > bcdedit /set LOADOPTIONS DISABLE_INTEGRITY_CHECKS
- > bcdedit /set TESTSIGNING ON
- > bcdedit /set nointegritychecks ON
+ PS > bcdedit /set LOADOPTIONS DISABLE_INTEGRITY_CHECKS
+ PS > bcdedit /set TESTSIGNING ON
+ PS > bcdedit /set nointegritychecks ON
.. note::
+
You may have to restart the machine for the settings to take effect.
In the Virtual Switch Manager configuration you can enable the Open vSwitch
@@ -253,72 +284,95 @@ existing switch, make sure to enable the "Allow Management OS" option for VXLAN
to work (covered later).
The command to create a new switch named 'OVS-Extended-Switch' using a physical
-NIC named 'Ethernet 1' is::
+NIC named 'Ethernet 1' is:
+
+.. code-block:: powershell
- PS > New-VMSwitch "OVS-Extended-Switch" -NetAdapterName "Ethernet 1"
+ PS > New-VMSwitch "OVS-Extended-Switch" -NetAdapterName "Ethernet 1"
.. note::
- You can obtain the list of physical NICs on the host using 'Get-NetAdapter'
- command.
+
+ You can obtain the list of physical NICs on the host using 'Get-NetAdapter'
+ command.
In the properties of any switch, you should should now see "Open vSwitch
Extension" under 'Extensions'. Click the check box to enable the extension.
-An alternative way to do the same is to run the following command::
+An alternative way to do the same is to run the following command:
+
+.. code-block:: powershell
- PS > Enable-VMSwitchExtension "Open vSwitch Extension" OVS-Extended-Switch
+ PS > Enable-VMSwitchExtension "Open vSwitch Extension" OVS-Extended-Switch
.. note::
- If you enabled the extension using the command line, a delay of a few seconds
- has been observed for the change to be reflected in the UI. This is not a
- bug in Open vSwitch.
+
+ If you enabled the extension using the command line, a delay of a few
+ seconds has been observed for the change to be reflected in the UI. This is
+ not a bug in Open vSwitch.
Starting
--------
.. important::
- The following steps assume that you have installed the Open vSwitch utilities
- in the local machine via 'make install'.
+
+ The following steps assume that you have installed the Open vSwitch
+ utilities in the local machine via 'make install'.
Before starting ovs-vswitchd itself, you need to start its configuration
database, ovsdb-server. Each machine on which Open vSwitch is installed should
run its own copy of ovsdb-server. Before ovsdb-server itself can be started,
-configure a database that it can use::
+configure a database that it can use:
+
+.. code-block:: powershell
- > ovsdb-tool create C:\openvswitch\etc\openvswitch\conf.db \
+ PS > ovsdb-tool create C:\openvswitch\etc\openvswitch\conf.db \
C:\openvswitch\usr\share\openvswitch\vswitch.ovsschema
Configure ovsdb-server to use database created above and to listen on a Unix
-domain socket::
+domain socket:
- > ovsdb-server -vfile:info --remote=punix:db.sock --log-file \
+.. code-block:: powershell
+
+ PS > ovsdb-server -vfile:info --remote=punix:db.sock --log-file \
--pidfile --detach
.. note::
- The logfile is created at ``C:/openvswitch/var/log/openvswitch/``
+
+ The logfile is created at ``C:/openvswitch/var/log/openvswitch/``
Initialize the database using ovs-vsctl. This is only necessary the first time
after you create the database with ovsdb-tool, though running it at any time is
-harmless::
+harmless:
+
+.. code-block:: powershell
- > ovs-vsctl --no-wait init
+ PS > ovs-vsctl --no-wait init
.. tip::
- If you would later like to terminate the started ovsdb-server, run::
- > ovs-appctl -t ovsdb-server exit
+ If you would later like to terminate the started ovsdb-server, run:
+
+ .. code-block:: powershell
+
+ PS > ovs-appctl -t ovsdb-server exit
Start the main Open vSwitch daemon, telling it to connect to the same Unix
-domain socket::
+domain socket:
- > ovs-vswitchd -vfile:info --log-file --pidfile --detach
+.. code-block:: powershell
+
+ PS > ovs-vswitchd -vfile:info --log-file --pidfile --detach
.. tip::
- If you would like to terminate the started ovs-vswitchd, run::
- > ovs-appctl exit
+ If you would like to terminate the started ovs-vswitchd, run:
+
+ .. code-block:: powershell
+
+ PS > ovs-appctl exit
.. note::
- The logfile is created at ``C:/openvswitch/var/log/openvswitch/``
+
+ The logfile is created at ``C:/openvswitch/var/log/openvswitch/``
Validating
----------
@@ -330,43 +384,49 @@ Add bridges
~~~~~~~~~~~
Let's start by creating an integration bridge, ``br-int`` and a PIF bridge,
-``br-pif``::
+``br-pif``:
- > ovs-vsctl add-br br-int
- > ovs-vsctl add-br br-pif
+.. code-block:: powershell
+
+ PW > ovs-vsctl add-br br-int
+ PW > ovs-vsctl add-br br-pif
.. note::
- There's a known bug that running the ovs-vsctl command does not terminate.
- This is generally solved by having ovs-vswitchd running. If you face the
- issue despite that, hit Ctrl-C to terminate ovs-vsctl and check the output to
- see if your command succeeded.
-Validate that ports are added by dumping from both ovs-dpctl and ovs-vsctl::
+ There's a known bug that running the ovs-vsctl command does not terminate.
+ This is generally solved by having ovs-vswitchd running. If you face the
+ issue despite that, hit Ctrl-C to terminate ovs-vsctl and check the output
+ to see if your command succeeded.
- > ovs-dpctl show
- system@ovs-system:
- lookups: hit:0 missed:0 lost:0
- flows: 0
- port 2: br-pif (internal) <<< internal port on 'br-pif' bridge
- port 1: br-int (internal) <<< internal port on 'br-int' bridge
+Validate that ports are added by dumping from both ovs-dpctl and ovs-vsctl:
- > ovs-vsctl show
- a56ec7b5-5b1f-49ec-a795-79f6eb63228b
- Bridge br-pif
- Port br-pif
- Interface br-pif
- type: internal
- Bridge br-int
- Port br-int
- Interface br-int
- type: internal
+.. code-block:: powershell
+
+ PS > ovs-dpctl show
+ system@ovs-system:
+ lookups: hit:0 missed:0 lost:0
+ flows: 0
+ port 2: br-pif (internal) <<< internal port on 'br-pif' bridge
+ port 1: br-int (internal) <<< internal port on 'br-int' bridge
+
+ PS > ovs-vsctl show
+ a56ec7b5-5b1f-49ec-a795-79f6eb63228b
+ Bridge br-pif
+ Port br-pif
+ Interface br-pif
+ type: internal
+ Bridge br-int
+ Port br-int
+ Interface br-int
+ type: internal
.. note::
- There's a known bug that the ports added to OVSDB via ovs-vsctl don't get to
- the kernel datapath immediately, ie. they don't show up in the output of
- ``ovs-dpctl show`` even though they show up in output of ``ovs-vsctl show``.
- In order to workaround this issue, restart ovs-vswitchd. (You can terminate
- ovs-vswitchd by running ``ovs-appctl exit``.)
+
+ There's a known bug that the ports added to OVSDB via ovs-vsctl don't get to
+ the kernel datapath immediately, ie. they don't show up in the output of
+ ``ovs-dpctl show`` even though they show up in output of ``ovs-vsctl show``.
+ In order to workaround this issue, restart ovs-vswitchd. (You can terminate
+ ovs-vswitchd by running ``ovs-appctl exit``.)
Add physicals NICs (PIF)
~~~~~~~~~~~~~~~~~~~~~~~~
@@ -379,16 +439,19 @@ the adapter named ``Ethernet0``, then in OVS we use that name (``Ethernet0``)
as a special name to refer to that adapter.
.. note::
- we assume that the OVS extension is enabled Hyper-V switch.
+
+ We assume that the OVS extension is enabled Hyper-V switch.
Internal ports are the virtual adapters created on the Hyper-V switch using the
``ovs-vsctl add-br <bridge>`` command. By default they are created under the
following rule "<name of bridge>" and the adapters are disabled. One needs to
enable them and set the corresponding values to it to make them IP-able.
-As a whole example, if we issue the following in a powershell console::
+As a whole example, if we issue the following in a powershell console:
+
+.. code-block:: powershell
- PS C:\package\binaries> Get-NetAdapter | select Name,InterfaceDescription
+ PS > Get-NetAdapter | select Name,InterfaceDescription
Name InterfaceDescription
---- --------------------
Ethernet1 Intel(R) PRO/1000 MT Network Connection
@@ -396,43 +459,47 @@ As a whole example, if we issue the following in a powershell console::
Ethernet0 Intel(R) PRO/1000 MT Network Connection #2
br-int Hyper-V Virtual Ethernet Adapter #3
- PS C:\package\binaries> Get-VMSwitch
+ PS > Get-VMSwitch
Name SwitchType NetAdapterInterfaceDescription
---- ---------- ------------------------------
external External Intel(R) PRO/1000 MT Network Connection #2
We can see that we have a switch(external) created upon adapter name
'Ethernet0' with the internal ports under name 'br-pif' and 'br-int'. Thus
-resulting into the following ovs-vsctl commands::
+resulting into the following ovs-vsctl commands:
- > ovs-vsctl add-port br-pif Ethernet0
+.. code-block:: powershell
-Dumping the ports should show the additional ports that were just added::
+ PS > ovs-vsctl add-port br-pif Ethernet0
- > ovs-dpctl show
- system@ovs-system:
- lookups: hit:0 missed:0 lost:0
- flows: 0
- port 2: br-pif (internal) <<< internal port
- adapter on
- Hyper-V switch
- port 1: br-int (internal) <<< internal port
- adapter on
- Hyper-V switch
- port 3: Ethernet0 <<< Physical NIC
-
- > ovs-vsctl show
- a56ec7b5-5b1f-49ec-a795-79f6eb63228b
- Bridge br-pif
- Port br-pif
- Interface br-pif
- type: internal
- Port "Ethernet0"
- Interface "Ethernet0"
- Bridge br-int
- Port br-int
- Interface br-int
- type: internal
+Dumping the ports should show the additional ports that were just added:
+
+.. code-block:: powershell
+
+ PW > ovs-dpctl show
+ system@ovs-system:
+ lookups: hit:0 missed:0 lost:0
+ flows: 0
+ port 2: br-pif (internal) <<< internal port
+ adapter on
+ Hyper-V switch
+ port 1: br-int (internal) <<< internal port
+ adapter on
+ Hyper-V switch
+ port 3: Ethernet0 <<< Physical NIC
+
+ PW > ovs-vsctl show
+ a56ec7b5-5b1f-49ec-a795-79f6eb63228b
+ Bridge br-pif
+ Port br-pif
+ Interface br-pif
+ type: internal
+ Port "Ethernet0"
+ Interface "Ethernet0"
+ Bridge br-int
+ Port br-int
+ Interface br-int
+ type: internal
Add virtual interfaces (VIFs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -459,11 +526,11 @@ assumed to be the Hyper-V switch with OVS extension enabled.::
Next, add the VIFs to ``br-int``::
- > ovs-vsctl add-port br-int ovs-port-a
+ PS > ovs-vsctl add-port br-int ovs-port-a
Dumping the ports should show the additional ports that were just added::
- > ovs-dpctl show
+ PS > ovs-dpctl show
system@ovs-system:
lookups: hit:0 missed:0 lost:0
flows: 0
@@ -472,7 +539,7 @@ Dumping the ports should show the additional ports that were just added::
port 1: br-int (internal
port 3: Ethernet0
- > ovs-vsctl show
+ PS > ovs-vsctl show
4cd86499-74df-48bd-a64d-8d115b12a9f2
Bridge br-pif
Port "vEthernet (external)"
@@ -514,6 +581,7 @@ For example, to set up a switch team combined from ``Ethernet0 2`` and
Ethernet0 2 Intel(R) 82574L Gigabit Network Conn...
PS > New-NetSwitchTeam -Name external -TeamMembers "Ethernet0 2","Ethernet1 2"
+
PS > Get-NetSwitchTeam
Name : external
Members : {Ethernet1 2, Ethernet0 2}
@@ -523,7 +591,6 @@ This will result in a new adapter bound to the host called ``external``:
.. code-block:: powershell
PS > Get-NetAdapter
-
Name InterfaceDescription
---- --------------------
br-test Hyper-V Virtual Ethernet Adapter #4
@@ -571,51 +638,62 @@ Add patch ports and configure VLAN tagging
The Windows Open vSwitch implementation support VLAN tagging in the switch.
Switch VLAN tagging along with patch ports between ``br-int`` and ``br-pif`` is
used to configure VLAN tagging functionality between two VMs on different
-Hyper-Vs. To start, add a patch port from ``br-int`` to ``br-pif``::
+Hyper-Vs. To start, add a patch port from ``br-int`` to ``br-pif``:
+
+.. code-block:: powershell
+
+ PS > ovs-vsctl add-port br-int patch-to-pif
+ PS > ovs-vsctl set interface patch-to-pif type=patch \
+ options:peer=patch-to-int
- > ovs-vsctl add-port br-int patch-to-pif
- > ovs-vsctl set interface patch-to-pif type=patch \
- options:peer=patch-to-int
+Add a patch port from ``br-pif`` to ``br-int``:
-Add a patch port from ``br-pif`` to ``br-int``::
+.. code-block:: powershell
- > ovs-vsctl add-port br-pif patch-to-int
- > ovs-vsctl set interface patch-to-int type=patch \
- options:peer=patch-to-pif
+ PS > ovs-vsctl add-port br-pif patch-to-int
+ PS > ovs-vsctl set interface patch-to-int type=patch \
+ options:peer=patch-to-pif
-Re-Add the VIF ports with the VLAN tag::
+Re-Add the VIF ports with the VLAN tag:
- > ovs-vsctl add-port br-int ovs-port-a tag=900
- > ovs-vsctl add-port br-int ovs-port-b tag=900
+.. code-block:: powershell
+
+ PS > ovs-vsctl add-port br-int ovs-port-a tag=900
+ PS > ovs-vsctl add-port br-int ovs-port-b tag=900
Add tunnels
~~~~~~~~~~~
The Windows Open vSwitch implementation support VXLAN and STT tunnels. To add
tunnels. For example, first add the tunnel port between 172.168.201.101 <->
-172.168.201.102::
+172.168.201.102:
+
+.. code-block:: powershell
- > ovs-vsctl add-port br-int tun-1
- > ovs-vsctl set Interface tun-1 type=<port-type>
- > ovs-vsctl set Interface tun-1 options:local_ip=172.168.201.101
- > ovs-vsctl set Interface tun-1 options:remote_ip=172.168.201.102
- > ovs-vsctl set Interface tun-1 options:in_key=flow
- > ovs-vsctl set Interface tun-1 options:out_key=flow
+ PS > ovs-vsctl add-port br-int tun-1
+ PS > ovs-vsctl set Interface tun-1 type=<port-type>
+ PS > ovs-vsctl set Interface tun-1 options:local_ip=172.168.201.101
+ PS > ovs-vsctl set Interface tun-1 options:remote_ip=172.168.201.102
+ PS > ovs-vsctl set Interface tun-1 options:in_key=flow
+ PS > ovs-vsctl set Interface tun-1 options:out_key=flow
-...and the tunnel port between 172.168.201.101 <-> 172.168.201.105::
+...and the tunnel port between 172.168.201.101 <-> 172.168.201.105:
- > ovs-vsctl add-port br-int tun-2
- > ovs-vsctl set Interface tun-2 type=<port-type>
- > ovs-vsctl set Interface tun-2 options:local_ip=172.168.201.102
- > ovs-vsctl set Interface tun-2 options:remote_ip=172.168.201.105
- > ovs-vsctl set Interface tun-2 options:in_key=flow
- > ovs-vsctl set Interface tun-2 options:out_key=flow
+.. code-block:: powershell
+
+ PS > ovs-vsctl add-port br-int tun-2
+ PS > ovs-vsctl set Interface tun-2 type=<port-type>
+ PS > ovs-vsctl set Interface tun-2 options:local_ip=172.168.201.102
+ PS > ovs-vsctl set Interface tun-2 options:remote_ip=172.168.201.105
+ PS > ovs-vsctl set Interface tun-2 options:in_key=flow
+ PS > ovs-vsctl set Interface tun-2 options:out_key=flow
Where ``<port-type>`` is one of: ``stt`` or ``vxlan``
.. note::
- Any patch ports created between br-int and br-pif MUST be be deleted prior to
- adding tunnels.
+
+ Any patch ports created between br-int and br-pif MUST be be deleted prior
+ to adding tunnels.
Windows Services
----------------
@@ -624,55 +702,69 @@ Open vSwitch daemons come with support to run as a Windows service. The
instructions here assume that you have installed the Open vSwitch utilities and
daemons via ``make install``.
-.. note::
- The commands shown here can be run from MSYS bash or Windows command prompt.
+To start, create the database:
-To start, create the database::
+.. code-block:: powershell
+
+ PS > ovsdb-tool create C:/openvswitch/etc/openvswitch/conf.db \
+ "C:/openvswitch/usr/share/openvswitch/vswitch.ovsschema"
- > ovsdb-tool create C:/openvswitch/etc/openvswitch/conf.db \
- "C:/openvswitch/usr/share/openvswitch/vswitch.ovsschema"
+Create the ovsdb-server service and start it:
-Create the ovsdb-server service and start it::
+.. code-block:: powershell
- > sc create ovsdb-server \
- binpath="C:/openvswitch/usr/sbin/ovsdb-server.exe \
+ PS > sc create ovsdb-server \
+ binpath="C:/openvswitch/usr/sbin/ovsdb-server.exe \
C:/openvswitch/etc/openvswitch/conf.db \
-vfile:info --log-file --pidfile \
--remote=punix:db.sock --service --service-monitor"
- > sc start ovsdb-server
+ PS > sc start ovsdb-server
.. tip::
- One of the common issues with creating a Windows service is with mungled
- paths. You can make sure that the correct path has been registered with the
- Windows services manager by running::
- > sc qc ovsdb-server
+ One of the common issues with creating a Windows service is with mungled
+ paths. You can make sure that the correct path has been registered with the
+ Windows services manager by running:
+
+ .. code-block:: powershell
-Check that the service is healthy by running::
+ PS > sc qc ovsdb-server
- > sc query ovsdb-server
+Check that the service is healthy by running:
-Initialize the database::
+.. code-block:: powershell
+
+ PS > sc query ovsdb-server
- > ovs-vsctl --no-wait init
+Initialize the database:
-Create the ovs-vswitchd service and start it::
+.. code-block:: powershell
- > sc create ovs-vswitchd \
- binpath="C:/openvswitch/usr/sbin/ovs-vswitchd.exe \
- --pidfile -vfile:info --log-file --service --service-monitor"
- > sc start ovs-vswitchd
+ PS > ovs-vsctl --no-wait init
-Check that the service is healthy by running::
+Create the ovs-vswitchd service and start it:
- > sc query ovs-vswitchd
+.. code-block:: powershell
-To stop and delete the services, run::
+ PS > sc create ovs-vswitchd \
+ binpath="C:/openvswitch/usr/sbin/ovs-vswitchd.exe \
+ --pidfile -vfile:info --log-file --service --service-monitor"
+ PS > sc start ovs-vswitchd
+
+Check that the service is healthy by running:
+
+.. code-block:: powershell
+
+ PS > sc query ovs-vswitchd
+
+To stop and delete the services, run:
+
+.. code-block:: powershell
- > sc stop ovs-vswitchd
- > sc stop ovsdb-server
- > sc delete ovs-vswitchd
- > sc delete ovsdb-server
+ PS > sc stop ovs-vswitchd
+ PS > sc stop ovsdb-server
+ PS > sc delete ovs-vswitchd
+ PS > sc delete ovsdb-server
Windows CI Service
------------------