2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2025-05-29 09:13:08 +00:00

polish confignetwork doc

This commit is contained in:
bybai 2016-01-27 03:23:44 -05:00
parent 65971caaa4
commit 11bfe6aa6c

View File

@ -1,46 +1,54 @@
Configure BOND/VLAN/BRIDGE
===========================
Advanced Networking Configuration
=================================
The ``nics`` table and the ``confignetwork`` script can be used to automatically configure network interfaces (VLAN, BOND, BRIDGE) on the redhat nodes.
The ``confignetwork`` postscript can be used to configure the network interfaces on the compute nodes to support VLAN, BONDs, and BRIDGES. In order to use the ``confignetwork`` postscript, the following attributes must be configured for the node in the ``nics`` table:
To use ``confignetwork``, ``nicips``, ``nictypes``, ``nicnetworks`` and ``nicdevice`` attributes in ``nics`` table should be configured.
* ``nicips``
* ``nictypes``
* ``nicnetworks``
* ``nicdevices`` - resolves the relationship among the physical network intereface devices
``nicdevices`` resolves relationships among physical_nics, BOND, VLAN, BRIDGE.
The following example set the xCAT properties for compute node ``cn1`` to achieve the following network configuration using the ``confignetwork`` postscript:
Following example will be used in the whole doc to describe how to use confignetwork postscript.
* Compute node ``cn`` has two physical NICs: eth2 and eth3
* Bond eth2 and eth3 as ``bond0``
* From ``bond0``, create 2 VLANs: ``bond0.1`` and ``bond0.2``
* Make bridge ``br1`` using ``bond0.1`` with IP (10.0.0.1)
* Make bridge ``br2`` using ``bond0.2`` with IP (20.0.0.1)
a. Physical nics are eth2 and eth3
b. Bonding eth2 and eth3 as bond0
c. From bond0, make 2 vlans: bond0.1 and bond0.2
d. Making bridge br1 using bond0.1, making bridge br2 using bond0.2, br1 ip is 10.0.0.1, br2 ip is 20.0.0.1
Define nic attributes in the nics table
----------------------------------------
There are 3 ways to complete this operation.
Define attributes in the ``nics`` table
---------------------------------------
#. Using the ``mkdef`` or ``chdef`` commands
a. add nicdevices to define nics relationship ::
a. Compute node ``cn1`` has two physical NICs: ``eth2`` and ``eth3`` ::
chdef cn1 nicdevices.br1=bond0.1 \
nicdevices.br2=bond0.2 \
nicdevices.bond0.1=bond0 \
nicdevices.bond0.2=bond0 \
chdef cn1 nictypes.eth2=ethernet nictypes.eth3=ethernet
b. Define ``bond0`` and bond ``eth2`` and ``eth3`` as ``bond0`` ::
chdef cn1 nictypes.bond0=bond \
nicdevices.bond0="eth2|eth3"
b. add nictypes and nicnetworks ::
c. Fom ``bond0``, create 2 VLANs: ``bond0.1`` and ``bond0.2`` ::
chdef cn1 nictypes.eth2=ethernet \
nictypes.eth3=ethernet \
nictypes.bond0=bond \
nictypes.bond0.1=vlan \
chdef cn1 nictypes.bond0.1=vlan \
nictypes.bond0.2=vlan \
nictypes.br1=bridge \
nictypes.br2=bridge \
nicdevices.bond0.1=bond0 \
nicdevices.bond0.2=bond0
d. Create bridge ``br1`` using ``bond0.1`` with IP (10.0.0.1) ::
chdef cn1 nictypes.br1=bridge \
nicdevices.br1=bond0.1 \
nicips.br1=10.0.0.1 \
nicnetworks.br1="net10"
e. Create bridge ``br2`` using ``bond0.2`` with IP (20.0.0.1) ::
chdef cn1 nictypes.br2=bridge \
nicdevices.br2=bond0.2 \
nicips.br2=20.0.0.1 \
nicnetworks.br1="net10" \
nicnetworks.br2="net20"
#. Using an xCAT stanza file
@ -77,8 +85,6 @@ There are 3 ways to complete this operation.
The ``tabedit`` command opens the specified xCAT database table in a ``vi`` like editor and allows the user to edit any text and write the changes back to the database table.
*WARNING* Using the ``tabedit`` command is not the recommended method because it is tedious and error prone.
After changing the content of the ``nics`` table, here is the result from ``tabdump nics`` ::
# tabdump nics
@ -97,17 +103,17 @@ Use the ``chdef`` command to add/modify the networks in the ``networks`` table :
chdef -t network net20 net=20.0.0.0 mask=255.0.0.0 mgtifname=eth1
Add confignetwork into the node's postscripts list
-----------------------------------------------
--------------------------------------------------
Using below command to add confignetwork into the node's postscripts list ::
Using below command to add ``confignetwork`` into the node's postscripts list ::
chdef cn1 -p postscripts=confignetwork
During OS deployment on compute node, confignetwork will be run in postscript.
During OS deployment on compute node, ``confignetwork`` will be run in postscript.
If the compute node has OS, use ``updatenode`` command to run ``confignetwork`` ::
updatenode <cn> -P confignetwork
updatenode cn1 -P confignetwork