Amanda-Users

Re: Regarding the source code hierarchy

2006-06-23 10:00:15
Subject: Re: Regarding the source code hierarchy
From: Paul Bijnens <paul.bijnens AT xplanation DOT com>
To: silpa kala <silpakala AT yahoo DOT com>
Date: Fri, 23 Jun 2006 15:50:41 +0200
On 2006-06-23 12:16, silpa kala wrote:
Hi,

I'm afraid I do not understand all of your questions either...
But I'll try.


I am silpakala. I need one help. I want to understand the basic flow of amanda i.e., a. Planner explains about the configuration stuff.

"Planner explains"?  confusing...

Planner sends a request to each client to estimate the size of
the backups. It then generates a plan, consisting of
a list of hosts and DLE's and dumplevel for each.
Included in the plan is also a "plan B", that driver can use
in case not all fits on tape (e.g. because the tape is missing).

This plan is a series of text lines, which are printed on
the stdout into the pipe which is connected to the stdin
of driver.


b. driver acts as an interface between the planner and
dumper/taper. I understood that they are using the
socket communication between the planner and dumper.
Why it is required.

Driver interprets the plan, and starts a taper
and several dumpers.  These dumper and taper programs
each get their instructions from driver, and communicate
the result to driver too.
E.g. each dumper will start one dump, and when finished
tells driver of the good news, driver will instruct taper
to put that dump on tape, and instruct the dumper to start
another dump. And so on.


c. Suppose the taper is taking the data from the
holding disk to tape. Here Whether the socket
communication is required between the dumper and
taper.

What is the question?
By "socket" communication, you probably mean TCP (as
opposed to unix sockets, which are not used in Amanda).

In the case of taper taping from holdingdisk, there
is no communication between taper and dumper.  But if
your holdingdisk is too small, then driver may instruct
to a dumper a taper to connect themselves and then
the backup that dumper is taking passes through taper
immediately to tape.  Yes, this uses a TCP socket.


d. What is the noop request.

Amanda server and client program do not need to be the
same version of have the same features.
In the amanda protocol, the server and client exchange
a set of features, so that they can agree on a common
set.  When this was first implemented it needed to
be compatible with previous versions too.
So since then the server first sends a "noop" (No Operation)
request to the client.  A post 2.4.2 server will respond
with an "ACK", and send a feature bitmask back.  A pre-2.4.2
server will "ACK" without that feature bit mask (it did
not exist at that time); the absense of the feature bitmask
gives enough information so that the server can continue too.
The implementors choose the "noop" request, because that
could be handled by a pre-2.4.2 server too.  A "feature-exch"
request would be handled as an error by those old servers.


e.Amandad service is connecting to the specific port
10080 in the client side. But the server side which
module is directly interacting with the client.

Amcheck, planner (for the estimates), and a driver, when
it starts a backup on that host.


Basically i need socket communication between the
client and server, where exactly the client is
blocking to accept the server connection, Which server

You have a firewall problem?
Why don't you say that sooner. :-)

#  modprobe ip_conntrack_amanda

See also:

http://wiki.zmanda.com/index.php/Configuration_with_iptables

module is connecting to which client module, Why the
dumper and taper executables are going into
/usr/local/libexec (client-specific) directory.
Mainly how the sockets are implemented.

Suppose if i want to take the backup for the server
itself then the socket connection is used for amanda.
Is there any way we can elimintate the sockets if we
want to take the backup only for the server.

Eliminate the TCP connections?  Why?
What exactly is your problem with that?



please provide the details. Please help me out in
this.

First describe your problem, not the secondary problems you
encounter while implementing your workarounds around the
original problem.



--
Paul Bijnens, xplanation Technology Services        Tel  +32 16 397.511
Technologielaan 21 bus 2, B-3001 Leuven, BELGIUM    Fax  +32 16 397.512
http://www.xplanation.com/          email:  Paul.Bijnens AT xplanation DOT com
***********************************************************************
* I think I've got the hang of it now:  exit, ^D, ^C, ^\, ^Z, ^Q, ^^, *
* F6, quit, ZZ, :q, :q!, M-Z, ^X^C, logoff, logout, close, bye, /bye, *
* stop, end, F3, ~., ^]c, +++ ATH, disconnect, halt,  abort,  hangup, *
* PF4, F20, ^X^X, :D::D, KJOB, F14-f-e, F8-e,  kill -1 $$,  shutdown, *
* init 0, kill -9 1, Alt-F4, Ctrl-Alt-Del, AltGr-NumLock, Stop-A, ... *
* ...  "Are you sure?"  ...   YES   ...   Phew ...   I'm out          *
***********************************************************************


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