FW: Problem when using Wackamole

<[email protected]> Mon, 2 Jul 2007 09:56:30 +0530
Newsgroups gmane.comp.apache.mod-wackamole.general
Message-ID <[email protected]>
This is a multi-part message in MIME format.

--===============5241800237360707188==
Content-class: urn:content-classes:message
Content-Type: multipart/alternative;
	boundary="----_=_NextPart_001_01C7BC60.BB91D3C9"

This is a multi-part message in MIME format.

------_=_NextPart_001_01C7BC60.BB91D3C9
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable


Hi,
    I am running Wackamole and Spread on a 2 node setup. Both the nodes
are running on Fedora Core 6 OS.
    At present I was finally able to obtain the failover case in the
nodes as I alternatively failed the nodes and tried to obtain a Virtual
IP on the other
    Currently its taking about 1 minute(or around 45-50 seconds) for the
failover of first node to shift the ownership of the virtual IP to the
second node and also vice versa.
    I would like to know if there is any way in which I can quicken this
process .Is there any way where we can use spread as a messanging
mechanism to improve=20
    for my case.         =20
    I have enclosed the Conf files for both Wackamole and Spread.

    Also will it be possible to do the Failover in a quicker time by
changing the parameters.
    Do tell me about this.
       =20
Regards
Manoj
=20
Wackamole.conf:
=20
=20
# The Spread daemon we are going to connect to.  It should be on the
local box
Spread =3D [email protected]
SpreadRetryInterval =3D 5s
# The group name
Group =3D wack1
=20
# Named socket for online control
#Control =3D /var/run/wack.it
=20
# Win32: specify a host:port combination for the control
Control =3D 127.0.0.1:2413
=20
#PerlUseLib .
#PerlUse example
#RunDynamic funcs:killhup on up
#RunDynamic example::dump_it on up
# Denote the interface we prefer to have
#prefer eth0:10.3.4.5/8
=20
# In most cases, I just don't care.  Let wackamole decide.
#Prefer eth5:10.145.167.113/32
Prefer None
=20
# List all the virtual interfaces (ALL of them)
VirtualInterfaces {
        # The following two lines have the same effect
        # en0:192.168.1.2/24
=20
        # Win32: note that you *must* match the netmask with the netmask
        # already configured on a given interface, otherwise the IP
address
        # won't be added.
        # The interface names match those that you'll see under Network
Connections
        # in the control panel; you'll probably need to renamed them so
that
        # they don't include spaces in their names.
        #{ brlan0:10.80.116.41/23 }
=20
        # This is how you say 2 or more IPs are to be treated as a
single
        # "set" or "virtual interface".  If wackamole decides that this
        # machine will manage it, you are ensured to get ALL the ips in
the
        # set.
#       { en1:10.0.0.1/8 en0:192.168.35.64/26 }
        eth5:10.145.167.160/32
        #eth5:0.0.0.0/26
# Collect and broadcast the IPs in our ARP table every so often
Arp-Cache =3D 90s
=20
# List who we will notify
#       Here the netblock (/24 or /28) can be deceptive.  It is NOT a
netmask
#       for a single IP.  It is how one will describe that they want to
#       notify ALL IPs in a segment.
Notify {
        eth5:10.145.167.1/32
        eth5:10.145.167.0/24 throttle 16
        arp-cache
}
balance {
        # This field is the maximum number of IP addresses that will
move
        # from one wackamole to another during a round of balancing.
        AcquisitionsPerRound =3D all
        # Time interval in each balancing round.
        interval =3D 4s
}
# How long it takes us to mature
mature =3D 2s

=20
=20
=20
spread.conf:
=20
=20
# Blank lines are permitted in this file.
# spread.conf sample file
#=20
# questions to [email protected]
#
=20
#MINIMAL REQUIRED FILE
#
# Spread should work fine on one machine with just the uncommented=20
# lines below. The rest of the file documents all the options and
# more complex network setups.
#
# This configures one spread daemon running on port 4803 on localhost.
=20
Spread_Segment  10.145.167.255:4803 {
=20
        yamuna                  10.145.167.113
        ganga                     10.145.167.114
}


# Spread options
#-----------------------------------------------------------------------
----
#-----------------------------------------------------------------------
----
#Set what internal Spread events are logged to the screen or file=20
# (see EventLogFile).
# Default setting is to enable PRINT and EXIT events only.=20
#The PRINT and EXIT types should always be enabled. The names of others
are:
#       EXIT PRINT DEBUG DATA_LINK NETWORK PROTOCOL SESSION=20
#       CONFIGURATION MEMBERSHIP FLOW_CONTROL STATUS EVENTS=20
#       GROUPS MEMORY SKIPLIST ALL NONE=20
#    ALL and NONE are special and represent either enabling every type=20
#                                           or enabling none of them.
#    You can also use a "!" sign to negate a type,=20
#        so { ALL !DATA_LINK } means log all events except data_link
ones.
=20
DebugFlags =3D { PRINT EXIT ALL !DATA_LINK !EVENTS !MEMORY !NETWORK }
=20
#Set whether to log to a file as opposed to stdout/stderr and what=20
# file to log to.
# Default is to log to stdout.
#
#If option is not set then logging is to stdout.
#If option is set then logging is to the filename specified.
# The filename can include a %h or %H escape that will be replaced at
runtime
# by the hostname of the machine upon which the daemon is running.
# For example "EventLogFile =3D spreadlog_%h.log" with 2 machines=20
# running Spread (machine1.mydomain.com and machine2.mydomain.com) will
# cause the daemons to log to "spreadlog_machine1.mydomain.com.log" and
# "spreadlog_machine2.mydomain.com.log" respectively.
=20
#EventLogFile =3D testlog.out
=20
#Set whether to add a timestamp in front of all logged events or not.
# Default is no timestamps. Default format is "[%a %d %b %Y %H:%M:%S]".
#If option is commented out then no timestamp is added.
#If option is enabled then a timestamp is added with the default format
#If option is enabled and set equal to a string, then that string is
used
#   as the format string for the timestamp. The string must be a valid
time
#   format string as used by the strftime() function.
=20
#EventTimeStamp
# or
#EventTimeStamp =3D "[%a %d %b %Y %H:%M:%S]"
=20
#Set whether to allow dangerous monitor commands=20
# like "partition, flow_control, or kill"
# Default setting is FALSE.
#If option is set to false then only "safe" monitor commands are allowed

#    (such as requesting a status update).
#If option is set to true then all monitor commands are enabled.=20
#   THIS IS A SECURTIY RISK IF YOUR NETWORK IS NOT PROTECTED!
=20
#DangerousMonitor =3D false
=20
#Set handling of SO_REUSEADDR socket option for the daemon's TCP
# listener.  This is useful for facilitating quick daemon restarts (OSes
# often hold onto the interface/port combination for a short period of
time
# after daemon shut down).
#
# AUTO - Active when bound to specific interfaces (default).
# ON   - Always active, regardless of interface.
#        SECURITY RISK FOR ANY OS WHICH ALLOW DOUBLE BINDS BY DIFFERENT
USERS
# OFF  - Always off.
=20
#SocketPortReuse =3D AUTO
=20
#Sets the runtime directory used when the Spread daemon is run as root
# as the directory to chroot to.  Defaults to the value of the
# compile-time preprocessor define SP_RUNTIME_DIR, which is generally
# "/var/run/spread".
=20
#RuntimeDir =3D /var/run/spread
=20
#Sets the unix user that the Spread daemon runs as (when launched as
# the "root" user).  Not effective on a Windows system.  Defaults to
# the user and group "spread".
=20
#DaemonUser =3D spread
#DaemonGroup =3D spread
=20

#Set the list of authentication methods that the daemon will allow
# and those which are required in all cases.
# All of the methods listed in "RequiredAuthMethods" will be checked,
# irregardless of what methods the client chooses.
# Of the methods listed is "AllowedAuthMethods" the client is
# permitted to choose one or more, and all the ones the client chooses
# will also be checked.
#
# To support older clients, if NULL is enabled, then older clients can
# connect without any authentication. Any methods which do not require
# any interaction with the client (such as IP) can also be enabled
# for older clients. If you enable methods that require interaction,
# then essentially all older clients will be locked out.
#
#The current choices are:
#       NULL for default, allow anyone authentication
#       IP for IP based checks using the spread.access_ip file
=20
#RequiredAuthMethods =3D "   "
#AllowedAuthMethods =3D "NULL"
=20
#Set the current access control policy.
# This is only needed if you want to establish a customized policy.
# The default policy is to allow any actions by authenticated clients.
#AccessControlPolicy =3D "PERMIT"
=20

# network description line.
# Spread_Segment <multicast address for subnet> <port> {
# port is optional, if not specified the default 4803 port is used.
=20
#Spread_Segment  127.0.0.255:4803 {
=20
# either a name or IP address.  If both are given, than the name is
taken=20
# as-is, and the IP address is used for that name.
=20
#       localhost               127.0.0.1
#}
# repeat for next sub-network
=20
Spread_Segment 129.130.12.255:4803 {
        dns-h1  129.130.12.160
        dns-h2  129.130.12.161
}
=20
#Spread_Segment x.2.2.255 {
=20
#       other1                  128.2.2.10
#                               128.2.2.11
#       other3.my.com
#}
# Spread will feel free to use broadcast messages within a sub-network.
# if you do not want this to happen, you should specify your machines on
# different logical sub-networks.
=20
# IP-Multicast addresses can also be used as the multicast address for
# the logical sub-network as in this example. If IP-multicast is
supported
# by the operating system, then the messages will only be received
# by those machines who are in the group and not by all others in the
same
# sub-network as happens with broadcast addresses
=20
#Spread_Segment 225.0.1.1:3333 {
#       mcast1                  1.2.3.4
#       mcast2                  1.2.3.6
#}
=20
# Multi-homed host setup
#
# If you run Spread on hosts with multiple interfaces you may want to=20
# control which interfaces Spread uses for client connections and for
# the daemon-to-daemon (and monitor control) messages. This can be done
# by adding an extra stanza to each configured machine.=20
#
#Sample:
#
#Spread_Segment 225.0.1.1 {
#       multihomed1             1.2.3.4 {
#               D 192.168.0.4
#               C 1.2.3.4 }
#       multihomed2             1.2.3.5 {
#               D 192.168.0.5
#               C 1.2.3.5
#               C 127.0.0.1 }
#       multihomed3             1.2.3.6 {
#               192.168.0.6
#               1.2.3.6 }
#}
# This configuration sets up three multihomed machines into a Spread
segment.
# The first host has a 'main' IP address of 1.2.3.4 and listens for
client
# connections only on that interface. All daemon-to-daemon UDP
multicasts and
# the tokens and any monitor messages must use the 192.168.0.4
interface.
# The second host multihomed2 has a similar setup, except it also
listens for
# client connections on the localhost interface as well as the 1.2.3.5=20
interface.
# If you make any use of the extra interface stanza ( a { } block ) then
you=20
must
# explicitly configure ALL interfaces you want as Spread removes all
defaults=20
when
# you use the explicit notation.
# The third multihomed3 host uses a shorthand form of omitting the D or
C=20
option and
# just listening for all types of traffic and events on both the
192.168.0 and=20
1.2.3=20
# networks. If no letter is listed before the interface address then ALL
types=20
of=20
# events are handled on that interface.



The information contained in this electronic message and any attachments to=
 this message are intended for the exclusive use of the addressee(s) and=
 may contain proprietary, confidential or privileged information. If you=
 are not the intended recipient, you should not disseminate, distribute or=
 copy this e-mail. Please notify the sender immediately and destroy all=
 copies of this message and any attachments.=20

WARNING: Computer viruses can be transmitted via email. The recipient=
 should check this email and any attachments for the presence of viruses.=
 The company accepts no liability for any damage caused by any virus=
 transmitted by this email.
=20
www.wipro.com
------_=_NextPart_001_01C7BC60.BB91D3C9
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dus-ascii">
<META content=3D"MSHTML 6.00.2900.3132" name=3DGENERATOR></HEAD>
<BODY>
<DIV dir=3Dltr align=3Dleft><FONT face=3DArial size=3D2><SPAN=20
class=3D593243712-29062007>Hi,</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=
=3D593243712-29062007>&nbsp;&nbsp;&nbsp; I=20
am running Wackamole and Spread on&nbsp;a 2 node setup. Both the nodes are=
=20
running on Fedora Core 6 OS.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=
=3D593243712-29062007>&nbsp;&nbsp;&nbsp;=20
At present I was finally able to obtain the failover case in the nodes as I=
=20
alternatively failed the nodes and tried to obtain a Virtual IP on the=20
other</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=
=3D593243712-29062007>&nbsp;&nbsp;&nbsp;=20
Currently its taking about 1 minute(or around 45-50 seconds) for the=
 failover=20
of&nbsp;first node to shift the ownership of the virtual IP to=
 the&nbsp;second=20
node and also vice versa.</SPAN></FONT></DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial><FONT=20
size=3D2>&nbsp;&nbsp;&nbsp; I would like to know if there is any way in=
 which I=20
can quicken this process<FONT color=3D#0000ff><SPAN=20
class=3D734010703-02072007>&nbsp;.<FONT color=3D#000000>Is there any way=
 where we=20
can use spread as a messanging mechanism to=20
improve&nbsp;</FONT></SPAN></FONT></FONT></FONT></SPAN></DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial><FONT size=
=3D2><FONT=20
size=3D+0><SPAN class=3D734010703-02072007>&nbsp;&nbsp;&nbsp;&nbsp;<FONT=
 size=3D2>for=20
my case</FONT>.&nbsp;</SPAN><SPAN class=
=3D734010703-02072007>&nbsp;</SPAN><SPAN=20
class=3D734010703-02072007>&nbsp;&nbsp;</SPAN><SPAN=20
class=3D734010703-02072007>&nbsp;</SPAN><SPAN=20
class=3D734010703-02072007>&nbsp;&nbsp;&nbsp;</SPAN><SPAN=20
class=
=3D734010703-02072007>&nbsp;&nbsp;</SPAN></FONT></FONT></FONT></SPAN></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D593243712-29062007>&nbsp;&nbsp;&nbsp;&nbsp;I&nbsp;have enclosed the=
 Conf=20
files for both Wackamole and=20
Spread.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=
=3D593243712-29062007>&nbsp;&nbsp;&nbsp;=20
Also will it be possible to do the Failover in a quicker time by changing=
 the=20
parameters.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=
=3D593243712-29062007>&nbsp;&nbsp;&nbsp;=20
Do tell me about this.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D593243712-29062007>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D593243712-29062007>Regards</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D593243712-29062007>Manoj</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=
=3D4><STRONG>Wackamole.conf:</STRONG></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2># The Spread daemon we are going to=
 connect=20
to.&nbsp; It should be on the local box<BR>Spread =3D <A=20
href=3D"mailto:[email protected]">[email protected]</A><BR>SpreadRetryInterval =
=3D 5s<BR>#=20
The group name<BR>Group =3D wack1</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2># Named socket for online=
 control<BR>#Control =3D=20
/var/run/wack.it</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2># Win32: specify a host:port combination=
 for the=20
control<BR>Control =3D 127.0.0.1:2413</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>#PerlUseLib .<BR>#PerlUse=
 example<BR>#RunDynamic=20
funcs:killhup on up<BR>#RunDynamic example::dump_it on up<BR># Denote the=20
interface we prefer to have<BR>#prefer eth0:10.3.4.5/8</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2># In most cases, I just don't care.&nbsp;=
 Let=20
wackamole decide.<BR>#Prefer eth5:10.145.167.113/32<BR>Prefer=
 None</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2># List all the virtual interfaces (ALL of=
=20
them)<BR>VirtualInterfaces {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 # The=20
following two lines have the same=20
effect<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #=20
en0:192.168.1.2/24</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 # Win32:=20
note that you *must* match the netmask with the=20
netmask<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # already configured=
 on a=20
given interface, otherwise the IP=20
address<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # won't be=20
added.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # The interface names=
 match=20
those that you'll see under Network=20
Connections<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # in the control=
=20
panel; you'll probably need to renamed them so=20
that<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # they don't include=
 spaces=20
in their names.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #{=20
brlan0:10.80.116.41/23 }</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 # This=20
is how you say 2 or more IPs are to be treated as a=20
single<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # "set" or "virtual=20
interface".&nbsp; If wackamole decides that=20
this<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # machine will manage=
 it, you=20
