gnt-network(8)

Name
gnt-network - Ganeti network administration

Synopsis
gnt-network {command} [arguments...]

DESCRIPTION
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

  ADD

add
--network=*network*
[--gateway=*gateway*]
[--add-reserved-ips=*reserved-ips*]
[--network6=*network6*]
[--gateway6=*gateway6*]
[--mac-prefix=*macprefix*]
[--submit] [--print-jobid]
[--no-conflicts-check]
{network-name}

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 --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 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=*reserved-ips*]
[--remove-reserved-ips=*reserved-ips*]
[--network6=*network6*]
[--gateway6=*gateway6*]
[--mac-prefix=*macprefix*]
[--submit] [--print-jobid]
{network}

Modifies parameters from the network.

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 [--submit] [--print-jobid] {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]
[-o [+]field,...] [network-name...]

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.

The -v option activates verbose mode, which changes the display of 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 available fields and their meaning are:

ctime
    Creation timestamp

external_reservations
    External reservations

free_count
    Number of available addresses

gateway
    IPv4 gateway

gateway6
    IPv6 gateway

group_cnt
    Number of nodegroups

group_list
    List of nodegroups (group name, NIC mode, NIC link)

inst_cnt
    Number of instances

inst_list
    List of instances

mac_prefix
    MAC address prefix

map Actual mapping

mtime
    Modification timestamp

name
    Name

network
    IPv4 subnet

network6
    IPv6 subnet

reserved_count
    Number of reserved addresses

serial_no
    Network object serial number, incremented on each modification

tags
    Tags

uuid
    Network UUID

  LIST-FIELDS
list-fields [field...]

List available fields for networks.

  RENAME

rename [--submit] [--print-jobid] {oldname} {newname}

Renames a given network from oldname to newname.

See ganeti(7) for a description of --submit and other common options.

  INFO

info [network...]

Displays information about a given network.

  CONNECT

connect
[--no-conflicts-check]
[{-N|--nic-parameters} nic-param=*value*[,*nic-param*=*value*...]]
{network} [groups...]

Connect a network to given node groups (all if not specified) with the network parameters defined via the --nic-parameters option. Every network interface will inherit those parameters if assigned to a network.

The --no-conflicts-check option can be used to skip the check for conflicting IP addresses.

Passing mode and link as positional arguments along with network and groups is deprecated and not supported any more.

  DISCONNECT

disconnect {network} [groups...]

Disconnect a network from given node groups (all if not specified). This is possible only if no instance is using the network.

  Tags

  ADD-TAGS
add-tags [--from file] {network} {tag...}

Add tags to the given network. If any of the tags contains invalid characters, the entire operation will abort.

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.

  LIST-TAGS
list-tags {network}

List the tags of the given network.

  REMOVE-TAGS
remove-tags [--from file] {network} {tag...}

Remove tags from the given network. If any of the tags are not existing on the network, the entire operation will abort.

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.

REPORTING BUGS
Report bugs to the project's issue tracker (https://github.com/ganeti/ganeti/issues) or contact the developers using the Ganeti mailing list.

SEE ALSO
Ganeti overview and specifications: ganeti(7) (general overview), ganeti-os-interface(7) (guest OS definitions), ganeti-extstorage-interface(7) (external storage providers).

Ganeti commands: gnt-cluster(8) (cluster-wide commands), gnt-job(8) (job-related commands), gnt-node(8) (node-related commands), gnt-instance(8) (instance commands), gnt-os(8) (guest OS commands), gnt-storage(8) (storage commands), gnt-group(8) (node group commands), gnt-backup(8) (instance import/export commands), gnt-debug(8) (debug commands).

Ganeti daemons: ganeti-watcher(8) (automatic instance restarter), ganeti-cleaner(8) (job queue cleaner), ganeti-noded(8) (node daemon), ganeti-rapi(8) (remote API daemon).

Ganeti htools: htools(1) (generic binary), hbal(1) (cluster balancer), hspace(1) (capacity calculation), hail(1) (IAllocator plugin), hscan(1) (data gatherer from remote clusters), hinfo(1) (cluster information printer), mon-collector(7) (data collectors interface).

COPYRIGHT
Copyright (C) 2006-2015 Google Inc. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.