AIX NFSv4 support code drop - mknimimage and nimnodeset
git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@10484 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
parent
110ba54f01
commit
b81c987415
@ -147,11 +147,22 @@ sub preprocess_request
|
||||
my $nimprime = xCAT::InstUtils->getnimprime();
|
||||
chomp $nimprime;
|
||||
my $nimprimeip = xCAT::NetworkUtils->getipaddr($nimprime);
|
||||
if ($nimprimeip =~ /:/) #IPv6, needs NFSv4 support
|
||||
if ($nimprimeip =~ /:/) #IPv6
|
||||
{
|
||||
$::NFSV4 = 1;
|
||||
$::IPv6 = 1;
|
||||
}
|
||||
|
||||
my $sitetab = xCAT::Table->new('site');
|
||||
my $nfsv4entry = $sitetab->getAttribs({'key' => 'useNFSv4onAIX'}, 'value');
|
||||
if($nfsv4entry and defined ($nfsv4entry->{'value'}))
|
||||
{
|
||||
if ($nfsv4entry->{value} =~ /1|Yes|yes|YES|Y|y/)
|
||||
{
|
||||
$::NFSv4 = 1;
|
||||
}
|
||||
}
|
||||
$sitetab->close;
|
||||
|
||||
#exit if preprocessed
|
||||
# if ($req->{_xcatpreprocessed}->[0] == 1) { return [$req]; }
|
||||
|
||||
@ -471,6 +482,17 @@ sub process_request
|
||||
xCAT::MsgUtils->message("E", $rsp, $callback);
|
||||
}
|
||||
|
||||
my $sitetab = xCAT::Table->new('site');
|
||||
my $nfsv4entry = $sitetab->getAttribs({'key' => 'useNFSv4onAIX'}, 'value');
|
||||
if($nfsv4entry and defined ($nfsv4entry->{'value'}))
|
||||
{
|
||||
if ($nfsv4entry->{value} =~ /1|Yes|yes|YES|Y|y/)
|
||||
{
|
||||
$::NFSv4 = 1;
|
||||
}
|
||||
}
|
||||
$sitetab->close;
|
||||
|
||||
# figure out which cmd and call the subroutine to process
|
||||
if ($command eq "mkdsklsnode")
|
||||
{
|
||||
@ -597,7 +619,6 @@ sub nimnodeset
|
||||
'p|primarySN' => \$::PRIMARY,
|
||||
'verbose|V' => \$::VERBOSE,
|
||||
'v|version' => \$::VERSION,
|
||||
'nfsv4' => \$::NFSV4,
|
||||
)
|
||||
)
|
||||
{
|
||||
@ -2047,7 +2068,6 @@ sub mknimimage
|
||||
'u|update' => \$::UPDATE,
|
||||
'verbose|V' => \$::VERBOSE,
|
||||
'v|version' => \$::VERSION,
|
||||
'nfsv4' => \$::NFSV4,
|
||||
)
|
||||
)
|
||||
{
|
||||
@ -2210,7 +2230,7 @@ sub mknimimage
|
||||
$loc = "$install_dir/nim";
|
||||
}
|
||||
|
||||
if ($::NFSV4)
|
||||
if ($::IPv6)
|
||||
{
|
||||
#nim_master_setup does not support IPv6, needs to use separate nim commands
|
||||
#1. start ndpd-host service for IPv6
|
||||
@ -2525,6 +2545,66 @@ sub mknimimage
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ($::NFSv4)
|
||||
{
|
||||
my $nimcmd = qq~chnfsdom~;
|
||||
my $nimout = xCAT::InstUtils->xcmd($callback, $subreq, "xdsh", $nimprime, $nimcmd,0);
|
||||
if ($::RUNCMD_RC != 0)
|
||||
{
|
||||
my $rsp;
|
||||
push @{$rsp->{data}}, "Could not get NFSv4 domain setting.\n";
|
||||
if ($::VERBOSE)
|
||||
{
|
||||
push @{$rsp->{data}}, "$nimout";
|
||||
}
|
||||
xCAT::MsgUtils->message("E", $rsp, $callback);
|
||||
return 1;
|
||||
}
|
||||
# NFSv4 domain is not set yet
|
||||
if ($nimout =~ /N\/A/)
|
||||
{
|
||||
my $sitetab = xCAT::Table->new('site');
|
||||
my ($tmp) = $sitetab->getAttribs({'key' => 'domain'}, 'value');
|
||||
my $domain = $tmp->{value};
|
||||
$sitetab->close;
|
||||
if (!$domain)
|
||||
{
|
||||
my $rsp;
|
||||
push @{$rsp->{data}}, "Can not determine domain name, check site table.\n";
|
||||
xCAT::MsgUtils->message("E", $rsp, $callback);
|
||||
return 1;
|
||||
}
|
||||
$nimcmd = qq~chnfsdom $domain~;
|
||||
$nimout = xCAT::InstUtils->xcmd($callback, $subreq, "xdsh", $nimprime, $nimcmd,0);
|
||||
if ($::RUNCMD_RC != 0)
|
||||
{
|
||||
my $rsp;
|
||||
push @{$rsp->{data}}, "Could not change NFSv4 domain to $domain.\n";
|
||||
if ($::VERBOSE)
|
||||
{
|
||||
push @{$rsp->{data}}, "$nimout";
|
||||
}
|
||||
xCAT::MsgUtils->message("E", $rsp, $callback);
|
||||
return 1;
|
||||
}
|
||||
|
||||
#nim -o change -a nfs_domain=$nfsdom master
|
||||
$nimcmd = qq~nim -o change -a nfs_domain=$domain master~;
|
||||
$nimout = xCAT::InstUtils->xcmd($callback, $subreq, "xdsh", $nimprime, $nimcmd,0);
|
||||
if ($::RUNCMD_RC != 0)
|
||||
{
|
||||
my $rsp;
|
||||
push @{$rsp->{data}}, "Could not set NFSv4 domain with nim master.\n";
|
||||
if ($::VERBOSE)
|
||||
{
|
||||
push @{$rsp->{data}}, "$nimout";
|
||||
}
|
||||
xCAT::MsgUtils->message("E", $rsp, $callback);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
#
|
||||
# get list of defined xCAT osimage objects
|
||||
#
|
||||
@ -3444,7 +3524,7 @@ sub mk_lpp_source
|
||||
|
||||
# check for relevant cmd line attrs
|
||||
my %cmdattrs;
|
||||
if ( ($::NFSV4) && (!$attrres{nfs_vers}) )
|
||||
if ( ($::NFSv4) && (!$attrres{nfs_vers}) )
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -3598,7 +3678,7 @@ sub mk_lpp_source
|
||||
|
||||
# check for relevant cmd line attrs
|
||||
my %cmdattrs;
|
||||
if ( ($::NFSV4) && (!$attrres{nfs_vers}) )
|
||||
if ( ($::NFSv4) && (!$attrres{nfs_vers}) )
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -3817,7 +3897,7 @@ sub mk_spot
|
||||
|
||||
# check for relevant cmd line attrs
|
||||
my %cmdattrs;
|
||||
if ( ($::NFSV4) && (!$attrres{nfs_vers}) )
|
||||
if ( ($::NFSv4) && (!$attrres{nfs_vers}) )
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -4045,7 +4125,7 @@ sub mk_bosinst_data
|
||||
|
||||
# check for relevant cmd line attrs
|
||||
my %cmdattrs;
|
||||
if ( ($::NFSV4) && (!$attrres{nfs_vers}) )
|
||||
if ( ($::NFSv4) && (!$attrres{nfs_vers}) )
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -4504,7 +4584,7 @@ sub chk_resolv_conf
|
||||
$cmd = "/usr/sbin/nim -o define -t resolv_conf -a server=master ";
|
||||
# check for relevant cmd line attrs
|
||||
my %cmdattrs;
|
||||
if ( ($::NFSV4) && (!$attrres{nfs_vers}) )
|
||||
if ( ($::NFSv4) && (!$attrres{nfs_vers}) )
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -4657,7 +4737,7 @@ sub mk_resolv_conf
|
||||
|
||||
# check for relevant cmd line attrs
|
||||
my %cmdattrs;
|
||||
if ( ($::NFSV4) && (!$attrres{nfs_vers}) )
|
||||
if ( ($::NFSv4) && (!$attrres{nfs_vers}) )
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -4806,7 +4886,7 @@ sub mk_mksysb
|
||||
|
||||
# check for relevant cmd line attrs
|
||||
my %cmdattrs;
|
||||
if ( ($::NFSV4) && (!$attrres{nfs_vers}) )
|
||||
if ( ($::NFSv4) && (!$attrres{nfs_vers}) )
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -4850,7 +4930,7 @@ sub mk_mksysb
|
||||
|
||||
# def res with existing mksysb image
|
||||
my $mkcmd;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$mkcmd = "/usr/sbin/nim -o define -t mksysb -a server=master -a nfs_vers=4 -a location=$::SYSB $mksysb_name 2>&1";
|
||||
}
|
||||
@ -5385,7 +5465,7 @@ sub mkScriptRes
|
||||
{
|
||||
|
||||
my $defcmd;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$defcmd = qq~/usr/sbin/nim -o define -t script -a server=master -a nfs_vers=4 -a location=$respath $resname 2>/dev/null~;
|
||||
}
|
||||
@ -5855,7 +5935,7 @@ sub mkdumpres
|
||||
|
||||
my %cmdattrs;
|
||||
|
||||
if ( ($::NFSV4) && (!$attrvals{nfs_vers}) )
|
||||
if ( ($::NFSv4) && (!$attrvals{nfs_vers}) )
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -5957,7 +6037,7 @@ sub mknimres
|
||||
my $install_dir = xCAT::Utils->getInstallDir();
|
||||
|
||||
my %cmdattrs;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -6845,7 +6925,7 @@ sub nimnodecust
|
||||
# try to define it
|
||||
my $bcmd =
|
||||
"/usr/sbin/nim -Fo define -t installp_bundle -a server=master -a location=$bndloc{$bnd} $bnd";
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$bcmd .= "-a nfs_vers=4 ";
|
||||
}
|
||||
@ -6949,7 +7029,6 @@ sub prenimnodeset
|
||||
'p|primarySN' => \$::PRIMARY,
|
||||
'verbose|V' => \$::VERBOSE,
|
||||
'v|version' => \$::VERSION,
|
||||
'nfsv4' => \$::NFSV4,
|
||||
)
|
||||
)
|
||||
{
|
||||
@ -7289,7 +7368,7 @@ sub prenimnodeset
|
||||
|
||||
# define the xcataixscript resource
|
||||
my $dcmd;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$dcmd = qq~/usr/sbin/nim -o define -t script -a server=master -a nfs_vers=4 -a location=$install_dir/nim/scripts/xcataixscript xcataixscript 2>/dev/null~;
|
||||
}
|
||||
@ -8132,7 +8211,6 @@ sub mkdsklsnode
|
||||
'p|primary' => \$::PRIMARY,
|
||||
'verbose|V' => \$::VERBOSE,
|
||||
'v|version' => \$::VERSION,
|
||||
'nfsv4' => \$::NFSV4,
|
||||
)
|
||||
)
|
||||
{
|
||||
@ -9803,7 +9881,7 @@ sub make_SN_resource
|
||||
my @validattrs = ("verbose", "nfs_vers", "nfs_sec", "packages", "use_source_simages", "arch", "show_progress", "multi_volume", "group");
|
||||
|
||||
my %cmdattrs;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -9862,7 +9940,7 @@ sub make_SN_resource
|
||||
my @validattrs = ("verbose", "nfs_vers", "nfs_sec", "source", "dest_dir", "group");
|
||||
|
||||
my %cmdattrs;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -9912,7 +9990,7 @@ sub make_SN_resource
|
||||
|
||||
my @validattrs = ("verbose", "nfs_vers", "nfs_sec", "dest_dir", "group", "source", "size_preview", "exclude_files", "mksysb_flags", "mk_image");
|
||||
my %cmdattrs;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -9964,7 +10042,7 @@ sub make_SN_resource
|
||||
$cmd = "/usr/sbin/nim -Fo define -t $restype -a server=master -a location=$lochash{$imghash{$image}{$restype}} ";
|
||||
my @validattrs = ("verbose", "nfs_vers", "nfs_sec", "group");
|
||||
my %cmdattrs;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
@ -10058,7 +10136,7 @@ sub make_SN_resource
|
||||
my @validattrs = ("verbose", "nfs_vers", "nfs_sec", "installp_flags", "auto_expand", "show_progress", "debug");
|
||||
|
||||
my %cmdattrs;
|
||||
if ($::NFSV4)
|
||||
if ($::NFSv4)
|
||||
{
|
||||
$cmdattrs{nfs_vers}=4;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user