are ensured to get ALL the ips in=20
the<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #=20
set.<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { en1:10.0.0.1/8=20
en0:192.168.35.64/26 }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
eth5:10.145.167.160/32<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
#eth5:0.0.0.0/26<BR># Collect and broadcast the IPs in our ARP table every=
 so=20
often<BR>Arp-Cache =3D 90s</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2># List who we will=20
notify<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Here the netblock (/24 or=
 /28)=20
can be deceptive.&nbsp; It is NOT a=20
netmask<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for a single IP.&nbsp; It=
 is=20
how one will describe that they want=
 to<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
notify ALL IPs in a segment.<BR>Notify=20
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
eth5:10.145.167.1/32<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
eth5:10.145.167.0/24 throttle=
 16<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
arp-cache<BR>}<BR>balance {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #=
 This=20
field is the maximum number of IP addresses that will=20
move<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # from one wackamole to=
=20
another during a round of=20
balancing.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 AcquisitionsPerRound =3D=20
all<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # Time interval in each=20
balancing round.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; interval =3D=
=20
4s<BR>}<BR># How long it takes us to mature<BR>mature =3D=
 2s<BR></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial=20
size=3D4><STRONG>spread.conf:</STRONG></FONT></SPAN></DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial=20
size=3D2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial size=3D2># Blank=
 lines are=20
