2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2025-05-22 03:32:04 +00:00

Add support for a default MTU on a network

Add a MTU column to the networks table.  If set, this will configure the MTU in
DHCP so that nodes will have the correct MTU during provisioning.  This is
important for large systems to enable jumbo frames to reduce CPU usage when
copying diskless images over the network (before the confignics postscript can
run to set the desired MTU).
This commit is contained in:
Matt Ezell 2016-10-01 15:54:08 -04:00
parent 7f0fba46f7
commit 1e11b6e80f
13 changed files with 59 additions and 29 deletions

View File

@ -132,8 +132,8 @@ Execute steps on xCAT MN rhmn1
# chdef -t site master=10.2.2.250 nameservers=10.2.2.250
# chdef -t network 10_0_0_0-255_0_0_0 tftpserver=10.2.2.250
# tabdump networks
~]#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,comments,disable
"10_0_0_0-255_0_0_0","10.0.0.0","255.0.0.0","eth0","10.2.0.221",,"10.2.2.250",,,,,,,,,,,,
~]#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,mtu,comments,disable
"10_0_0_0-255_0_0_0","10.0.0.0","255.0.0.0","eth0","10.2.0.221",,"10.2.2.250",,,,,,,,,,,,,
#. Add 2 nodes into policy table: ::

View File

@ -57,8 +57,8 @@ In order to do switch-based switch discovery, the admin
4. Setup Dynamic IP range in network table for discovered switches to use. ::
# tabdump networks
#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,comments,disable
"192_168_0_0-255_255_0_0","192.168.0.0","255.255.0.0","enP4p1s0f2","<xcatmaster>",,"192.168.3.29",,,,"192.168.5.150-192.168.5.170",,,,,,,,
#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,mtu,comments,disable
"192_168_0_0-255_255_0_0","192.168.0.0","255.255.0.0","enP4p1s0f2","<xcatmaster>",,"192.168.3.29",,,,"192.168.5.150-192.168.5.170",,,,,,,,,
dhcp should be restarted after seting up dynamic IP range.

View File

@ -90,12 +90,12 @@ Other information about the network should be defined in the ``networks`` table.
Use the ``tabedit`` command to add/modify the networks in the``networks`` table ::
tabdump networks
#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,comments,disable
#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,mtu,comments,disable
...
"net11", "11.1.89.0", "255.255.255.0", "eth1",,,,,,,,,,,,,,,
"net12", "12.1.89.0", "255.255.255.0", "eth1",,,,,,,,,,,,,,,
"net13", "13.1.89.0", "255.255.255.0", "eth2",,,,,,,,,,,,,,,
"net14", "14.1.89.0", "255.255.255.0", "eth2",,,,,,,,,,,,,,,
"net11", "11.1.89.0", "255.255.255.0", "eth1",,,,,,,,,,,,,,,,
"net12", "12.1.89.0", "255.255.255.0", "eth1",,,,,,,,,,,,,,,,
"net13", "13.1.89.0", "255.255.255.0", "eth2",,,,,,,,,,,,,,,,
"net14", "14.1.89.0", "255.255.255.0", "eth2",,,,,,,,,,,,,,,,
Option -r to remove the undefined NICS
--------------------------------------

View File

@ -586,11 +586,11 @@ This is an example of the generated postscript for a servicenode install. It is
export ENABLESSHBETWEENNODES
NETWORKS_LINES=4
export NETWORKS_LINES
NETWORKS_LINE1='netname=public_net||net=8.112.154.64||mask=255.255.255.192||mgtifname=eth0||gateway=8.112.154.126||dhcpserver=||tftpserver=8.112.154.69||nameservers=8.112.8.1||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments='
NETWORKS_LINE1='netname=public_net||net=8.112.154.64||mask=255.255.255.192||mgtifname=eth0||gateway=8.112.154.126||dhcpserver=||tftpserver=8.112.154.69||nameservers=8.112.8.1||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments='
export NETWORKS_LINE2
NETWORKS_LINE3='netname=sn21_net||net=10.2.1.0||mask=255.255.255.0||mgtifname=eth1||gateway=<xcatmaster>||dhcpserver=||tftpserver=||nameservers=10.2.1.100,10.2.1.101||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments='
NETWORKS_LINE3='netname=sn21_net||net=10.2.1.0||mask=255.255.255.0||mgtifname=eth1||gateway=<xcatmaster>||dhcpserver=||tftpserver=||nameservers=10.2.1.100,10.2.1.101||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments='
export NETWORKS_LINE3
NETWORKS_LINE4='netname=sn22_net||net=10.2.2.0||mask=255.255.255.0||mgtifname=eth1||gateway=10.2.2.100||dhcpserver=10.2.2.100||tftpserver=10.2.2.100||nameservers=10.2.2.100||ntpservers=||logservers=||dynamicrange=10.2.2.120-10.2.2.250||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments='
NETWORKS_LINE4='netname=sn22_net||net=10.2.2.0||mask=255.255.255.0||mgtifname=eth1||gateway=10.2.2.100||dhcpserver=10.2.2.100||tftpserver=10.2.2.100||nameservers=10.2.2.100||ntpservers=||logservers=||dynamicrange=10.2.2.120-10.2.2.250||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments='
export NETWORKS_LINE4
NODE=xcatsn23
export NODE

View File

@ -4,9 +4,9 @@ Set attributes in the ``networks`` table
#. Display the network settings defined in the xCAT ``networks`` table using: ``tabdump networks`` ::
#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,
dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,
dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,mtu,
comments,disable
"10_0_0_0-255_0_0_0","10.0.0.0","255.0.0.0","eth0","10.0.0.101",,"10.4.27.5",,,,,,,,,,,,
"10_0_0_0-255_0_0_0","10.0.0.0","255.0.0.0","eth0","10.0.0.101",,"10.4.27.5",,,,,,,,,,,,,
A default network is created for the detected primary network using the same netmask and gateway. There may be additional network entries in the table for each network present on the management node where xCAT is installed.

View File

@ -8,9 +8,9 @@ Configure network table
Normally, there will be at least two entries for the two subnet on MN in ``networks`` table after xCAT is installed::
#tabdump networks
#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,comments,disable
"10_0_0_0-255_255_0_0","10.0.0.0","255.255.0.0","eth1","<xcatmaster>",,"10.0.1.1",,,,,,,,,,,,
"50_0_0_0-255_255_0_0","50.0.0.0","255.255.0.0","eth2","<xcatmaster>",,"50.0.1.1",,,,,,,,,,,,
#netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,mtu,comments,disable
"10_0_0_0-255_255_0_0","10.0.0.0","255.255.0.0","eth1","<xcatmaster>",,"10.0.1.1",,,,,,,,,,,,,
"50_0_0_0-255_255_0_0","50.0.0.0","255.255.0.0","eth2","<xcatmaster>",,"50.0.1.1",,,,,,,,,,,,,
Run the following command to add networks in ``networks`` table if there are no entries in it::

View File

@ -19,7 +19,7 @@ SYNOPSIS
********
\ **networks Attributes:**\ \ *netname*\ , \ *net*\ , \ *mask*\ , \ *mgtifname*\ , \ *gateway*\ , \ *dhcpserver*\ , \ *tftpserver*\ , \ *nameservers*\ , \ *ntpservers*\ , \ *logservers*\ , \ *dynamicrange*\ , \ *staticrange*\ , \ *staticrangeincrement*\ , \ *nodehostname*\ , \ *ddnsdomain*\ , \ *vlanid*\ , \ *domain*\ , \ *comments*\ , \ *disable*\
\ **networks Attributes:**\ \ *netname*\ , \ *net*\ , \ *mask*\ , \ *mgtifname*\ , \ *gateway*\ , \ *dhcpserver*\ , \ *tftpserver*\ , \ *nameservers*\ , \ *ntpservers*\ , \ *logservers*\ , \ *dynamicrange*\ , \ *staticrange*\ , \ *staticrangeincrement*\ , \ *nodehostname*\ , \ *ddnsdomain*\ , \ *vlanid*\ , \ *domain*\ , \ *mtu*\ , \ *comments*\ , \ *disable*\
***********
@ -136,6 +136,12 @@ networks Attributes:
\ **mtu**\
The default MTU on the network (ex. 1500 or 9000).
\ **comments**\
Any user-written notes.

View File

@ -19,7 +19,7 @@ SYNOPSIS
********
\ **network Attributes:**\ \ *ddnsdomain*\ , \ *dhcpserver*\ , \ *domain*\ , \ *dynamicrange*\ , \ *gateway*\ , \ *logservers*\ , \ *mask*\ , \ *mgtifname*\ , \ *nameservers*\ , \ *net*\ , \ *netname*\ , \ *nodehostname*\ , \ *ntpservers*\ , \ *staticrange*\ , \ *staticrangeincrement*\ , \ *tftpserver*\ , \ *usercomment*\ , \ *vlanid*\
\ **network Attributes:**\ \ *ddnsdomain*\ , \ *dhcpserver*\ , \ *domain*\ , \ *dynamicrange*\ , \ *gateway*\ , \ *logservers*\ , \ *mask*\ , \ *mgtifname*\ , \ *nameservers*\ , \ *net*\ , \ *netname*\ , \ *nodehostname*\ , \ *ntpservers*\ , \ *staticrange*\ , \ *staticrangeincrement*\ , \ *tftpserver*\ , \ *usercomment*\ , \ *vlanid*\ , \ *mtu*\
***********
@ -145,6 +145,12 @@ network Attributes:
\ **mtu**\ (networks.mtu)
The default MTU for the network.
********
SEE ALSO

View File

@ -537,7 +537,7 @@ passed as argument rather than by table value',
},
},
networks => {
cols => [qw(netname net mask mgtifname gateway dhcpserver tftpserver nameservers ntpservers logservers dynamicrange staticrange staticrangeincrement nodehostname ddnsdomain vlanid domain comments disable)],
cols => [qw(netname net mask mgtifname gateway dhcpserver tftpserver nameservers ntpservers logservers dynamicrange staticrange staticrangeincrement nodehostname ddnsdomain vlanid domain mtu comments disable)],
keys => [qw(net mask)],
tablespace => 'XCATTBS16K',
table_desc => 'Describes the networks in the cluster and info necessary to set up nodes on that network.',
@ -559,6 +559,7 @@ passed as argument rather than by table value',
ddnsdomain => 'A domain to be combined with nodename to construct FQDN for DDNS updates induced by DHCP. This is not passed down to the client as "domain"',
vlanid => 'The vlan ID if this network is within a vlan.',
domain => 'The DNS domain name (ex. cluster.com).',
mtu => 'The default MTU for the network',
comments => 'Any user-written notes.',
disable => "Set to 'yes' or '1' to comment out this row.",
},
@ -3334,6 +3335,10 @@ push(@{ $defspec{node}->{'attrs'} }, @nodeattrs);
tabentry => 'networks.staticrangeincrement',
access_tabentry => 'networks.netname=attr:netname',
},
{ attr_name => 'mtu',
tabentry => 'networks.mtu',
access_tabentry => 'networks.netname=attr:netname',
},
{ attr_name => 'usercomment',
tabentry => 'networks.comments',
access_tabentry => 'networks.netname=attr:netname',

View File

@ -2371,6 +2371,7 @@ sub addnet
my $tftp;
my $range;
my $myip;
my $mtu;
my @myipd = xCAT::NetworkUtils->my_ip_facing($net);
unless ($myipd[0]) { $myip = $myipd[1]; }
@ -2387,7 +2388,7 @@ sub addnet
my ($ent) =
$nettab->getAttribs({ net => $net, mask => $mask_formated },
qw(tftpserver nameservers ntpservers logservers gateway dynamicrange dhcpserver domain));
qw(tftpserver nameservers ntpservers logservers gateway dynamicrange dhcpserver domain mtu));
if ($ent and $ent->{ntpservers}) {
$ntpservers = $ent->{ntpservers};
} elsif ($sitentpservers) {
@ -2486,6 +2487,10 @@ sub addnet
}
);
}
if ($ent and $ent->{mtu})
{
$mtu = $ent->{mtu};
}
}
else
{
@ -2503,7 +2508,7 @@ sub addnet
{
return gen_aix_net($myip, $net, $mask, $gateway, $tftp,
$logservers, $ntpservers, $domain,
$nameservers, $range);
$nameservers, $range, $mtu);
}
my @netent;
@ -2556,6 +2561,10 @@ sub addnet
push @netent, " option domain-name \"$domain\";\n";
push @netent, " option domain-name-servers $nameservers;\n";
}
if ($mtu)
{
push @netent, " option interface-mtu $mtu;\n";
}
# add domain-search if not sles10 or rh5
my $osv = xCAT::Utils->osver();
@ -2662,6 +2671,7 @@ sub gen_aix_net
my $domain = shift;
my $nameservers = shift;
my $range = shift;
my $mtu = shift;
my $idx = 0;
while ($idx <= $#dhcpconf)
@ -2720,6 +2730,9 @@ sub gen_aix_net
} elsif ($myip) {
push @netent, " option 7 $myip\n";
}
if ($mtu) {
push @netent, " option 26 $mtu\n";
}
if ($ntpservers) {
$ntpservers =~ s/,/ /g;
push @netent, " option 42 $ntpservers\n";

View File

@ -30,8 +30,8 @@
# NICNETWORKS=bond0!10_0_0_0-255_255_255_0
# NICCUSTOMSCRIPTS=bond0!configbond
# NETWORKS_LINES=2
# NETWORKS_LINE1=netname=10_0_0_0-255_255_255_0||net=10.0.0.0||mask=255.255.255.0||mgtifname=eth1||gateway=<xcatmaster>||dhcpserver=||tftpserver=10.0.0.10||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments=
# NETWORKS_LINE2=netname=10_0_2_0-255_255_255_0||net=10.0.2.0||mask=255.255.255.0||mgtifname=eth0||gateway=10.0.2.2||dhcpserver=||tftpserver=10.0.2.15||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments=
# NETWORKS_LINE1=netname=10_0_0_0-255_255_255_0||net=10.0.0.0||mask=255.255.255.0||mgtifname=eth1||gateway=<xcatmaster>||dhcpserver=||tftpserver=10.0.0.10||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments=
# NETWORKS_LINE2=netname=10_0_2_0-255_255_255_0||net=10.0.2.0||mask=255.255.255.0||mgtifname=eth0||gateway=10.0.2.2||dhcpserver=||tftpserver=10.0.2.15||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments=
# load library for network caculation

View File

@ -13,9 +13,9 @@
# NICTYPES='eth1!ethernet,ib1!infiniband,ib2!infiniband'
# NICNETWORKS='eth0!10_1_0_0-255_255_255_0,ib1!ib1,ib2!ib2'
# NETWORKS_LINES=3
# NETWORKS_LINE1='netname=10_1_0_0-255_255_255_0||net=10.1.0.0||mask=255.255.255.0||mgtifname=eth1||gateway=<xcatmaster>||dhcpserver=10.1.0.205||tftpserver=10.1.0.205||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments='
# NETWORKS_LINE2='netname=ib1||net=15.0.1.0||mask=255.255.255.0||mgtifname=||gateway=15.0.1.254||dhcpserver=||tftpserver=||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments='
# NETWORKS_LINE3='netname=ib3||net=15.0.3.0||mask=255.255.255.0||mgtifname=||gateway=||dhcpserver=||tftpserver=||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments='
# NETWORKS_LINE1='netname=10_1_0_0-255_255_255_0||net=10.1.0.0||mask=255.255.255.0||mgtifname=eth1||gateway=<xcatmaster>||dhcpserver=10.1.0.205||tftpserver=10.1.0.205||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments='
# NETWORKS_LINE2='netname=ib1||net=15.0.1.0||mask=255.255.255.0||mgtifname=||gateway=15.0.1.254||dhcpserver=||tftpserver=||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments='
# NETWORKS_LINE3='netname=ib3||net=15.0.3.0||mask=255.255.255.0||mgtifname=||gateway=||dhcpserver=||tftpserver=||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments='
if [ "$(uname -s|tr 'A-Z' 'a-z')" = "linux" ];then

View File

@ -317,8 +317,8 @@ function query_nicnetworks_net {
# get network attribute from NETWORKS_LINEX
#
# NETWORKS_LINES=2
# NETWORKS_LINE1='netname=10_0_0_0-255_255_255_0||net=10.0.0.0||mask=255.255.255.0||mgtifname=eth2||gateway=&lt;xcatmaster&gt;||dhcpserver=||tftpserver=10.0.0.153||nameservers=||ntpservers=||logservers=||dynamicrange=10.0.0.1-10.0.0.254||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments=__BEAT_IPRANGE_10.0.0.1-10.0.0.254'
# NETWORKS_LINE2='netname=10_9_10_0-255_255_255_0||net=10.9.10.0||mask=255.255.255.0||mgtifname=eth1:1||gateway=&lt;xcatmaster&gt;||dhcpserver=||tftpserver=10.9.10.1||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=10.9.10.11-10.9.10.30||staticrangeincrement=1||nodehostname=||ddnsdomain=||vlanid=||domain=||disable=||comments=__BEAT_IPRANGE_10.9.10.11-10.9.10.30'
# NETWORKS_LINE1='netname=10_0_0_0-255_255_255_0||net=10.0.0.0||mask=255.255.255.0||mgtifname=eth2||gateway=&lt;xcatmaster&gt;||dhcpserver=||tftpserver=10.0.0.153||nameservers=||ntpservers=||logservers=||dynamicrange=10.0.0.1-10.0.0.254||staticrange=||staticrangeincrement=||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments=__BEAT_IPRANGE_10.0.0.1-10.0.0.254'
# NETWORKS_LINE2='netname=10_9_10_0-255_255_255_0||net=10.9.10.0||mask=255.255.255.0||mgtifname=eth1:1||gateway=&lt;xcatmaster&gt;||dhcpserver=||tftpserver=10.9.10.1||nameservers=||ntpservers=||logservers=||dynamicrange=||staticrange=10.9.10.11-10.9.10.30||staticrangeincrement=1||nodehostname=||ddnsdomain=||vlanid=||domain=||mtu=||disable=||comments=__BEAT_IPRANGE_10.9.10.11-10.9.10.30'
#
# input : network_name attribute_name
#