Amanda-Users

RE: Amrecover: Cannot connect, then No index records for host

2003-01-13 18:05:51
Subject: RE: Amrecover: Cannot connect, then No index records for host
From: "Brashers, Bart -- MFG, Inc." <Bart.Brashers AT mfgenv DOT com>
To: "'Jay Lessert'" <jayl AT accelerant DOT net>
Date: Mon, 13 Jan 2003 15:09:58 -0700
> > amrecover> setdisk /data
> > 501 No index records for disk: /data. Invalid?
> > 
> > Nope, doesn't work.
> 
> You disklist entry is exactly "/data"?

Well, I simplified things a bit, in addition to naming the server "foo".
It's actually:

% grep data /usr/local/etc/amanda/Daily/disklist
foo /data/mm5_uw/calmm5     my-low-tar

but I don't see how that's any different.
 
> You're setting configname properly on the amrecover command line?

Yes: I'm using "amrecover -C Daily -s foo -t foo".

Interestingly, if I substitute the IP address of foo: "amrecover -C Daily -s
10.26.21.151 -t 10.26.21.151", I get the following:

% amrecover -C Daily -s 10.26.21.151 -t 10.26.21.151
AMRECOVER Version 2.4.2p2. Contacting server on 10.26.21.151 ...
amrecover: Unexpected server end of file

The amrecover.*.debug file contains

amrecover: debug 1 pid 16657 ruid 0 euid 0 start time Mon Jan 13 13:48:58
2003
amrecover: stream_client: connected to 10.26.21.151.10082
amrecover: stream_client: our side is 0.0.0.0.859

and the amindexd.*.debug file contains

amindexd: debug 1 pid 16658 ruid 507 euid 507 start time Mon Jan 13 13:48:58
200
3
amindexd: version 2.4.2p2
gethostbyaddr: Success
amindexd: pid 16658 finish time Mon Jan 13 13:48:58 2003

If I use the name (not the IP) I get "amrecover: stream_client: connected to
127.0.0.1.10082" in the amrecover.*.debug file.  This is because of my
admittedly odd /etc/hosts file (see below).

> You've checked the amindexd...debug logs on the server?

It looks almost the same, but you may be on to something here.  When I cd to
/data/mm5_uw/calmm5 and start amrecover, I see this in the debug log:

amindexd: debug 1 pid 16629 ruid 507 euid 507 start time Mon Jan 13 13:42:49
200
3
amindexd: version 2.4.2p2
< 220 foo AMANDA index server (2.4.2p2) ready.
> SECURITY USER root
bsd security: remote host foo.bar.com user root local user amanda
amandahosts security check passed
< 200 Access OK
> DATE 2003-01-13
< 200 Working date set to 2003-01-13.
> SCNF Daily
< 200 Config set to Daily.
> HOST foo.bar.com
< 501 No index records for host: foo.bar.com. Invalid?
> HOST foo.bar.com
< 501 No index records for host: foo.bar.com. Invalid?
> HOST localhost.localdomain
< 501 No index records for host: localhost.localdomain. Invalid?
> HOST localhost
< 501 No index records for host: localhost. Invalid?
> HOST foo
< 200 Dump host set to foo.
> DISK /data
< 501 No index records for disk: /data. Invalid?
> DISK sdb1
< 501 No index records for disk: sdb1. Invalid?

That is, I was in /data/mm5_uw/calmm5, but it tried to start in /data!  

However, doing a "setdisk /data/mm5_uw/calmm5" produces the same result
(appended to the debug file):

> DISK /data/mm5_uw/calmm5/
< 501 No index records for disk: /data/mm5_uw/calmm5/. Invalid?

Setting the date to last Friday (using setdate) doesn't help.

Any ideas on why it went to /data instead of /data/mm5_uw/calmm5?

> You can do something like:
> 
>     % gzcat .../Daily/index/foo/_data/20030112_0.gz 
> 
> and get what you expect?

% zcat /var/lib/amanda/Daily/index/foo/_data_mm5__uw_calmm5/20030110_3.gz

has a list of file that were backed up on Friday night's run, as expected.

> You don't have your disklist host field set to "localhost", do you?

No.

> I suppose it could be a problem with the indexdir in amanda.conf;
> there's no way you could be reading multiple amanda.conf files,
> is there?

I don't think so:

% grep indexdir /usr/local/etc/amanda/Daily/amanda.conf
indexdir "/var/lib/amanda/Daily/index"  # index directory

% amgetconf Daily indexdir
/var/lib/amanda/Daily/index

> It sounds like *some* kind of mismatch in host name between disklist,
> /etc/hosts, DNS, nsswitch.conf, etc.

My thoughts exactly.  That's why I included the info about my /etc/hosts
file and its oddities.  If I change from 

127.0.0.1       foo.bar.com     localhost.localdomain localhost foo
#10.26.21.151   foo.bar.com     foo

to

127.0.0.1       localhost.localdomain localhost 
10.26.21.151    foo.bar.com     foo

then I break OpenPBS, so I'd like to avoid that.  Either that, or I should
recompile all of OpenPBS with the new /etc/hosts file.  I'm not sure how
that would work, since the slave nodes know the head node not at
10.26.21.151, but as 192.168.3.1, which isn't mentioned in /etc/hosts at
all.  

Any hints (or better yet specific command lines) that I can use to figure
out which IP address my machine thinks it is?  Does amanda do a
reverse-lookup that might be failing?  "nslookup" queries the local DNS
server (a WinNT Server box), not /etc/hosts.  Keep in mind I have 2 NIC
cards, one "public" and one "private" for the slave nodes in the cluster.  

Also, note that trying amrestore from another amanda client produced the
same result.  That box knows nothing about the private NIC card.  

I did try to switch to the 2nd form of the /etc/hosts file, and recompiled
amanda, with the same results.  It seems to be something completely
different.

Thanks for all your help,

Bart
--
Bart Brashers                   MFG Inc.
Air Quality Meteorologist       19203 36th Ave W Suite 101
bart.brashers AT mfgenv DOT com        Lynnwood WA 98036-5707
http://www.mfgenv.com           425.921.4000 Fax: 425.921.4040

<Prev in Thread] Current Thread [Next in Thread>