permitted in this file.<BR># spread.conf sample file<BR># <BR># questions=
 to <A=20
href=
=3D"mailto:[email protected]">[email protected]</A><BR>#</FONT></SPAN></DIV=
>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial size=3D2>#MINIMAL=
 REQUIRED=20
FILE<BR>#<BR># Spread should work fine on one machine with just the=
 uncommented=20
<BR># lines below. The rest of the file documents all the options and<BR>#=
 more=20
complex network setups.<BR>#<BR># This configures one spread daemon running=
 on=20
port 4803 on localhost.</FONT></SPAN></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial size=
=3D2>Spread_Segment&nbsp;=20
10.145.167.255:4803 {</FONT></SPAN></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial=20
size=3D2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
yamuna&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
10.145.167.113<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
ganga&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10.145.167.114</FON=
T></SPAN></DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial=20
size=3D2>}<BR></FONT></SPAN></DIV>
<DIV><SPAN class=3D593243712-29062007><FONT face=3DArial size=3D2><BR>#=
 Spread=20
options<BR>#---------------------------------------------------------------=
------------<BR>#----------------------------------------------------------=
-----------------<BR>#Set=20
what internal Spread events are logged to the screen or file <BR># (see=20
EventLogFile).<BR># Default setting is to enable PRINT and EXIT events=
 only.=20
