Mock RPC for unit tests
[ganeti-local] / man / gnt-network.rst
index 9264044..3d71663 100644 (file)
@@ -14,8 +14,18 @@ Synopsis
 DESCRIPTION
 -----------
 
-The **gnt-network** command is used for network definition administration
-in the Ganeti system.
+The **gnt-network** command is used for network definition and
+administration in the Ganeti system. Each instance NIC can be connected
+to a network via the ``network`` NIC parameter. See **gnt-instance**\(8)
+for more details.
+
+BUGS
+----
+
+The ``hail`` iallocator hasn't been updated to take networks into
+account in Ganeti 2.7. The only way to guarantee that it works correctly
+is having your networks connected to all nodegroups. This will be fixed
+in a future version.
 
 COMMANDS
 --------
@@ -24,158 +34,177 @@ ADD
 ~~~
 
 | **add**
-| [--network=*NETWORK*]
-| [--gateway=*GATEWAY*]
-| [--add-reserved-ips=*RESERVEDIPS*]
-| [--network6=*NETWORK6*]
-| [--gateway6=*GATEWAY6*]
-| [--mac-prefix=*MACPREFIX*]
-| [--network-type=*NETWORKTYPE*]
+| [\--network=*NETWORK*]
+| [\--gateway=*GATEWAY*]
+| [\--add-reserved-ips=*RESERVEDIPS*]
+| [\--network6=*NETWORK6*]
+| [\--gateway6=*GATEWAY6*]
+| [\--mac-prefix=*MACPREFIX*]
+| [\--submit] [\--print-job-id]
+| [\--no-conflicts-check]
 | {*network*}
 
 Creates a new network with the given name. The network will be unused
 initially. To connect it to a node group, use ``gnt-network connect``.
 ``--network`` option is mandatory. All other are optional.
 
-The ``--network`` option allows you to specify the network in a CIDR notation.
+The ``--network`` option allows you to specify the network in a CIDR
+notation.
 
-The ``--gateway`` option allows you to specify the default gateway for this
-network.
-
-The ``--network-type`` can be none, private or public.
+The ``--gateway`` option allows you to specify the default gateway for
+this network.
 
 IPv6 semantics can be assigned to the network via the ``--network6`` and
-``--gateway6`` options. IP pool is meaningless for ipv6 so those two values
-can be used for EUI64 generation from a NIC's mac value.
+``--gateway6`` options. IP pool is meaningless for IPV6 so those two
+values can be used for EUI64 generation from a NIC's MAC address.
+
+The ``--no-conflicts-check`` option can be used to skip the check for
+conflicting IP addresses.
+
+Note that a when connecting a network to a node group (see below) you
+can specify also the NIC mode and link that will be used by instances on
+that group to physically connect to this network. This allows the system
+to work even if the parameters (eg. the VLAN number) change between
+groups.
+
+See **ganeti**\(7) for a description of ``--submit`` and other common
+options.
 
 MODIFY
 ~~~~~~
 
 | **modify**
-| [--gateway=*GATEWAY*]
-| [--add-reserved-ips=*RESERVEDIPS*]
-| [--remove-reserved-ips=*RESERVEDIPS*]
-| [--network6=*NETWORK6*]
-| [--gateway6=*GATEWAY6*]
-| [--mac-prefix=*MACPREFIX*]
-| [--network-type=*NETWORKTYPE*]
+| [\--gateway=*GATEWAY*]
+| [\--add-reserved-ips=*RESERVEDIPS*]
+| [\--remove-reserved-ips=*RESERVEDIPS*]
+| [\--network6=*NETWORK6*]
+| [\--gateway6=*GATEWAY6*]
+| [\--mac-prefix=*MACPREFIX*]
+| [\--submit] [\--print-job-id]
 | {*network*}
 
 Modifies parameters from the network.
 
-Unable to modify network (ip range). Create a new network if you want to do
-so. All other options are documented in the **add** command above.
+Unable to modify network (IP address range). Create a new network if you
+want to do so. All other options are documented in the **add** command
+above.
+
+See **ganeti**\(7) for a description of ``--submit`` and other common
+options.
 
 REMOVE
 ~~~~~~
 
-| **remove** {*network*}
+| **remove** [\--submit] [\--print-job-id] {*network*}
 
 Deletes the indicated network, which must be not connected to any node group.
 
+See **ganeti**\(7) for a description of ``--submit`` and other common options.
+
 LIST
 ~~~~
 
-| **list** [--no-headers] [--separator=*SEPARATOR*] [-v]
+| **list** [\--no-headers] [\--separator=*SEPARATOR*] [-v]
 | [-o *[+]FIELD,...*] [network...]
 
-Lists all existing networks in the cluster.
+Lists all existing networks in the cluster. If no group names are given,
+then all groups are included. Otherwise, only the named groups will be
+listed.
 
 The ``--no-headers`` option will skip the initial header line. The
