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.

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 possitional 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 project website 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.