The error is given because the nodes are not in the same subnet as the
service node, the script did not check for routing.
The code uses this function to set up MASTER environmental variable for
the node when calling postscripts. If it is not set up correctly some of
the postscripts such as syslog will fail. When you say "it works fine even
with that error". Can you xdsh to the nodes that has the error?
Ling
Ling Gao
Poughkeepsie Unix Development Lab
IBM Systems and Technology Group
Internal: T/L 293-5692
External: [email protected], 845-433-5692
"I never worry about the future. It comes soon enough." --- Albert
Einstein
From: Russell Jones <[email protected]>
To: [email protected]
Date: 12/07/2012 02:06 PM
Subject: Re: [xcat-user] Cannot find master for the node $node
Thanks!
DNS is working properly, both forward and reverse... this seems to occur
mostly when entire clusters are booted at the same time.
The nodes are not within the same subnet, all of these nodes are on
different subnets from the service nodes (and routed of course). The
other strange thing is again, it works fine even with that error:
[root@service03-hc log]# grep c25n37 messages
Dec 7 09:05:02 service03 xCAT: xCAT: Allowing getpostscript from c25n37
Dec 7 09:05:03 service03 xCAT: Cannot find master for the node c25n37
Dec 7 09:05:14 service03 xCAT: xCAT: Allowing getcredentials from c25n37
Dec 7 09:05:24 service03 xCAT: xCAT: Allowing getcredentials from c25n37
Dec 7 09:05:32 service03 xCAT: xCAT: Allowing getcredentials from c25n37
Could this message manifest itself if a service node is very busy? IE, not
really an error, just took too long to respond to the request? Or is this
literally sending the error because the compute nodes are not on the same
subnet as the service nodes?
On 12/7/2012 12:18 PM, Ling Gao wrote:
Hi,
The error is from getFacingIP function. This function takes a node name
as an input. Then it
find out the ip of the given node. Then it call "ifconfig" on the local
host. Then it try to see if the node ip and local host is within the same
subnet or not. (Please see the code below). The error usually happens when
the name resolution on the local host cannot resolve the given node. Hope
it helps.
#-------------------------------------------------------------------------------
=head3 getFacingIP
Gets the ip address of the adapter of the localhost that is facing
the
the given node.
Arguments:
The name of the node that is facing the localhost.
Returns:
The ip address of the adapter that faces the node.
=cut
#-------------------------------------------------------------------------------
sub getFacingIP
{
my ($class, $node) = @_;
my $ip;
my $cmd;
my @ipaddress;
my $nodeip = inet_ntoa(inet_aton($node));
unless ($nodeip =~ /\d+\.\d+\.\d+\.\d+/)
{
return 0; #Not supporting IPv6 here IPV6TODO
}
$cmd = "ifconfig" . " -a";
$cmd = $cmd . "| grep \"inet \"";
my @result = xCAT::Utils->runcmd($cmd, 0);
if ($::RUNCMD_RC != 0)
{
xCAT::MsgUtils->message("S", "Error from $cmd\n");
exit $::RUNCMD_RC;
}
# split node address
my ($n1, $n2, $n3, $n4) = split('\.', $nodeip);
foreach my $addr (@result)
{
my $ip;
my $mask;
if (xCAT::Utils->isLinux())
{
my ($inet, $addr1, $Bcast, $Mask) = split(" ", $addr);
if ((!$addr1) || (!$Mask)) { next; }
my @ips = split(":", $addr1);
my @masks = split(":", $Mask);
$ip = $ips[1];
$mask = $masks[1];
}
else
{ #AIX
my ($inet, $addr1, $netmask, $mask1, $Bcast, $bcastaddr) =
split(" ", $addr);
if ((!$addr1) && (!$mask1)) { next; }
$ip = $addr1;
$mask1 =~ s/0x//;
$mask =
`printf "%d.%d.%d.%d" \$(echo "$mask1" | sed 's/../0x&
/g')`;
}
if ($ip && $mask)
{
# split interface IP
my ($h1, $h2, $h3, $h4) = split('\.', $ip);
# split mask
my ($m1, $m2, $m3, $m4) = split('\.', $mask);
# AND this interface IP with the netmask of the network
my $a1 = ((int $h1) & (int $m1));
my $a2 = ((int $h2) & (int $m2));
my $a3 = ((int $h3) & (int $m3));
my $a4 = ((int $h4) & (int $m4));
# AND node IP with the netmask of the network
my $b1 = ((int $n1) & (int $m1));
my $b2 = ((int $n2) & (int $m2));
my $b3 = ((int $n3) & (int $m3));
my $b4 = ((int $n4) & (int $m4));
if (($b1 == $a1) && ($b2 == $a2) && ($b3 == $a3) && ($b4 ==
$a4))
{
return $ip;
}
}
}
xCAT::MsgUtils->message("S", "Cannot find master for the node
$node\n");
return 0;
}
Ling Gao
Poughkeepsie Unix Development Lab
IBM Systems and Technology Group
Internal: T/L 293-5692
External: [email protected], 845-433-5692
"I never worry about the future. It comes soon enough." --- Albert
Einstein
From: Russell Jones <[email protected]>
To: xCAT Users Mailing list <[email protected]>
Date: 12/07/2012 11:05 AM
Subject: [xcat-user] Cannot find master for the node $node
Hi all,
What circumstances have to be present for an xCAT 2.3 service node (old
I know, but upgrade is not an option at this time) to write to the logs:
Dec 7 09:16:33 service03 xCAT: Cannot find master for the node c25n25
All of our service nodes have been doing this for at least over a month
now, and we have just never noticed it before as nodes are
netbooting/installing fine. Just curious what the logic is in the code
that has this message being written out, just so that if it turns out to
be something we need to track down we know where to start.
Thanks!
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
xCAT-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xcat-user
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
xCAT-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xcat-user
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
xCAT-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xcat-user
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
xCAT-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xcat-user