-``--separator`` option takes an argument which denotes what will be
-used between the output fields. Both these options are to help
-scripting.
+``--separator`` option takes an argument which denotes what will be used
+between the output fields. Both these options are to help scripting.
 
 The ``-v`` option activates verbose mode, which changes the display of
-special field states (see **ganeti(7)**).
+special field states (see **ganeti**\(7)).
 
-The ``-o`` option takes a comma-separated list of output fields.
-If the value of the option starts with the character ``+``, the new
-fields will be added to the default list. This allows to quickly
-see the default list plus a few other fields, instead of retyping
-the entire list of fields.
+The ``-o`` option takes a comma-separated list of output fields. If the
+value of the option starts with the character ``+``, the new fields will
+be added to the default list. This allows to quickly see the default
+list plus a few other fields, instead of retyping the entire list of
+fields.
 
 The available fields and their meaning are:
 
-name
-    the group name
+@QUERY_FIELDS_NETWORK@
 
-group_count
-    the number of nodegroups connected to the network
+LIST-FIELDS
+~~~~~~~~~~~
 
-group_list
-    the list of nodegroups connected to the network
+**list-fields** [field...]
 
-inst_cnt
-    the number of instances use the network
+List available fields for networks.
 
-inst_list
-    the list of instances that at least one of their NICs is assigned
-    to the network
+INFO
+~~~~
 
-external_reservations
-    the IPs that cannot be assigned to an instance
+| **info** [network...]
 
-free_count
-    how many IPs have left in the pool
+Displays information about a given network.
 
-gateway
-    the networks gateway
+CONNECT
+~~~~~~~
 
-map
-    a nice text depiction of the available/reserved IPs in the network
+| **connect**
+| [\--no-conflicts-check]
+| {*network*} {*mode*} {*link*} [*groups*...]
 
-reserved_count
-    how many IPs have been reserved so far in the network
+Connect a network to given node groups (all if not specified) with the
+network parameters *mode* and *link*. Every network interface will
+inherit those parameters if assigned in a network.
 
-network6
-    the ipv6 prefix of the network
+The ``--no-conflicts-check`` option can be used to skip the check for
+conflicting IP addresses.
 
-gateway6
-    the ipv6 gateway of the network
+DISCONNECT
+~~~~~~~~~~
 
-mac_prefix
-    the mac_prefix of the network (if a NIC is assigned to the network it
-    it gets the mac_prefix of the network)
+| **disconnect** {*network*} [*groups*...]
 
-network_type
-    the type of the network (public, private)
+Disconnect a network from given node groups (all if not specified). This
+is possible only if no instance is using the network.
 
-If no group names are given, then all groups are included. Otherwise,
-only the named groups will be listed.
 
-LIST-FIELDS
-~~~~~~~~~~~
+Tags
+~~~~
 
-**list-fields** [field...]
+ADD-TAGS
+^^^^^^^^
 
-List available fields for networks.
+**add-tags** [\--from *file*] {*networkname*} {*tag*...}
 
-RENAME
-~~~~~~
+Add tags to the given network. If any of the tags contains invalid
+characters, the entire operation will abort.
 
-| **rename** {*oldname*} {*newname*}
+If the ``--from`` option is given, the list of tags will be extended
+with the contents of that file (each line becomes a tag). In this case,
+there is not need to pass tags on the command line (if you do, both
+sources will be used). A file name of ``-`` will be interpreted as
+stdin.
 
-Renames a given network from *oldname* to *newname*. NOT implemeted yet
+LIST-TAGS
+^^^^^^^^^
 
-INFO
-~~~~
+**list-tags** {*networkname*}
 
-| **info** [network...]
+List the tags of the given network.
 
-Displays information about a given network.
+REMOVE-TAGS
+^^^^^^^^^^^
 
-CONNECT
-~~~~~~~
-| **connect** {*network*} {*group*} {*mode*} {*link*}
+**remove-tags** [\--from *file*] {*networkname*} {*tag*...}
 
-Connect a network to a given nodegroup with the netparams (*mode*, *link*).
-Every nic will inherit those netparams if assigned in a network.
-*group* can be ``all`` if you want to connect to all existing nodegroups
+Remove tags from the given network. If any of the tags are not existing
+on the network, the entire operation will abort.
 
-DISCONNECT
-~~~~~~~~~~
-| **disconnect** {*network*} {*group*}
+If the ``--from`` option is given, the list of tags to be removed will
+be extended with the contents of that file (each line becomes a tag). In
+this case, there is not need to pass tags on the command line (if you
+do, tags from both sources will be removed). A file name of ``-`` will
+be interpreted as stdin.
 
-Disconnect a network to a nodegroup. This is possible only if no instance
-is using the network.
+.. vim: set textwidth=72 :
+.. Local Variables:
+.. mode: rst
+.. fill-column: 72
+.. End: