ovn: Automatically create br-int in ovn-controller.
[cascardo/ovs.git] / ovn / controller / ovn-controller.8.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <manpage program="ovn-controller" section="8" title="ovn-controller">
3     <h1>Name</h1>
4     <p>ovn-controller -- Open Virtual Network local controller</p>
5
6     <h1>Synopsis</h1>
7     <p><code>ovn-controller</code> [<var>options</var>] [<var>ovs-database</var>]</p>
8
9     <h1>Description</h1>
10     <p>
11       <code>ovn-controller</code> is the local controller daemon for
12       OVN, the Open Virtual Network.  It connects up to the OVN
13       Southbound database (see <code>ovn-sb</code>(5)) over the OVSDB
14       protocol, and down to the Open vSwitch database (see
15       <code>ovs-vswitchd.conf.db</code>(5)) over the OVSDB protocol and
16       to <code>ovs-vswitchd</code>(8) via OpenFlow.  Each hypervisor and
17       software gateway in an OVN deployment runs its own independent
18       copy of <code>ovn-controller</code>; thus,
19       <code>ovn-controller</code>'s downward connections are
20       machine-local and do not run over a physical network.
21     </p>
22
23     <h1>Configuration</h1>
24     <p>
25       <code>ovn-controller</code> retrieves most of its configuration
26       information from the local Open vSwitch's ovsdb-server instance.
27       The default location is <code>db.sock</code> in the local Open
28       vSwitch's "run" directory.  It may be overridden by specifying the
29       <var>ovs-database</var> argument in one of the following forms:
30     </p>
31     <ul>
32       <li>
33         <p>
34           <code>ssl:<var>ip</var>:<var>port</var></code>
35         </p>
36         <p>
37           The specified SSL <var>port</var> on the host at the given
38           <var>ip</var>, which must be expressed as an IP address (not a DNS
39           name) in IPv4 or IPv6 address format.  If <var>ip</var> is an IPv6
40           address, then wrap <var>ip</var> with square brackets, e.g.:
41           <code>ssl:[::1]:6640</code>.  The <code>--private-key</code>,
42           <code>--certificate</code> and either of <code>--ca-cert</code>
43           or <code>--bootstrap-ca-cert</code> options are mandatory when this
44           form is used.
45         </p>
46       </li>
47       <li>
48         <p>
49           <code>tcp:<var>ip</var>:<var>port</var></code>
50         </p>
51         <p>
52           Connect to the given TCP <var>port</var> on <var>ip</var>, where
53           <var>ip</var> can be IPv4 or IPv6 address. If <var>ip</var> is an
54           IPv6 address, then wrap <var>ip</var> with square brackets, e.g.:
55           <code>tcp:[::1]:6640</code>.
56         </p>
57       </li>
58       <li>
59         <p>
60           <code>unix:<var>file</var></code>
61         </p>
62         <p>
63           On POSIX, connect to the Unix domain server socket named
64           <var>file</var>.
65         </p>
66         <p>
67           On Windows, connect to a localhost TCP port whose value is written
68           in <var>file</var>.
69         </p>
70       </li>
71     </ul>
72     <p>
73       <code>ovn-controller</code> assumes it gets configuration
74       information from the following keys in the <code>Open_vSwitch</code>
75       table of the local OVS instance:
76       <ul>
77         <li>
78           <p>
79             <code>external_ids:system-id</code> specifies the chassis
80             name to use in the Chassis table.
81           </p>
82         </li>
83         <li>
84           <p>
85             <code>external_ids:ovn-bridge</code> specifies the
86             integration bridge to which logical ports are attached.
87             The default is <code>br-int</code>.  If this bridge does
88             not exist when ovn-controller starts, it will be created
89             automatically with the default configuration suggested in
90             <code>ovn-architecture</code>(7).
91           </p>
92         </li>
93         <li>
94           <p>
95             <code>external_ids:ovn-remote</code> specifies the OVN
96             database that this system should connect to for its
97             configuration.
98           </p>
99         </li>
100         <li>
101           <p>
102             <code>external_ids:ovn-encap-type</code> specifies the
103             encapsulation type that a chassis should use to connect to
104             this node.  Supported tunnel types for connecting
105             hypervisors are <code>geneve</code> and <code>stt</code>.
106             Gateways may use <code>geneve</code>, <code>vxlan</code>,
107             or <code>stt</code>.
108           </p>
109         </li>
110         <li>
111           <p>
112             <code>external_ids:ovn-encap-ip</code> specifies the IP
113             address that a chassis should use to connect to this node
114             using encapsulation type specified by
115             <code>external_ids:ovn-encap-ip</code>.
116           </p>
117         </li>
118         <li>
119           <p>
120             <code>external_ids:ovn-bridge-mappings</code> specifies a list
121             of key-value pairs that map a physical network name to a local
122             ovs bridge that provides connectivity to that network.
123             An example value mapping two physical network names to two ovs
124             bridges would be: <code>physnet1:br-eth0,physnet2:br-eth1</code>.
125           </p>
126         </li>
127       </ul>
128       <p>
129         Currently, <code>ovn-controller</code> does not support changing
130         the OVN database mid-run.  If the value needs to change, the
131         daemon must be restarted.  This behavior should be improved.
132       </p>
133     </p>
134
135     <h1>RUNTIME MANAGEMENT COMMANDS</h1>
136     <p>
137       <code>ovs-appctl</code> can send commands to a running
138       <code>ovn-controller</code> process.  The currently supported
139       commands are described below.
140       <dl>
141       <dt><code>exit</code></dt>
142       <dd>
143         Causes <code>ovn-controller</code> to gracefully terminate.
144       </dd>
145       </dl>
146     </p>
147
148 </manpage>