<BR>#The PRINT and EXIT types should always be enabled. The names of others=
=20
are:<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; EXIT PRINT DEBUG DATA_LINK=
 NETWORK=20
PROTOCOL SESSION <BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CONFIGURATION=20
MEMBERSHIP FLOW_CONTROL STATUS EVENTS=
 <BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
GROUPS MEMORY SKIPLIST ALL NONE <BR>#&nbsp;&nbsp;&nbsp; ALL and NONE are=
 special=20
and represent either enabling every type=20
<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
or enabling none of them.<BR>#&nbsp;&nbsp;&nbsp; You can also use a "!"=
 sign to=20
negate a type, <BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; so { ALL=20
!DATA_LINK } means log all events except data_link ones.</DIV>
<DIV>&nbsp;</DIV>
<DIV>DebugFlags =3D { PRINT EXIT ALL !DATA_LINK !EVENTS !MEMORY !NETWORK=
 }</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Set whether to log to a file as opposed to stdout/stderr and what=
 <BR>#=20
file to log to.<BR># Default is to log to stdout.<BR>#<BR>#If option is not=
 set=20
then logging is to stdout.<BR>#If option is set then logging is to the=
 filename=20
specified.<BR># The filename can include a %h or %H escape that will be=
 replaced=20
at runtime<BR># by the hostname of the machine upon which the daemon is=20
running.<BR># For example "EventLogFile =3D spreadlog_%h.log" with 2=
 machines=20
<BR># running Spread (machine1.mydomain.com and machine2.mydomain.com)=
 will<BR>#=20
cause the daemons to log to "spreadlog_machine1.mydomain.com.log" and<BR>#=
=20
"spreadlog_machine2.mydomain.com.log" respectively.</DIV>
<DIV>&nbsp;</DIV>
<DIV>#EventLogFile =3D testlog.out</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Set whether to add a timestamp in front of all logged events or=
 not.<BR>#=20
Default is no timestamps. Default format is "[%a %d %b %Y=
 %H:%M:%S]".<BR>#If=20
option is commented out then no timestamp is added.<BR>#If option is=
 enabled=20
then a timestamp is added with the default format<BR>#If option is enabled=
 and=20
set equal to a string, then that string is used<BR>#&nbsp;&nbsp; as the=
 format=20
string for the timestamp. The string must be a valid time<BR>#&nbsp;&nbsp;=
=20
format string as used by the strftime() function.</DIV>
<DIV>&nbsp;</DIV>
<DIV>#EventTimeStamp<BR># or<BR>#EventTimeStamp =3D "[%a %d %b %Y=
 %H:%M:%S]"</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Set whether to allow dangerous monitor commands <BR># like=
 "partition,=20
flow_control, or kill"<BR># Default setting is FALSE.<BR>#If option is set=
 to=20
false then only "safe" monitor commands are allowed <BR>#&nbsp;&nbsp;&nbsp;=
=20
(such as requesting a status update).<BR>#If option is set to true then all=
=20
monitor commands are enabled. <BR>#&nbsp;&nbsp; THIS IS A SECURTIY RISK IF=
 YOUR=20
NETWORK IS NOT PROTECTED!</DIV>
<DIV>&nbsp;</DIV>
<DIV>#DangerousMonitor =3D false</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Set handling of SO_REUSEADDR socket option for the daemon's TCP<BR>#=
=20
listener.&nbsp; This is useful for facilitating quick daemon restarts=
 (OSes<BR>#=20
often hold onto the interface/port combination for a short period of=
 time<BR>#=20
after daemon shut down).<BR>#<BR># AUTO - Active when bound to specific=20
interfaces (default).<BR># ON&nbsp;&nbsp; - Always active, regardless of=20
interface.<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SECURITY RISK FOR=
 ANY=20
OS WHICH ALLOW DOUBLE BINDS BY DIFFERENT USERS<BR># OFF&nbsp; - Always=20
off.</DIV>
<DIV>&nbsp;</DIV>
<DIV>#SocketPortReuse =3D AUTO</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Sets the runtime directory used when the Spread daemon is run as=
 root<BR>#=20
as the directory to chroot to.&nbsp; Defaults to the value of the<BR>#=20
compile-time preprocessor define SP_RUNTIME_DIR, which is generally<BR>#=20
"/var/run/spread".</DIV>
<DIV>&nbsp;</DIV>
<DIV>#RuntimeDir =3D /var/run/spread</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Sets the unix user that the Spread daemon runs as (when launched=
 as<BR>#=20
the "root" user).&nbsp; Not effective on a Windows system.&nbsp; Defaults=20
to<BR># the user and group "spread".</DIV>
<DIV>&nbsp;</DIV>
<DIV>#DaemonUser =3D spread<BR>#DaemonGroup =3D spread</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR>#Set the list of authentication methods that the daemon will=
 allow<BR>#=20
and those which are required in all cases.<BR># All of the methods listed=
 in=20
"RequiredAuthMethods" will be checked,<BR># irregardless of what methods=
 the=20
client chooses.<BR># Of the methods listed is "AllowedAuthMethods" the=
 client=20
is<BR># permitted to choose one or more, and all the ones the client=20
chooses<BR># will also be checked.<BR>#<BR># To support older clients, if=
 NULL=20
is enabled, then older clients can<BR># connect without any authentication.=
 Any=20
methods which do not require<BR># any interaction with the client (such as=
 IP)=20
can also be enabled<BR># for older clients. If you enable methods that=
 require=20
interaction,<BR># then essentially all older clients will be locked=20
out.<BR>#<BR>#The current choices=
 are:<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
NULL for default, allow anyone=20
authentication<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IP for IP based=
 checks=20
using the spread.access_ip file</DIV>
<DIV>&nbsp;</DIV>
<DIV>#RequiredAuthMethods =3D "&nbsp;&nbsp; "<BR>#AllowedAuthMethods =3D=20
"NULL"</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Set the current access control policy.<BR># This is only needed if=
 you=20
want to establish a customized policy.<BR># The default policy is to allow=
 any=20
actions by authenticated clients.<BR>#AccessControlPolicy =3D=
 "PERMIT"</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR># network description line.<BR># Spread_Segment &lt;multicast=
 address=20
