diff --git a/.gitignore b/.gitignore index 0bc1ec97c..2d1e5978c 100644 --- a/.gitignore +++ b/.gitignore @@ -105,3 +105,6 @@ venv.bak/ # mypy .mypy_cache/ + +# Mac +.DS_Store diff --git a/doc/source/_includes/data-networks-overview.rest b/doc/source/_includes/data-networks-overview.rest index 0c828b361..8b1378917 100644 --- a/doc/source/_includes/data-networks-overview.rest +++ b/doc/source/_includes/data-networks-overview.rest @@ -1 +1 @@ -.. This file must exist to satisfy build requirements. \ No newline at end of file + diff --git a/doc/source/datanet/adding-a-static-ip-address-to-a-data-interface.rst b/doc/source/datanet/adding-a-static-ip-address-to-a-data-interface.rst new file mode 100644 index 000000000..8adb7e789 --- /dev/null +++ b/doc/source/datanet/adding-a-static-ip-address-to-a-data-interface.rst @@ -0,0 +1,69 @@ + +.. jow1443038432894 +.. _adding-a-static-ip-address-to-a-data-interface: + +=========================================== +Add a Static IP Address to a Data Interface +=========================================== + +You can add static IP addresses to a data interface using the web +administration interface or the CLI. + +.. rubric:: |context| + +For VXLAN connectivity between VMs, you must add appropriate endpoint IP +addresses to the worker node interfaces. You can add individual static +addresses, or you can assign addresses from a pool associated with the +data interface. For more about using address pools, see :ref:`Using IP +Address Pools for Data Interfaces `. + +To add a static IP address using the web administration interface, refer to the +following steps. To use the CLI, see :ref:`Managing Data Interface Static IP +Addresses Using the CLI `. + +.. rubric:: |prereq| + +To make interface changes, you must lock the worker host first. + +.. rubric:: |proc| + +.. _adding-a-static-ip-address-to-a-data-interface-steps-zkx-d1h-hr: + +#. Lock the worker host. + +#. Set the interface to support an IPv4 or IPv6 address, or both. + + #. Select **Admin** \> **Platform** \> **Host Inventory** to open the Host + Inventory page. + + #. Select the **Host** tab, and then double-click the worker host to open + the Host Detail page. + + #. Select the **Interfaces** tab and click **Edit Interface** for the data + interface you want to edit. + + #. In the Edit Interface dialog box, set the **IPv4 Addressing Mode** or + the **IPv6 Addressing Mode** to **Static**. + + .. image:: figures/bju1538154656153.png + +#. Add an IPv4 or IPv6 address to the interface. + + #. On the Host Detail page, click the **Name** of the interface to open + the Interface Detail page. + + .. image:: figures/jow1443041105867.png + + #. Click **Create Address** to open the Create Address dialog box. + + .. image:: figures/jow1442607685238.png + + #. Enter the IPv4 or IPv6 address and netmask \(for example, + 192.168.1.3/24\), and then click **Create Address**. + + The new address is added to the **Address List**. + +#. Unlock the worker node and wait for it to become available. + +For more information, see :ref:`Managing Data Interface Static IP Addresses +Using the CLI ` \ No newline at end of file diff --git a/doc/source/datanet/adding-and-maintaining-routes-for-a-vxlan-network.rst b/doc/source/datanet/adding-and-maintaining-routes-for-a-vxlan-network.rst new file mode 100644 index 000000000..4142724e8 --- /dev/null +++ b/doc/source/datanet/adding-and-maintaining-routes-for-a-vxlan-network.rst @@ -0,0 +1,56 @@ + +.. jow1425584215069 +.. _adding-and-maintaining-routes-for-a-vxlan-network: + +=========================================== +Add and Maintain Routes for a VXLAN Network +=========================================== + +You can add or delete routing table entries for hosts on a VXLAN network using +the CLI. + +.. rubric:: |prereq| + +The worker node must be locked. + +.. rubric:: |proc| + +To add routes, use the following command. + +.. code-block:: none + + ~(keystone_admin)]$ system host-route-add + +where + +**node** + is the name or UUID of the worker node + +**ifname** + is the name of the interface + +**network** + is an IPv4 or IPv6 network address + +**prefix** + is the netmask length for the network address + +**gateway** + is the default gateway + +**metric** + is the cost of the route \(the number of hops\) + +To delete routes, use the following command. + +.. code-block:: none + + ~(keystone_admin)]$ system host-route-delete + +where **uuid** is the UUID of the route to be deleted. + +To list existing routes, including their UUIDs, use the following command. + +.. code-block:: none + + ~(keystone_admin)]$ system host-route-list worker-0 \ No newline at end of file diff --git a/doc/source/datanet/adding-data-networks-using-the-cli.rst b/doc/source/datanet/adding-data-networks-using-the-cli.rst new file mode 100644 index 000000000..d04b9d818 --- /dev/null +++ b/doc/source/datanet/adding-data-networks-using-the-cli.rst @@ -0,0 +1,97 @@ + +.. oiq1559818630326 +.. _adding-data-networks-using-the-cli: + +=============================== +Add Data Networks Using the CLI +=============================== + +If you prefer, you can add data networks using the CLI. You can set up flat, +VLAN and VXLAN data networks over physical networks using the **controller-0** +command-line interface. The data networks provide connectivity for project +networks. + +.. rubric:: |prereq| + + +.. _adding-data-networks-using-the-cli-prereq-controller-0-ready: + +Controller-0 must be installed and configured. + +.. rubric:: |proc| + +.. _adding-data-networks-using-the-cli-steps-ek5-4fs-hkb: + +- To create a data network using the CLI, use the following command. + + .. code-block:: none + + ~(keystone_admin)$ system datanetwork-add -d -m -p -g -t -M + + where + + **** + A description of the data network. + + **** + The MTU of the data network. + + .. note:: + To attach to the data network, data interfaces must be configured + with an equal or larger MTU. + + **** + The port of the data network. + + **** + The multicast group of the data network. + + **** + The time-to-live of the data network. + + **** + For networks of vxlan only, mode can be either **dynamic** or + **static**. + + If set to **dynamic**, must also be specified. + + **** + The name assigned to the data network. + + **** + The type of data network to be created \(**flat**, **vlan**, or + **vxlan**\) + + .. note:: + **vxlan** is only applicable to |prod-os|. + + For example, to add a VLAN data network named datanet-a: + + .. code-block:: none + + ~(keystone_admin)$ system datanetwork-add datanet-a vlan + +--------------+--------------------------------------+ + | Property | Value | + +--------------+--------------------------------------+ + | id | 2 | + | uuid | 104071a4-1c26-4383-ba07-72e05316d540 | + | name | datanet-a | + | network_type | vlan | + | mtu | 1500 | + | description | None | + +--------------+--------------------------------------+ + + You must configure at least one data network in order to assign data + interfaces to worker nodes and unlock the hosts. + +.. rubric:: |postreq| + +For the |prod-os| application, after creating a data network of the VLAN or +VXLAN type, you can assign one or more segmentation ranges consisting of a set +of consecutive VLAN IDs \(for VLANs\) or VNIs \(for VXLANs\) using the +:command:`openstack network segment range create` command. Segmentation ranges +are required in order to set up project networks. + +.. note:: + Segmentation ranges are not required in order to attach interfaces and + unlock openstack-compute labeled worker nodes. \ No newline at end of file diff --git a/doc/source/datanet/adding-segmentation-ranges-using-the-cli.rst b/doc/source/datanet/adding-segmentation-ranges-using-the-cli.rst new file mode 100644 index 000000000..21acf9984 --- /dev/null +++ b/doc/source/datanet/adding-segmentation-ranges-using-the-cli.rst @@ -0,0 +1,78 @@ + +.. jow1411739340460 +.. _adding-segmentation-ranges-using-the-cli: + +===================================== +Add Segmentation Ranges Using the CLI +===================================== + +You can use the CLI to add segmentation ranges to data networks. + +.. rubric:: |proc| + +.. _adding-segmentation-ranges-using-the-cli-steps-scn-pxd-4p: + +#. Use the :command:`openstack network segment range` command to create + VLAN/VXLAN segmentation ranges. + + This example creates segmentation ranges on data network **data-net-a**. + + .. code-block:: none + + ~(keystone_admin)]$ openstack network segment range create segment-a-common \ + --description "Shared segmentation range" + --physical-network data-net-a \ + --network-type vlan \ + --minimum 10 \ + --maximum 10 \ + + ~(keystone_admin)]$ openstack network segment range create segment-a-project1 \ + --private \ + --project ${project1_UUID} \ + --physical-network data-net-a \ + --network-type vlan \ + --minimum 623 + + ~(keystone_admin)]$ openstack network segment range create segment-a-project2 \ + --private \ + --project ${project2_UUID} \ + --physical-network data-net-b \ + --network-type vlan \ + --minimum 664 \ + --maximum 680 + + where + + **** + name of the segment is a positional argument and can be supplied at the + beginning or the end of the :command:`openstack network segment range + create` command. + + This is not a named option. + + **description** + is a description of the segmentation range. + + **private** + is an flag to denote this is a segmentation range for a single project. + + **project** + is the name or UUID of the project associated with the range. + + **physical-network** + is the data network associated with the range. + + **network type** + is the network type \(VLAN/VXLAN\) of the range. + + **minimum** + is the minimum value of the segmentation range. + + **maximum** + is the maximum value of the segmentation range. + +You can also obtain information about segmentation ranges using the following command: + +.. code-block:: none + + ~(keystone_admin)]$ openstack network segment range show \ No newline at end of file diff --git a/doc/source/datanet/assigning-a-data-network-to-an-interface.rst b/doc/source/datanet/assigning-a-data-network-to-an-interface.rst new file mode 100644 index 000000000..bf5a82b74 --- /dev/null +++ b/doc/source/datanet/assigning-a-data-network-to-an-interface.rst @@ -0,0 +1,19 @@ + +.. riw1559818822179 +.. _assigning-a-data-network-to-an-interface: + +===================================== +Assign a Data Network to an Interface +===================================== + +In order to associate the L2 Network definition of a Data Network with a +physical network, the Data Network must be mapped to an Ethernet or Aggregated +Ethernet interface on a worker node. + +.. rubric:: |context| + +The command for performing the mapping has the format: + +.. code-block:: none + + system interface‐datanetwork‐assign \ No newline at end of file diff --git a/doc/source/datanet/changing-the-mtu-of-a-data-interface-using-the-cli.rst b/doc/source/datanet/changing-the-mtu-of-a-data-interface-using-the-cli.rst new file mode 100644 index 000000000..9d159e00a --- /dev/null +++ b/doc/source/datanet/changing-the-mtu-of-a-data-interface-using-the-cli.rst @@ -0,0 +1,45 @@ + +.. hyg1467916541021 +.. _changing-the-mtu-of-a-data-interface-using-the-cli: + +================================================ +Change the MTU of a Data Interface Using the CLI +================================================ + +You can change the MTU value for a data interface from the OpenStack Horizon +Web interface or the CLI. + +.. rubric:: |context| + +The MTU must be changed while the worker host is locked. + +You can use CLI commands to lock and unlock hosts, and to modify the MTU +on the hosts. + +.. code-block:: none + + ~(keystone_admin)]$ system host-lock + ~(keystone_admin)]$ system host-if-modify --imtu + ~(keystone_admin)]$ system host-unlock + +where: + +**** + is the name of the host + +**** + is the name of the interface + +**** + is the new MTU value + +For example: + +.. code-block:: none + + ~(keystone_admin)]$ system host-if-modify worker-0 enp0s8 --imtu 1496 + +.. note:: + You cannot set the MTU on an openstack-compute-labeled worker node + interface to a value smaller than the largest MTU used on its data + networks. \ No newline at end of file diff --git a/doc/source/datanet/changing-the-mtu-of-a-data-interface.rst b/doc/source/datanet/changing-the-mtu-of-a-data-interface.rst new file mode 100644 index 000000000..116053eee --- /dev/null +++ b/doc/source/datanet/changing-the-mtu-of-a-data-interface.rst @@ -0,0 +1,44 @@ + +.. rst1448489015877 +.. _changing-the-mtu-of-a-data-interface: + +================================== +Change the MTU of a Data Interface +================================== + +You can change the MTU value for a data interface within limits determined by +the data network to which the interface is attached. + +.. rubric:: |context| + +The data interface MTU must be equal to or greater than the MTU of the data +network. + +.. rubric:: |prereq| + +You must lock the host for the interface on which you want to change the MTU. + +.. rubric:: |proc| + +.. _changing-the-mtu-of-a-data-interface-steps-hfm-5nb-p5: + +#. Lock all hosts attached to the data network. + + #. From **Admin** \> **Platform** \> **Host Inventory**, select the + **Hosts** tab. + + #. From the **Edit** menu for the standby controller, select **Lock Host**. + +#. On all the hosts, edit the interface to change the MTU value. + + #. Click the name of the host, and then select the **Interfaces** tab and + click **Edit** for the interface you want to change. + + #. In the Edit Interface dialog, edit the **MTU** field, and then click + **Save**. + +#. Unlock all the hosts. + + From the **Edit** menu for the host, select **Unlock Host**. + + The network MTU is updated with the new value. \ No newline at end of file diff --git a/doc/source/datanet/configuring-data-interfaces-for-vxlans.rst b/doc/source/datanet/configuring-data-interfaces-for-vxlans.rst new file mode 100644 index 000000000..c6456ae67 --- /dev/null +++ b/doc/source/datanet/configuring-data-interfaces-for-vxlans.rst @@ -0,0 +1,16 @@ + +.. uhq1476460566339 +.. _configuring-data-interfaces-for-vxlans: + +==================================== +Configure Data Interfaces for VXLANs +==================================== + +For data interfaces attached to VXLAN-based data networks, endpoint IP +addresses, \(static or dynamic from a IP Address pool\) and possibly IP +Routes are additionally required on the host data interfaces. + +You can complete the VXLAN data network setup by using the web +administration interface or the CLI. For more information on setting up +VXLAN Data Networks, see tasks related to :ref:`VXLAN data network setup +completion `. \ No newline at end of file diff --git a/doc/source/datanet/configuring-data-interfaces.rst b/doc/source/datanet/configuring-data-interfaces.rst new file mode 100644 index 000000000..7e28c98ce --- /dev/null +++ b/doc/source/datanet/configuring-data-interfaces.rst @@ -0,0 +1,139 @@ + +.. lgk1559832444795 +.. _configuring-data-interfaces: + +========================= +Configure Data Interfaces +========================= + +A **data** class interface attaches the host to a data network providing the +underlying network for OpenStack Neutron Tenant/Project Networks. + +.. rubric:: |context| + +.. See the following sections in |node-doc|: + +.. _configuring-data-interfaces-ul-vvz-qst-wlb: + +.. xreflink - :ref:`Interface Provisioning ` + +.. xreflink - :ref:`Configuring Ethernet Interfaces ` + +.. xreflink - :ref:`Configuring Aggregated Interfaces ` + +.. xreflink - :ref:`Configuring VLAN Interfaces ` + +For each of the above procedures, configure the node interface specifying the +``ifclass`` as ``data`` and assign one or more data networks to the node +interface. + +.. xreflink As an example for an Ethernet interface, repeat the procedure in + |node-doc|: :ref:`Configuring Ethernet Interfaces + `. + +.. rubric:: |proc| + +.. _configuring-data-interfaces-steps-twz-gsh-lkb: + +#. List the attached interfaces. + + To list all interfaces, use the :command:`system host-if-list` command and + include the -a flag. + + .. code-block:: none + + ~(keystone_admin)]$ system host-if-list -a controller-0 + +---...+----------+----------+...+---------------+...+-------------------+ + | uuid | name | class | | ports | | data networks | + +---...+----------+----------+...+---------------+...+-------------------+ + | 68...| ens787f3 | None | | [u'ens787f3'] | | [] | + | 79...| data0 | data | | [u'ens787f0'] | | [u'group0-data0'] | + | 78...| cluster0 | platform | | [] | | [] | + | 89...| ens513f3 | None | | [u'ens513f3'] | | [] | + | 97...| ens803f1 | None | | [u'ens803f1'] | | [] | + | d6...| pxeboot0 | platform | | [u'eno2'] | | [] | + | d6...| mgmt0 | platform | | [] | | [] | + +---...+----------+----------+...+---------------+...+-------------------+ + +#. Attach an interface to a data network. + + Use a command sequence of the following form: + + .. code-block:: none + + ~(keystone_admin)]$ system host-if-modify -n -m -c [--ipv4-mode=ip4_mode [ipv4-pool addr_pool]] [--ipv6-mode=ip6_mode [ipv6-pool addr_pool]] + ~(keystone_admin)]$ system interface-datanetwork-assign + + where the following options are available: + + **ifname** + A name for the interface. + + **mtu** + The MTU for the interface. + + .. note:: + The MTU must be equal to or larger than the MTU of the data network + to which the interface is attached. + + **ifclass** + The class of the interface. The valid classes are **platform**, + **data**, **pci-sriov**, and **pci-passthrough**. + + **data network** + The name or ID of the data network to assign the interface to. + + **hostname** + The name or UUID of the host. + + **ethname** + The name or UUID of the Ethernet interface to use. + + **ip4\_mode** + The mode for assigning IPv4 addresses to a data interface \(static or + pool.\) + + **ip6\_mode** + The mode for assigning IPv6 addresses to a data interface \(static or + pool.\) + + **addr\_pool** + The name of an IPv4 or IPv6 address pool, for use with the pool mode + of IP address assignment for data interfaces. + +.. xreflink For valid values, see |node-doc|: :ref:`Interface + Settings `. + + The following example attaches an interface named **enp0s9** to a VLAN + data network named **datanet-a**, using the Ethernet interface + **enp0s9** on **worker-0**: + + .. code-block:: none + + ~(keystone_admin)]$ system host-if-modify -n enp0s9 -c data worker-0 enp0s9 + +-------------------+---------------------------------------+ + | Property | Value | + +-------------------+---------------------------------------+ + | ifname | enp0s3 | + | ifclass | data | + | iftype | ethernet | + | ports | [u'enp0s3'] | + | datanetworks | datanet-a | + | imac | 08:00:27:66:38:c6 | + | imtu | 1500 | + | aemode | None | + | schedpolicy | None | + | txhashpolicy | None | + | uuid | 4ff97cc5-8e59-4763-9a85-c4be3996ddbe | + | ihost_uuid | 327b2136-ffb6-4cd5-8fed-d2ec545302aa | + | vlan_id | None | + | uses | [] | + | used_by | [] | + | created_at | 2015-12-23T13:04:49.768322+00:00 | + | updated_at | 2015-12-23T16:16:19.540661+00:00 | + | sriov_numvfs | 0 | + | ipv4_mode | disabled | + | ipv6_mode | disabled | + | accelerated | [u'True'] | + +-------------------+---------------------------------------+ + ~(keystone_admin)]$ interface-datanetwork-assign controller-1 enp0s9 datanet-a \ No newline at end of file diff --git a/doc/source/datanet/data-network-management-data-networks.rst b/doc/source/datanet/data-network-management-data-networks.rst new file mode 100644 index 000000000..2369b72a0 --- /dev/null +++ b/doc/source/datanet/data-network-management-data-networks.rst @@ -0,0 +1,49 @@ + +.. jjl1559817878161 +.. _data-network-management-data-networks: + +=========================== +Data Networks in Kubernetes +=========================== + +|prod-long| data network management allows you to model the L2 networks that +are attached to node data, pci-sriov and pci-passthrough interfaces. + +A data network represents a Layer 2 physical or virtual network, or set of +virtual networks, used to provide the underlying network connectivity needed +to support the application networks. Multiple data networks may be configured +as required, and realized over the same or different physical networks. Access +to external networks is typically \(although not necessarily\) granted to +worker nodes using a data network. The extent of this connectivity, including +access to the open internet, is application dependent. + +Data networks are required for |prod-os| deployments and for the base +|prod-long| if you wish to deploy container applications with SR-IOV devices. + +Data networks are created by the administrator to make use of an underlying set +of resources on a physical network. The following types of data networks can be +created: + +**flat** + A data network mapped entirely over the physical network. +**VLAN** + A data network implemented on a physical network using a VLAN identifier. + This allows multiple data networks over the same physical network. + +**VXLAN** + .. note:: + This data interface is ONLY applicable to the |prod-os| application. + + Static VXLAN is limited to one data network, and if configured, it must + be enabled on all openstack-compute labeled nodes. + + A data network implemented across non-contiguous physical networks connected + by Layer 3 routers, using a VNI identifier. This allows multiple data + networks over physically separated Layer 2 networks. + +There are no specific requirements for network services to be available on the +data network. However, you must ensure that all network services required by +the guests running on the worker nodes are available. For configuration +purposes, the worker nodes themselves are entirely served by the services +provided by the controller nodes over the internal management and cluster-host +networks. \ No newline at end of file diff --git a/doc/source/datanet/data-networks-overview.rst b/doc/source/datanet/data-networks-overview.rst new file mode 100644 index 000000000..90e10b819 --- /dev/null +++ b/doc/source/datanet/data-networks-overview.rst @@ -0,0 +1,52 @@ + +.. wdq1463583173409 +.. _data-networks-overview: + +=================================== +Data Networks in OpenStack Overview +=================================== + +Data networks are used to model the L2 Networks that nodes' data, pci-sriov +and pci-passthrough interfaces attach to. + +.. note:: + + Data networks are required if you plan to deploy the openstack application + or provide SR-IOV network interface access to container workloads. + +A Layer 2 physical or virtual network or set of virtual networks is used to +provide the underlying network connectivity needed to support the application +project networks. Multiple data networks may be configured as required, and +realized over the same or different physical networks. Access to external +networks is typically granted to the **openstack-compute** labeled worker nodes +using the data network. The extent of this connectivity, including access to +the open internet, is application dependent. + +Data networks are created at the |prod| level. Flat, VLAN and VXLAN type +data networks are supported by the |prod-os| virtual switch. For details on +creating data networks and assigning them to node interfaces, see the +following documentation: + +.. _data-networks-overview-ul-yj1-dtq-3nb: + +- :ref:`Adding Data Networks Using the CLI + ` + +- :ref:`Assigning a Data Network to an Interface + ` + +- :ref:`Removing a Data Network Using the CLI + ` + +VXLAN Data Networks are specific to |prod-os| application. + +.. xreflink and are described in detail in :ref:`VXLAN Data Networks + `. + +Segmentation ID ranges for VLAN and VXLAN data networks are defined through +OpenStack Neutron commands, see :ref:`Adding Segmentation Ranges Using the CLI +`. + +.. only:: partner + + .. include:: ../_includes/data-networks-overview.rest \ No newline at end of file diff --git a/doc/source/datanet/differences-between-dynamic-and-static-vxlan-modes.rst b/doc/source/datanet/differences-between-dynamic-and-static-vxlan-modes.rst new file mode 100644 index 000000000..43386ef2a --- /dev/null +++ b/doc/source/datanet/differences-between-dynamic-and-static-vxlan-modes.rst @@ -0,0 +1,41 @@ + +.. xoq1512159092473 +.. _differences-between-dynamic-and-static-vxlan-modes: + +================================================== +Differences Between Dynamic and Static VXLAN Modes +================================================== + +This section summarizes the differences between dynamic and static VXLAN modes. + +.. _differences-between-dynamic-and-static-vxlan-modes-table-exv-tbr-1bb: + +.. list-table:: Differences between the Dynamic and Static VXLAN modes + :widths: auto + :header-rows: 1 + + * - Destination MAC\\mode + - Static VXLAN mode + - Dynamic VXLAN mode + * - Known MAC address + - Unicast packet is sent to destination worker node. + - Unicast packet is sent to destination worker node. + * - Unknown MAC address + - The packet is dropped. + - A multicast packet is sent to all registered nodes. + * - Broadcast MAC address + - #. If the packet is an IPv4 ARP packet, and the target IP address is + known, then a reply packet is created and sent to the originator + directly without involving the intended recipient or destination + VTEP node. + #. Otherwise the packet is cloned and a copy is sent to each + registered/known worker node on that data network. + - A multicast packet is sent to all registered nodes. + * - Multicast MAC address + - #. If the packet is an ICMPv6 ND packet, and the target IP address is + known, then a reply packet is created and sent to the originator + directly without involving the intended recipient or destination + VTEP node. + #. Otherwise the packet is cloned and a copy is sent to each + registered/known worker node on that data network. + - A multicast packet is sent to all registered nodes. \ No newline at end of file diff --git a/doc/source/datanet/displaying-data-network-information-using-horizon.rst b/doc/source/datanet/displaying-data-network-information-using-horizon.rst new file mode 100644 index 000000000..a6304493e --- /dev/null +++ b/doc/source/datanet/displaying-data-network-information-using-horizon.rst @@ -0,0 +1,40 @@ + +.. qks1559818290232 +.. _displaying-data-network-information-using-horizon: + +============================================== +Display Data Network Information Using Horizon +============================================== + +You can view data network details from the Horizon Web interface or the CLI. +You can also view data network topologies from Horizon. + +.. rubric:: |context| + +Using Horizon, you can obtain information about data networks using the +following: + +The **Data Network Topology** view. This is a graphical representation of all +data networks on the system and their connections to worker hosts. You can +select individual data networks to view details. You can also review active +alarms for data network connections. + +.. For more information, see :ref:`The Data Network Topology View `. + +.. note:: + You cannot make changes from this view. + +Both places use the **Data Network Details** tab to present details. If you +prefer, you can view the details using the CLI; for more information, see +:ref:`Displaying Data Network Information Using the CLI +`. + +.. rubric:: |proc| + +#. From the left pane menu, select **Admin** \> **Platform** \> **Data + Networks**. + +#. Click the name of the data network to open the Data Network Overview page. + + Details for the data network are displayed and, in the case of |prod-os|, + the project networks. \ No newline at end of file diff --git a/doc/source/datanet/displaying-data-network-information-using-the-cli.rst b/doc/source/datanet/displaying-data-network-information-using-the-cli.rst new file mode 100644 index 000000000..a74dc4f89 --- /dev/null +++ b/doc/source/datanet/displaying-data-network-information-using-the-cli.rst @@ -0,0 +1,39 @@ + +.. anh1559818482640 +.. _displaying-data-network-information-using-the-cli: + +============================================== +Display Data Network Information Using the CLI +============================================== + +You can display information about data networks from the CLI. + +.. rubric:: |proc| + +.. _displaying-data-network-information-using-the-cli-steps-zln-xky-hkb: + +#. Retrieve the names of the data networks. + + .. code-block:: none + + ~(keystone_admin)$ system datanetwork-list + +--------------------------------------+--------------+----------+------+ + | uuid | name | network_ | mtu | + | | | type | | + +--------------------------------------+--------------+----------+------+ + | 3a575af8-01a7-44ca-9519-edaa2f06c74b | group0-data0 | vlan | 1500 | + +--------------------------------------+--------------+----------+------+ + +#. Review information for a data network from the CLI. + + .. code-block:: none + + ~(keystone_admin)$ system datanetwork-show + + Where is the name or UUID of the data network. + + For example: + + .. code-block:: none + + ~(keystone_admin)$ system datanetwork-show group0-data0 \ No newline at end of file diff --git a/doc/source/datanet/dynamic-vxlan.rst b/doc/source/datanet/dynamic-vxlan.rst new file mode 100644 index 000000000..fbee51df4 --- /dev/null +++ b/doc/source/datanet/dynamic-vxlan.rst @@ -0,0 +1,77 @@ + +.. rcy1511538457696 +.. _dynamic-vxlan: + +============= +Dynamic VXLAN +============= + +|prod-os| supports dynamic mode \(learning\) VXLAN implementation that has +each vSwitch instance registered on the network for a particular IP +multicast group, MAC addresses, and VTEP endpoints that are populated based on +neutron configuration data. + +The IP multicast group, \(for example, 239.1.1.1\), is input when a new +neutron data network is provisioned. The selection of the IP multicast group +constraints flooding to only those nodes that have registered for the specified +group. The IP multicast network can work in both a single subnet \(that is, +local Layer2 environment\) or can span Layer3 segments in the customer network +for more complex routing requirements but requires IP multicast enabled routers. + +In the dynamic VXLAN mode, when a VM instance sends a packet to some destination +node the vSwitch VXLAN implementation examines the destination MAC address to +determine how to treat the packet. If the destination is known, a unicast packet +is sent to the worker node hosting that VM instance. If the destination is +unknown or the packet is a broadcast/multicast packet then a multicast packet +is sent to all worker nodes. Once the destination VM instance receives the +packet and responds to the initial source worker node, it learns that the VM +is hosted from that worker node, and any future packets destined to that VM +instance are unicasted to that worker node. + +.. figure:: figures/eol1510005391750.png + + `Multicast Endpoint Distribution` + +For broadcast and multicast packets originating from the VM instances the +vSwitch implements head-end replication to clone and send a copy of the +packet to each known worker node. This operation is expensive and will +negatively impact performance if the network is experiencing high volume of +broadcast or multicast packets. + +.. _dynamic-vxlan-section-N10054-N1001F-N10001: + +------------------------------------------------- +Workflow to Configure Dynamic VXLAN Data Networks +------------------------------------------------- + +Use the following workflow to create dynamic VXLAN data networks and add +segmentation ranges using CLI. + +.. _dynamic-vxlan-ol-bpj-dlb-1cb: + +#. Create a VXLAN data network, see :ref:`Adding Data Networks + `. + +#. Add segmentation ranges to dynamic VXLAN \(Multicast VXLAN\) data networks, + see :ref:`Adding Segmentation Ranges Using the CLI + `. + +#. Configure the endpoint IP addresses of the worker nodes using the web + administration interface or the CLI: + + - To configure static IP addresses for individual data interfaces, see: + + :ref:`Adding a Static IP Address to a Data Interface + ` + + - To assign IP addresses from predefined address pools, see: + + :ref:`Using IP Address Pools for Data Interfaces + ` + +#. Establish routes between the hosts, see :ref:`Adding and Maintaining Routes + for a VXLAN Network `. + +For more information on the differences between the dynamic and static VXLAN +modes, see :ref:`Differences Between Dynamic and Static VXLAN Modes +`. \ No newline at end of file diff --git a/doc/source/datanet/figures/bju1538154656153.png b/doc/source/datanet/figures/bju1538154656153.png new file mode 100644 index 000000000..423be81d2 Binary files /dev/null and b/doc/source/datanet/figures/bju1538154656153.png differ diff --git a/doc/source/datanet/figures/eal1475518780745.png b/doc/source/datanet/figures/eal1475518780745.png new file mode 100644 index 000000000..173f42f40 Binary files /dev/null and b/doc/source/datanet/figures/eal1475518780745.png differ diff --git a/doc/source/datanet/figures/eol1510005391750.png b/doc/source/datanet/figures/eol1510005391750.png new file mode 100644 index 000000000..bf79340a6 Binary files /dev/null and b/doc/source/datanet/figures/eol1510005391750.png differ diff --git a/doc/source/datanet/figures/gkb1569351598356.png b/doc/source/datanet/figures/gkb1569351598356.png new file mode 100644 index 000000000..8be52d272 Binary files /dev/null and b/doc/source/datanet/figures/gkb1569351598356.png differ diff --git a/doc/source/datanet/figures/jow1404333500016.png b/doc/source/datanet/figures/jow1404333500016.png new file mode 100644 index 000000000..fe8d52c33 Binary files /dev/null and b/doc/source/datanet/figures/jow1404333500016.png differ diff --git a/doc/source/datanet/figures/jow1404333501487.png b/doc/source/datanet/figures/jow1404333501487.png new file mode 100644 index 000000000..15aef2bbc Binary files /dev/null and b/doc/source/datanet/figures/jow1404333501487.png differ diff --git a/doc/source/datanet/figures/jow1412193160572.png b/doc/source/datanet/figures/jow1412193160572.png new file mode 100644 index 000000000..7901b57b7 Binary files /dev/null and b/doc/source/datanet/figures/jow1412193160572.png differ diff --git a/doc/source/datanet/figures/jow1442607685238.png b/doc/source/datanet/figures/jow1442607685238.png new file mode 100644 index 000000000..6108c23e2 Binary files /dev/null and b/doc/source/datanet/figures/jow1442607685238.png differ diff --git a/doc/source/datanet/figures/jow1443041105867.png b/doc/source/datanet/figures/jow1443041105867.png new file mode 100644 index 000000000..fae73a4b3 Binary files /dev/null and b/doc/source/datanet/figures/jow1443041105867.png differ diff --git a/doc/source/datanet/figures/jow1443358337894.png b/doc/source/datanet/figures/jow1443358337894.png new file mode 100644 index 000000000..a5c565ee9 Binary files /dev/null and b/doc/source/datanet/figures/jow1443358337894.png differ diff --git a/doc/source/datanet/figures/jow1445971002260.png b/doc/source/datanet/figures/jow1445971002260.png new file mode 100644 index 000000000..185c2365b Binary files /dev/null and b/doc/source/datanet/figures/jow1445971002260.png differ diff --git a/doc/source/datanet/figures/jow1445971475692.png b/doc/source/datanet/figures/jow1445971475692.png new file mode 100644 index 000000000..096b801e3 Binary files /dev/null and b/doc/source/datanet/figures/jow1445971475692.png differ diff --git a/doc/source/datanet/figures/oeg1510005898965.png b/doc/source/datanet/figures/oeg1510005898965.png new file mode 100644 index 000000000..84d336a9e Binary files /dev/null and b/doc/source/datanet/figures/oeg1510005898965.png differ diff --git a/doc/source/datanet/figures/sqw1475425312420.png b/doc/source/datanet/figures/sqw1475425312420.png new file mode 100644 index 000000000..b89a9e3ed Binary files /dev/null and b/doc/source/datanet/figures/sqw1475425312420.png differ diff --git a/doc/source/datanet/index.rs1 b/doc/source/datanet/index.rs1 new file mode 100644 index 000000000..ec713b678 --- /dev/null +++ b/doc/source/datanet/index.rs1 @@ -0,0 +1,15 @@ +=================================== +|prod-long| Data Network Management +=================================== + +- :ref:`Data Networks ` +- Displaying Data Network Information + + - :ref:`Displaying Data Network Information Using Horizon ` + - :ref:`Displaying Data Network Information Using the CLI ` + - :ref:`The Data Network Topology View ` + +- :ref:`Adding Data Networks Using the CLI ` +- :ref:`Assigning a Data Network to an Interface ` +- :ref:`Removing a Data Network Using the CLI ` + diff --git a/doc/source/datanet/index.rst b/doc/source/datanet/index.rst new file mode 100644 index 000000000..59b42d22f --- /dev/null +++ b/doc/source/datanet/index.rst @@ -0,0 +1,101 @@ +.. Data networks file, created by + sphinx-quickstart on Thu Sep 3 15:14:59 2020. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +============= +Data Networks +============= + +---------- +Kubernetes +---------- + +.. toctree:: + :maxdepth: 1 + + data-network-management-data-networks + +*********************************** +Displaying data network information +*********************************** + +.. toctree:: + :maxdepth: 1 + + displaying-data-network-information-using-horizon + displaying-data-network-information-using-the-cli + the-data-network-topology-view + +********************************************* +Adding, assigning, and removing data networks +********************************************* + +.. toctree:: + :maxdepth: 1 + + adding-data-networks-using-the-cli + assigning-a-data-network-to-an-interface + removing-a-data-network-using-the-cli + +------------------- +StarlingX OpenStack +------------------- + +.. toctree:: + :maxdepth: 1 + + data-networks-overview + +******************* +VXLAN data networks +******************* + +.. toctree:: + :maxdepth: 1 + + dynamic-vxlan + static-vxlan + differences-between-dynamic-and-static-vxlan-modes + +************************** +Adding segmentation ranges +************************** + +.. toctree:: + :maxdepth: 1 + + adding-segmentation-ranges-using-the-cli + +************************************ +Data network interface configuration +************************************ + +.. toctree:: + :maxdepth: 1 + + configuring-data-interfaces + configuring-data-interfaces-for-vxlans + +****************************** +MTU values of a data interface +****************************** + +.. toctree:: + :maxdepth: 1 + + changing-the-mtu-of-a-data-interface-using-the-cli + changing-the-mtu-of-a-data-interface + +*********************************** +VXLAN data network setup completion +*********************************** + +.. toctree:: + :maxdepth: 1 + + adding-a-static-ip-address-to-a-data-interface + managing-data-interface-static-ip-addresses-using-the-cli + using-ip-address-pools-for-data-interfaces + managing-ip-address-pools-using-the-cli + adding-and-maintaining-routes-for-a-vxlan-network \ No newline at end of file diff --git a/doc/source/datanet/managing-data-interface-static-ip-addresses-using-the-cli.rst b/doc/source/datanet/managing-data-interface-static-ip-addresses-using-the-cli.rst new file mode 100644 index 000000000..5f6390f69 --- /dev/null +++ b/doc/source/datanet/managing-data-interface-static-ip-addresses-using-the-cli.rst @@ -0,0 +1,94 @@ + +.. jow1425584170078 +.. _managing-data-interface-static-ip-addresses-using-the-cli: + +======================================================= +Manage Data Interface Static IP Addresses Using the CLI +======================================================= + +If you prefer, you can create and manage static addresses for data interfaces +using the CLI. + +.. rubric:: |context| + +For more information about using static addresses for data interfaces, see +:ref:`Adding a Static IP Address to a Data Interface +`. + +.. rubric:: |prereq| + +To make interface changes, you must lock the worker node first. + +.. rubric:: |proc| + +.. _managing-data-interface-static-ip-addresses-using-the-cli-steps-zkx-d1h-hr: + +1. Lock the worker node. + +2. Set the interface to support an IPv4 or IPv6 address, or both. + + .. code-block:: none + + ~(keystone_admin)]$ system host-if-modify --ipv4-mode= --ipv6-mode= + + where + + **node** + is the name or UUID of the worker node + + **ifname** + is the name of the interface + + **ipv4mode** + is either **disabled** or **static** + + **ipv6mode** + is either **disabled** or **static** + +#. Add an IPv4 or IPv6 address to the interface. + + .. code-block:: none + + ~(keystone_admin)]$ system host-addr-add + + where + + **node** + is the name or UUID of the worker node + + **ifname** + is the name of the interface + + **ip\_address** + is an IPv4 or IPv6 address + + **prefix** + is the netmask length for the address + + To delete an address, use the following commands: + + .. code-block:: none + + ~(keystone_admin)]$ system host-addr-list + + This displays the UUIDs of existing addresses, as shown in this example + below. + + .. code-block:: none + + ~(keystone_admin)]$ system host-addr-list worker-0 + +-----------------------+--------+------------------------+--------+ + | uuid | ifname | address | prefix | + +-----------------------+--------+------------------------+--------+ + | 290629f6-41e5-48d9... | ae0 | 2605:6400:2:fed5:22... | 112 | + | 5de0e0bf-21fc-4532... | ae0 | 2605:6400:2:fed5:22... | 122 | + | e78923d7-3ccf-4332... | ae0 | 192.168.61.70 | 27 | + +-----------------------+--------+------------------------+--------+ + + .. code-block:: none + + ~(keystone_admin)]$ system host-addr-delete + + where **uuid** is the UUID of the address. + +#. Unlock the worker node and wait for it to become available. \ No newline at end of file diff --git a/doc/source/datanet/managing-ip-address-pools-using-the-cli.rst b/doc/source/datanet/managing-ip-address-pools-using-the-cli.rst new file mode 100644 index 000000000..3f553232b --- /dev/null +++ b/doc/source/datanet/managing-ip-address-pools-using-the-cli.rst @@ -0,0 +1,99 @@ + +.. jow1445966287915 +.. _managing-ip-address-pools-using-the-cli: + +===================================== +Manage IP Address Pools Using the CLI +===================================== + +You can create and manage address pools using the CLI: + +.. contents:: + :local: + :depth: 1 + +.. rubric:: |prereq| + +To make interface changes, you must lock the worker node first. + +.. _managing-ip-address-pools-using-the-cli-section-N1003C-N1001F-N10001: + +------------------------ +Creating an address pool +------------------------ + +To create an address pool, use a command of the following form: + +.. code-block:: none + + ~(keystone_admin)]$ system addrpool-add [-- order ] [--ranges ] + +where: + +**** + is a name used to select the pool during data interface setup + +**** + is the subnet and mask for the range \(for example, **192.168.1.0**\) + +**** + is the subnet mask, expressed in network prefix length notation \(for + example, **24**\) + +**** + is the order in which to assign addresses from the pool \(random or + sequential\). The default is random. + +**** + is a set of IP address ranges to use for assignment, where the start + and end IP address of each range is separated by a dash, and the ranges + are separated by commas \(for example, **192.168.1.10-192.168.1.20, + 192.168.1.35-192.168.1.45**\). If no range is specified, the full range is + used. + +.. _managing-ip-address-pools-using-the-cli-section-N10109-N1001F-N10001: + +--------------------- +Listing address pools +--------------------- + +To list existing address pools, use a command of the following form: + +.. code-block:: none + + ~(keystone_admin)]$ system addrpool-show + +where **** is the universally unique identifier for the pool. + +.. _managing-ip-address-pools-using-the-cli-section-N10131-N1001F-N10001: + +------------------------- +Modifying an address pool +------------------------- + +To modify an address pool, use a command of the following form: + +.. code-block:: none + + ~(keystone_admin)]$ system addrpool-modify [--name ] [-- order ] [--ranges ] + +.. _managing-ip-address-pools-using-the-cli-section-N1015F-N1001F-N10001: + +------------------------ +Deleting an address pool +------------------------ + +To delete an address pool, use a command of the following form: + +.. code-block:: none + + ~(keystone_admin)]$ system addrpool-delete + +.. rubric:: |postreq| + +To use address pools with data interfaces, see :ref:`Using IP Address Pools +for Data Interfaces `. + +.. seealso:: + For more information about address pools, see :ref:`Using IP Address Pools + for Data Interfaces `. \ No newline at end of file diff --git a/doc/source/datanet/removing-a-data-network-using-the-cli.rst b/doc/source/datanet/removing-a-data-network-using-the-cli.rst new file mode 100644 index 000000000..4c834e7e3 --- /dev/null +++ b/doc/source/datanet/removing-a-data-network-using-the-cli.rst @@ -0,0 +1,54 @@ + +.. lnl1559819027423 +.. _removing-a-data-network-using-the-cli: + +=================================== +Remove a Data Network Using the CLI +=================================== + +Before you can delete a data network, you must remove any interface +associations. + +.. rubric:: |context| + +Complete the following steps to delete a data interface. + +.. rubric:: |prereq| + +The following procedure requires that the host be locked. + +.. rubric:: |proc| + +#. Remove the data network from the interface. + + #. Identify the interface to be removed. + + For example: + + .. code-block:: none + + ~(keystone_admin)$ system interface-datanetwork-list controller-1 + +--------------+--------------------------------------+--------+------------------+ + | hostname | uuid | ifname | datanetwork_name | + +--------------+--------------------------------------+--------+------------------+ + | controller-1 | 212d5afc-e417-49fe-919a-d94e9b46c236 | sriov0 | group0-data0 | + | controller-1 | 6c2f7066-3889-4291-8928-5fb4b2bccfee | data0 | group0-data0 | + | controller-1 | c4ac3c62-283e-491f-a08b-2e4a5ece205c | pthru0 | group0-data0 | + +--------------+--------------------------------------+--------+------------------+ + + #. Remove the network. + + For example: + + .. code-block:: none + + ~(keystone_admin)$ system interface-datanetwork-remove c4ac3c62-283e-491f-a08b-2e4a5ece205c + Deleted Interface DataNetwork: c4ac3c62-283e-491f-a08b-2e4a5ece205c + +#. Delete the data network from the system. + + .. code-block:: none + + ~[keystone_admin]$ system datanetwork-delete + + where is the UUID of the data network. \ No newline at end of file diff --git a/doc/source/datanet/static-vxlan.rst b/doc/source/datanet/static-vxlan.rst new file mode 100644 index 000000000..de5bad077 --- /dev/null +++ b/doc/source/datanet/static-vxlan.rst @@ -0,0 +1,56 @@ + +.. drb1511538596277 +.. _static-vxlan: + +============ +Static VXLAN +============ + +The static unicast mode relies on the mapping of neutron ports to worker nodes +to receive the packet in order to reach the VM. + +In this mode there is no multicast addressing or multicast packets sent from +the worker nodes, neither is there any learning. In contrast to the dynamic +VXLAN mode, any packets destined to unknown MAC addresses are dropped. To +ensure that there are no unknown endpoints the system examines the neutron +port DB and gathers the list of mappings between port MAC/IP addresses and the +hostname on which they reside. This information is then propagated throughout +the system to pre-provision endpoint entries into all vSwitch instances. This +ensures that each vSwitch knows how to reach all VM instances that are related +to any local VM instances. + +Static VXLAN is limited to use on one data network. If configured, it must be +enabled on all OpenStack worker nodes. + +.. figure:: figures/oeg1510005898965.png + + `Static Endpoint Distribution` + +.. note:: + In the static mode there is no dynamic endpoint learning. This means that + if a node does not have an entry for some destination MAC address it will + not create an entry even if it receives a packet from that device. + +.. _static-vxlan-section-N1006B-N1001F-N10001: + +------------------------------------------------ +Workflow to Configure Static VXLAN Data Networks +------------------------------------------------ + +Use the following workflow to create static VXLAN data networks and add +segmentation ranges using the CLI. + +.. _static-vxlan-ol-bpj-dlb-1cb: + +#. Create a VXLAN data network, see :ref:`Adding Data Networks Using the CLI + `. + +#. Add segmentation ranges to static VXLAN data networks, see :ref:`Adding + Segmentation Ranges Using the CLI `. + +#. Establish routes between the hosts, see :ref:`Adding and Maintaining Routes + for a VXLAN Network `. + +For more information on the differences between the dynamic and static VXLAN +modes, see :ref:`Differences Between Dynamic and Static VXLAN Modes +`. \ No newline at end of file diff --git a/doc/source/datanet/the-data-network-topology-view.rst b/doc/source/datanet/the-data-network-topology-view.rst new file mode 100644 index 000000000..280b045ca --- /dev/null +++ b/doc/source/datanet/the-data-network-topology-view.rst @@ -0,0 +1,89 @@ + +.. vkv1559818533210 +.. _the-data-network-topology-view: + +============================== +The Data Network Topology View +============================== + +The Data Network Topology view shows data networks and worker host data +interface connections for the system using a color-coded graphical display. +Active alarm information is also shown in real time. You can select individual +hosts or networks to highlight their connections and obtain more details. + +.. contents:: + :local: + :depth: 1 + +To display this view, select **Admin** \> **Platform** \> **Data Network +Topology**. + +.. image:: figures/sqw1475425312420.png + :height: 365px + +.. _the-data-network-topology-view-section-N1002F-N1001C-N10001: + +------------------------ +Selection and Navigation +------------------------ + +The Data Network Topology view shows all worker hosts and data networks +graphically in a framed topology window, and lists them by name in the **Worker +Hosts** and **Data Networks** lists to the left of the window. You can select +an entity using the window or the lists. The selected entity is highlighted in +both places. + +If the topology of the system is too large to fit in the window, you can drag +inside the window to see other areas. You can also bring an entity into view by +selecting it from the lists. The view is panned automatically to show the +entity. + +.. _the-data-network-topology-view-section-N1004E-N1001C-N10001: + +------------------------------- +Additional Details for Entities +------------------------------- + +When you select an entity, associated entities are highlighted in the **Worker +Hosts** list or the **Data Networks** list. For example, if you select the +**group0-data0** data network, all hosts attached to it are highlighted in the +**Worker Hosts** list. + +Additional information for the selected entity is available in tabbed pages +below the topology window. + +.. _the-data-network-topology-view-ul-z5z-czh-mx: + +- For a worker host, the additional information includes the **Overview**, + **Interfaces**, and **LLDP** tabs from the Host Detail, as well as a + **Related Alarms** tab that lists any active alarms associated with the + host. + +- For a data network, the additional information includes the + **Data Network Detail** tab from the Data Network Overview, and a + **Related Alarms** tab that lists any active alarms associated with the + data network. + +.. _the-data-network-topology-view-section-N1009C-N1001C-N10001: + +--------------- +Alarm Reporting +--------------- + +Active alarms for entities are displayed in real time in the topology window, +using icons superimposed on the entities. The alarms are color-coded for +severity using the same colors as the Global Alarm Banner. Details for the +alarms are listed in the **Related Alarms** tab for the entity. + +.. image:: figures/eal1475518780745.png + +.. _the-data-network-topology-view-section-N100AD-N1001C-N10001: + +------------------------------ +Labels for Network Connections +------------------------------ + +Network connections in the topology window may be labeled with the data +interface name \(displayed above the connection line\) and LLDP neighbor +information \(displayed below the connection line\). You can show or hide the +labels using a button above the lists \(**Show Labels** or **Hide Labels**\). \ No newline at end of file diff --git a/doc/source/datanet/using-ip-address-pools-for-data-interfaces.rst b/doc/source/datanet/using-ip-address-pools-for-data-interfaces.rst new file mode 100644 index 000000000..dad8f44b9 --- /dev/null +++ b/doc/source/datanet/using-ip-address-pools-for-data-interfaces.rst @@ -0,0 +1,72 @@ + +.. jow1445966231060 +.. _using-ip-address-pools-for-data-interfaces: + +======================================== +Use IP Address Pools for Data Interfaces +======================================== + +You can create pools of IP addresses for use with data interfaces. + +.. rubric:: |context| + +As an alternative to manually adding static IP addresses to data interfaces for +use with VXLANs, you can define pools of IP addresses and associate them with +one or more data interfaces. Each pool consists of one or more contiguous +ranges of IPv4 or IPv6 addresses. When a data interface is associated with a +pool, its IP address is allocated from the pool. The allocation may be either +random or sequential, depending on the settings for the pool. + +You can use the web administration interface or the CLI to create and manage +address pools. For information about using the CLI, see :ref:`Managing IP +Address Pools Using the CLI `. + +.. rubric:: |prereq| + +To make interface changes, you must lock the compute node first. + +.. rubric:: |proc| + +#. Lock the compute node. + +#. In the |prod-os| Web administration interface, open the System + Configuration page. + + The System Configuration page is available from **Admin** \> **Platform** + \> **System Configuration** in the left-hand pane. + +#. Select the **Address Pools** tab. + + .. image:: figures/jow1445971002260.png + + You can use the controls on the Address Pools page to create, update, or + delete address pools. + +#. To create an address pool, click **Create Address Pool** and complete the + dialog box. + + .. image:: figures/jow1445971475692.png + + **Name** + A name used for selecting the pool during data interface setup. + + **Network Address** + The subnet for the range \(for example, **192.168.1.0/24**\). + + **Allocation Order** + The order for assigning addresses. You can select **Sequential** or + **Random** from the drop-down list. + + **Address Range** + One or more ranges, where the start and end IP address of each range + is separated by a dash, and the ranges are separated by commas \(for + example, **192.168.1.10-192.168.1.20, 192.168.1.35-192.168.1.45**\). + If no range is specified, the full range is used. + +.. rubric:: |postreq| + +You can select an address pool by name when setting up the **IPv4 Addressing +Mode** or **IPv6 Addressing Mode** for a data interface. + +See also :ref:`Managing IP Address Pools Using the CLI +` \ No newline at end of file diff --git a/doc/source/index.rst b/doc/source/index.rst index ccf6d0063..63ad1a3ee 100755 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -57,6 +57,15 @@ Configuration configuration/index +------------------------------------------------ +Data Network Configuration and Management Guides +------------------------------------------------ + +.. toctree:: + :maxdepth: 2 + + datanet/index + ---------------- Fault Management ----------------