for subnet&gt; &lt;port&gt; {<BR># port is optional, if not specified the=20
default 4803 port is used.</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Spread_Segment&nbsp; 127.0.0.255:4803 {</DIV>
<DIV>&nbsp;</DIV>
<DIV># either a name or IP address.&nbsp; If both are given, than the name=
 is=20
taken <BR># as-is, and the IP address is used for that name.</DIV>
<DIV>&nbsp;</DIV>
<DIV>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
localhost&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;=20
127.0.0.1<BR>#}<BR># repeat for next sub-network</DIV>
<DIV>&nbsp;</DIV>
<DIV>Spread_Segment 129.130.12.255:4803=20
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dns-h1&nbsp;=20
129.130.12.160<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dns-h2&nbsp;=20
129.130.12.161<BR>}</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Spread_Segment x.2.2.255 {</DIV>
<DIV>&nbsp;</DIV>
<DIV>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
other1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
128.2.2.10<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
128.2.2.11<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
 other3.my.com<BR>#}<BR>#=20
Spread will feel free to use broadcast messages within a sub-network.<BR>#=
 if=20
you do not want this to happen, you should specify your machines on<BR>#=20
different logical sub-networks.</DIV>
<DIV>&nbsp;</DIV>
<DIV># IP-Multicast addresses can also be used as the multicast address=
 for<BR>#=20
the logical sub-network as in this example. If IP-multicast is=
 supported<BR># by=20
the operating system, then the messages will only be received<BR># by those=
=20
machines who are in the group and not by all others in the same<BR>#=
 sub-network=20
as happens with broadcast addresses</DIV>
<DIV>&nbsp;</DIV>
<DIV>#Spread_Segment 225.0.1.1:3333=
 {<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
mcast1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
1.2.3.4<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
mcast2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
1.2.3.6<BR>#}</DIV>
<DIV>&nbsp;</DIV>
<DIV># Multi-homed host setup<BR>#<BR># If you run Spread on hosts with=
 multiple=20
interfaces you may want to <BR># control which interfaces Spread uses for=
 client=20
connections and for<BR># the daemon-to-daemon (and monitor control)=
 messages.=20
This can be done<BR># by adding an extra stanza to each configured machine.=
=20
<BR>#<BR>#Sample:<BR>#<BR>#Spread_Segment 225.0.1.1=20
{<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
multihomed1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;=20
1.2.3.4=20
{<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;=20
D=20
192.168.0.4<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;=20
C 1.2.3.4 }<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
multihomed2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;=20
1.2.3.5=20
{<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;=20
D=20
192.168.0.5<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;=20
C=20
1.2.3.5<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;=20
C 127.0.0.1 }<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
multihomed3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;=20
1.2.3.6=20
{<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;=20
192.168.0.6<BR>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;=20
1.2.3.6 }<BR>#}<BR># This configuration sets up three multihomed machines=
 into a=20
Spread segment.<BR># The first host has a 'main' IP address of 1.2.3.4 and=
=20
listens for client<BR># connections only on that interface. All=
 daemon-to-daemon=20
UDP multicasts and<BR># the tokens and any monitor messages must use the=20
192.168.0.4 interface.<BR># The second host multihomed2 has a similar=
 setup,=20
except it also listens for<BR># client connections on the localhost=
 interface as=20
well as the 1.2.3.5 <BR>interface.<BR># If you make any use of the extra=20
interface stanza ( a { } block ) then you <BR>must<BR># explicitly=
 configure ALL=20
interfaces you want as Spread removes all defaults <BR>when<BR># you use=
 the=20
explicit notation.<BR># The third multihomed3 host uses a shorthand form of=
=20
omitting the D or C <BR>option and<BR># just listening for all types of=
 traffic=20
and events on both the 192.168.0 and <BR>1.2.3 <BR># networks. If no letter=
 is=20
listed before the interface address then ALL types <BR>of <BR># events are=
=20
handled on that interface.</FONT></SPAN></DIV></BODY></HTML>

<table><tr><td bgcolor=3D#ffffff><font color=3D#000000><br>
The information contained in this electronic message and any attachments to=
 this message are intended for the exclusive use of the addressee(s) and=
 may contain proprietary, confidential or privileged information. If you=
 are not the intended recipient, you should not disseminate, distribute or=
 copy this e-mail. Please notify the sender immediately and destroy all=
 copies of this message and any attachments. <br>
<br>
WARNING: Computer viruses can be transmitted via email. The recipient=
 should check this email and any attachments for the presence of viruses.=
 The company accepts no liability for any damage caused by any virus=
 transmitted by this email.<br>
 <br>
www.wipro.com<br>
</font></td></tr></table>
------_=_NextPart_001_01C7BC60.BB91D3C9--


--===============5241800237360707188==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
wackamole-users mailing list
[email protected]
http://lists.backhand.org/mailman/listinfo/wackamole-users

--===============5241800237360707188==--