<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.tetrain.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mithilesh</id>
	<title>TetraWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.tetrain.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mithilesh"/>
	<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Special:Contributions/Mithilesh"/>
	<updated>2026-07-25T08:20:47Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2015</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2015"/>
		<updated>2015-07-11T19:47:59Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;############## ON NODE1 configuration ##############&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
  # Do not remove the following line, or various programs&lt;br /&gt;
  # that require network functionality will fail.&lt;br /&gt;
  127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
  #::1		localhost6.localdomain6 localhost6&lt;br /&gt;
  192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
  192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
  10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
  10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
  192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
  global { usage-count no; }&lt;br /&gt;
  common {&lt;br /&gt;
  syncer { rate 100M; }&lt;br /&gt;
  } &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
   resource main {&lt;br /&gt;
   protocol C;&lt;br /&gt;
   startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
   disk { on-io-error detach; }&lt;br /&gt;
   on node1.energoindia.com {&lt;br /&gt;
   device /dev/drbd0;&lt;br /&gt;
   disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
   meta-disk internal;&lt;br /&gt;
   address 10.0.0.1:7788;&lt;br /&gt;
  }&lt;br /&gt;
  on node2.energoindia.com {&lt;br /&gt;
  device /dev/drbd0;&lt;br /&gt;
  disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
  meta-disk internal;&lt;br /&gt;
  address 10.0.0.2:7788;&lt;br /&gt;
  }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
  version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
  GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
  0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
  ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
  Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
  /dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
  /dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
  tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
  /dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
  keepalive 2&lt;br /&gt;
  deadtime 30&lt;br /&gt;
  bcast eth0 &lt;br /&gt;
  node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
  logfile /var/log/ha-log&lt;br /&gt;
  debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
   node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
   IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
   /home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
   auth 3&lt;br /&gt;
   3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
 eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
 eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINK:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
                Trying 127.0.0.1...&lt;br /&gt;
                Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                Escape character is &#039;^]&#039;.&lt;br /&gt;
                220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
               Trying 127.0.0.1...&lt;br /&gt;
               Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
               Escape character is &#039;^]&#039;.&lt;br /&gt;
              +OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
                 Trying 127.0.0.1...&lt;br /&gt;
                 Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                 Escape character is &#039;^]&#039;.&lt;br /&gt;
              *  OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA &lt;br /&gt;
                 IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING &lt;br /&gt;
                 for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
               Trying 127.0.0.1...&lt;br /&gt;
               Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
               Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;############## ON NODE2 configuration ##############&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
 # Do not remove the following line, or various programs&lt;br /&gt;
 # that require network functionality will fail.&lt;br /&gt;
 127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
 #::1            localhost6.localdomain6 localhost6&lt;br /&gt;
 192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
 192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
 10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
 10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
 192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    &#039;&#039;&#039;:::::::::Installing DRBD:::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
 global { usage-count no; }&lt;br /&gt;
 common {&lt;br /&gt;
 syncer { rate 100M; }&lt;br /&gt;
 } &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
 resource main {&lt;br /&gt;
 protocol C;&lt;br /&gt;
 startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
 disk { on-io-error detach; }&lt;br /&gt;
 on node1.energoindia.com {&lt;br /&gt;
 device /dev/drbd0;&lt;br /&gt;
 disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
 meta-disk internal;&lt;br /&gt;
 address 10.0.0.1:7788;&lt;br /&gt;
 }&lt;br /&gt;
 on node2.energoindia.com {&lt;br /&gt;
 device /dev/drbd0;&lt;br /&gt;
 disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
 meta-disk internal;&lt;br /&gt;
 address 10.0.0.2:7788;&lt;br /&gt;
 }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
 version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
 GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
 0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
 ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
 [&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
 finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      &#039;&#039;&#039;::::::Installing heartbeat::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
  keepalive 2&lt;br /&gt;
  deadtime 30&lt;br /&gt;
  bcast eth0 &lt;br /&gt;
  node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
  logfile /var/log/ha-log&lt;br /&gt;
  debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
  node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0   IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
  auth 3&lt;br /&gt;
  3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                            == &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
 &lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   +OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT   QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
  Trying 127.0.0.1...&lt;br /&gt;
  Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
  Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
 Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
 /dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
 /dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
 tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
 /dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2014</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2014"/>
		<updated>2015-07-11T19:45:07Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;############## ON NODE1 configuration ##############&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
  # Do not remove the following line, or various programs&lt;br /&gt;
  # that require network functionality will fail.&lt;br /&gt;
  127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
  #::1		localhost6.localdomain6 localhost6&lt;br /&gt;
  192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
  192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
  10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
  10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
  192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
  global { usage-count no; }&lt;br /&gt;
  common {&lt;br /&gt;
  syncer { rate 100M; }&lt;br /&gt;
  } &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
   resource main {&lt;br /&gt;
   protocol C;&lt;br /&gt;
   startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
   disk { on-io-error detach; }&lt;br /&gt;
   on node1.energoindia.com {&lt;br /&gt;
   device /dev/drbd0;&lt;br /&gt;
   disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
   meta-disk internal;&lt;br /&gt;
   address 10.0.0.1:7788;&lt;br /&gt;
  }&lt;br /&gt;
  on node2.energoindia.com {&lt;br /&gt;
  device /dev/drbd0;&lt;br /&gt;
  disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
  meta-disk internal;&lt;br /&gt;
  address 10.0.0.2:7788;&lt;br /&gt;
  }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
  version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
  GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
  0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
  ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
  Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
  /dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
  /dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
  tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
  /dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
  keepalive 2&lt;br /&gt;
  deadtime 30&lt;br /&gt;
  bcast eth0 &lt;br /&gt;
  node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
  logfile /var/log/ha-log&lt;br /&gt;
  debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
   node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
   IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
   /home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
   auth 3&lt;br /&gt;
   3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINK:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
                Trying 127.0.0.1...&lt;br /&gt;
                Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                Escape character is &#039;^]&#039;.&lt;br /&gt;
                220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
               Trying 127.0.0.1...&lt;br /&gt;
               Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
               Escape character is &#039;^]&#039;.&lt;br /&gt;
              +OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
                 Trying 127.0.0.1...&lt;br /&gt;
                 Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                 Escape character is &#039;^]&#039;.&lt;br /&gt;
              *  OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA &lt;br /&gt;
                 IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING &lt;br /&gt;
                 for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
               Trying 127.0.0.1...&lt;br /&gt;
               Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
               Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;############## ON NODE2 configuration ##############&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
 # Do not remove the following line, or various programs&lt;br /&gt;
 # that require network functionality will fail.&lt;br /&gt;
 127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
 #::1            localhost6.localdomain6 localhost6&lt;br /&gt;
 192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
 192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
 10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
 10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
 192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    &#039;&#039;&#039;:::::::::Installing DRBD:::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
 global { usage-count no; }&lt;br /&gt;
 common {&lt;br /&gt;
 syncer { rate 100M; }&lt;br /&gt;
 } &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
 resource main {&lt;br /&gt;
 protocol C;&lt;br /&gt;
 startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
 disk { on-io-error detach; }&lt;br /&gt;
 on node1.energoindia.com {&lt;br /&gt;
 device /dev/drbd0;&lt;br /&gt;
 disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
 meta-disk internal;&lt;br /&gt;
 address 10.0.0.1:7788;&lt;br /&gt;
 }&lt;br /&gt;
 on node2.energoindia.com {&lt;br /&gt;
 device /dev/drbd0;&lt;br /&gt;
 disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
 meta-disk internal;&lt;br /&gt;
 address 10.0.0.2:7788;&lt;br /&gt;
 }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
 version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
 GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
 0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
 ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
 [&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
 finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      &#039;&#039;&#039;::::::Installing heartbeat::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
  keepalive 2&lt;br /&gt;
  deadtime 30&lt;br /&gt;
  bcast eth0 &lt;br /&gt;
  node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
  logfile /var/log/ha-log&lt;br /&gt;
  debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
  node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0   IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
  auth 3&lt;br /&gt;
  3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                            == &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
 &lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   +OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT   QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
  Trying 127.0.0.1...&lt;br /&gt;
  Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
  Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
 Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
 /dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
 /dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
 tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
 /dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2013</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2013"/>
		<updated>2015-07-11T19:41:55Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;############### NODE1: configuration ################&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
  # Do not remove the following line, or various programs&lt;br /&gt;
  # that require network functionality will fail.&lt;br /&gt;
  127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
  #::1		localhost6.localdomain6 localhost6&lt;br /&gt;
  192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
  192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
  10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
  10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
  192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
  global { usage-count no; }&lt;br /&gt;
  common {&lt;br /&gt;
  syncer { rate 100M; }&lt;br /&gt;
  } &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
   resource main {&lt;br /&gt;
   protocol C;&lt;br /&gt;
   startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
   disk { on-io-error detach; }&lt;br /&gt;
   on node1.energoindia.com {&lt;br /&gt;
   device /dev/drbd0;&lt;br /&gt;
   disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
   meta-disk internal;&lt;br /&gt;
   address 10.0.0.1:7788;&lt;br /&gt;
  }&lt;br /&gt;
  on node2.energoindia.com {&lt;br /&gt;
  device /dev/drbd0;&lt;br /&gt;
  disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
  meta-disk internal;&lt;br /&gt;
  address 10.0.0.2:7788;&lt;br /&gt;
  }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
  version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
  GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
  0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
  ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
  Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
  /dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
  /dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
  tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
  /dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
  keepalive 2&lt;br /&gt;
  deadtime 30&lt;br /&gt;
  bcast eth0 &lt;br /&gt;
  node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
  logfile /var/log/ha-log&lt;br /&gt;
  debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
   node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
   IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
   /home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
   auth 3&lt;br /&gt;
   3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINK:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
                Trying 127.0.0.1...&lt;br /&gt;
                Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                Escape character is &#039;^]&#039;.&lt;br /&gt;
                220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
               Trying 127.0.0.1...&lt;br /&gt;
               Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
               Escape character is &#039;^]&#039;.&lt;br /&gt;
              +OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
                 Trying 127.0.0.1...&lt;br /&gt;
                 Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                 Escape character is &#039;^]&#039;.&lt;br /&gt;
              *  OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA &lt;br /&gt;
                 IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING &lt;br /&gt;
                 for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
               Trying 127.0.0.1...&lt;br /&gt;
               Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
               Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;############## ON NODE2 configuration ##############&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
 # Do not remove the following line, or various programs&lt;br /&gt;
 # that require network functionality will fail.&lt;br /&gt;
 127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
 #::1            localhost6.localdomain6 localhost6&lt;br /&gt;
 192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
 192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
 10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
 10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
 192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    &#039;&#039;&#039;:::::::::Installing DRBD:::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
 global { usage-count no; }&lt;br /&gt;
 common {&lt;br /&gt;
 syncer { rate 100M; }&lt;br /&gt;
 } &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
 resource main {&lt;br /&gt;
 protocol C;&lt;br /&gt;
 startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
 disk { on-io-error detach; }&lt;br /&gt;
 on node1.energoindia.com {&lt;br /&gt;
 device /dev/drbd0;&lt;br /&gt;
 disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
 meta-disk internal;&lt;br /&gt;
 address 10.0.0.1:7788;&lt;br /&gt;
 }&lt;br /&gt;
 on node2.energoindia.com {&lt;br /&gt;
 device /dev/drbd0;&lt;br /&gt;
 disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
 meta-disk internal;&lt;br /&gt;
 address 10.0.0.2:7788;&lt;br /&gt;
 }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
 version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
 GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
 0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
 ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
 [&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
 finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      &#039;&#039;&#039;::::::Installing heartbeat::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
  keepalive 2&lt;br /&gt;
  deadtime 30&lt;br /&gt;
  bcast eth0 &lt;br /&gt;
  node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
  logfile /var/log/ha-log&lt;br /&gt;
  debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
  node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0   IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
  auth 3&lt;br /&gt;
  3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                            == &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
 &lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   +OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
   Trying 127.0.0.1...&lt;br /&gt;
   Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
   Escape character is &#039;^]&#039;.&lt;br /&gt;
   * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT   QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
  Trying 127.0.0.1...&lt;br /&gt;
  Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
  Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
 Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
 /dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
 /dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
 tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
 /dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2012</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2012"/>
		<updated>2015-07-11T19:23:38Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
&lt;br /&gt;
resource main {&lt;br /&gt;
&lt;br /&gt;
protocol C;&lt;br /&gt;
&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
&lt;br /&gt;
/dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
&lt;br /&gt;
tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
&lt;br /&gt;
/dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
&lt;br /&gt;
keepalive 2&lt;br /&gt;
&lt;br /&gt;
deadtime 30&lt;br /&gt;
&lt;br /&gt;
bcast eth0 &lt;br /&gt;
&lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
&lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
&lt;br /&gt;
IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
&lt;br /&gt;
/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
auth 3&lt;br /&gt;
&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINK:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
                Trying 127.0.0.1...&lt;br /&gt;
                Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                Escape character is &#039;^]&#039;.&lt;br /&gt;
                220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
               Trying 127.0.0.1...&lt;br /&gt;
               Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
               Escape character is &#039;^]&#039;.&lt;br /&gt;
              +OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
                 Trying 127.0.0.1...&lt;br /&gt;
                 Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                 Escape character is &#039;^]&#039;.&lt;br /&gt;
              *  OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA &lt;br /&gt;
                 IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING &lt;br /&gt;
                 for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
               Trying 127.0.0.1...&lt;br /&gt;
               Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
               Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         == &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    &#039;&#039;&#039;:::::::::Installing DRBD:::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2011</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2011"/>
		<updated>2015-07-11T19:20:23Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
&lt;br /&gt;
resource main {&lt;br /&gt;
&lt;br /&gt;
protocol C;&lt;br /&gt;
&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
&lt;br /&gt;
/dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
&lt;br /&gt;
tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
&lt;br /&gt;
/dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
&lt;br /&gt;
keepalive 2&lt;br /&gt;
&lt;br /&gt;
deadtime 30&lt;br /&gt;
&lt;br /&gt;
bcast eth0 &lt;br /&gt;
&lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
&lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
&lt;br /&gt;
IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
&lt;br /&gt;
/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
auth 3&lt;br /&gt;
&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINK:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
                Trying 127.0.0.1...&lt;br /&gt;
                Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
                Escape character is &#039;^]&#039;.&lt;br /&gt;
                220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA &lt;br /&gt;
&lt;br /&gt;
IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING &lt;br /&gt;
&lt;br /&gt;
for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    &#039;&#039;&#039;:::::::::Installing DRBD:::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2010</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2010"/>
		<updated>2015-07-11T19:18:54Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
&lt;br /&gt;
resource main {&lt;br /&gt;
&lt;br /&gt;
protocol C;&lt;br /&gt;
&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
&lt;br /&gt;
/dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
&lt;br /&gt;
tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
&lt;br /&gt;
/dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
&lt;br /&gt;
keepalive 2&lt;br /&gt;
&lt;br /&gt;
deadtime 30&lt;br /&gt;
&lt;br /&gt;
bcast eth0 &lt;br /&gt;
&lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
&lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
&lt;br /&gt;
IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
&lt;br /&gt;
/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
auth 3&lt;br /&gt;
&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINK:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA &lt;br /&gt;
&lt;br /&gt;
IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING &lt;br /&gt;
&lt;br /&gt;
for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    &#039;&#039;&#039;:::::::::Installing DRBD:::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2009</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2009"/>
		<updated>2015-07-11T19:17:01Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
&lt;br /&gt;
resource main {&lt;br /&gt;
&lt;br /&gt;
protocol C;&lt;br /&gt;
&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
&lt;br /&gt;
/dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
&lt;br /&gt;
tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
&lt;br /&gt;
/dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
&lt;br /&gt;
keepalive 2&lt;br /&gt;
&lt;br /&gt;
deadtime 30&lt;br /&gt;
&lt;br /&gt;
bcast eth0 &lt;br /&gt;
&lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
&lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
&lt;br /&gt;
IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
&lt;br /&gt;
/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
auth 3&lt;br /&gt;
&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINK:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA &lt;br /&gt;
&lt;br /&gt;
IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING &lt;br /&gt;
&lt;br /&gt;
for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    &#039;&#039;&#039;:::::::::Installing DRBD:::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2008</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2008"/>
		<updated>2015-07-11T19:12:48Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
&lt;br /&gt;
resource main {&lt;br /&gt;
&lt;br /&gt;
protocol C;&lt;br /&gt;
&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
&lt;br /&gt;
/dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
&lt;br /&gt;
tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
&lt;br /&gt;
/dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
&lt;br /&gt;
keepalive 2&lt;br /&gt;
&lt;br /&gt;
deadtime 30&lt;br /&gt;
&lt;br /&gt;
bcast eth0 &lt;br /&gt;
&lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
&lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
&lt;br /&gt;
IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
&lt;br /&gt;
/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
auth 3&lt;br /&gt;
&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINK:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2007</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2007"/>
		<updated>2015-07-11T19:10:23Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
&lt;br /&gt;
resource main {&lt;br /&gt;
&lt;br /&gt;
protocol C;&lt;br /&gt;
&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
&lt;br /&gt;
/dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
&lt;br /&gt;
tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
&lt;br /&gt;
/dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
&lt;br /&gt;
keepalive 2&lt;br /&gt;
&lt;br /&gt;
deadtime 30&lt;br /&gt;
&lt;br /&gt;
bcast eth0 &lt;br /&gt;
&lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
&lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
&lt;br /&gt;
IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
&lt;br /&gt;
/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
auth 3&lt;br /&gt;
&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0          Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
              inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
             inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
             RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
             TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
             collisions:0 txqueuelen:1000 &lt;br /&gt;
             RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
             Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0         Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
               inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
               UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
               Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          X bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:::::::MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
::::::::COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINKS:::::::::::&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2006</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2006"/>
		<updated>2015-07-11T19:05:59Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
&lt;br /&gt;
resource main {&lt;br /&gt;
&lt;br /&gt;
protocol C;&lt;br /&gt;
&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00                         96G     41G     50G    46% /&lt;br /&gt;
&lt;br /&gt;
/dev/sda1               935M     27M    860M     4%   /boot&lt;br /&gt;
&lt;br /&gt;
tmpfs                   3.8G       0     3.8G     0%   /dev/shm&lt;br /&gt;
&lt;br /&gt;
/dev/drbd0               446G     346G     78G    82%   /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
&lt;br /&gt;
keepalive 2&lt;br /&gt;
&lt;br /&gt;
deadtime 30&lt;br /&gt;
&lt;br /&gt;
bcast eth0 &lt;br /&gt;
&lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
&lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
&lt;br /&gt;
IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
&lt;br /&gt;
/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
auth 3&lt;br /&gt;
&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
collisions:0 txqueuelen:1000 &lt;br /&gt;
RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
&lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
&lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
&lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
&lt;br /&gt;
          RX bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:::::::MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
::::::::COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINKS:::::::::::&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2005</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2005"/>
		<updated>2015-07-11T19:02:15Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
&lt;br /&gt;
resource main {&lt;br /&gt;
&lt;br /&gt;
protocol C;&lt;br /&gt;
&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00                       96G   41G   50G  46% /&lt;br /&gt;
&lt;br /&gt;
/dev/sda1             935M   27M  860M   4% /boot&lt;br /&gt;
&lt;br /&gt;
tmpfs                 3.8G     0  3.8G   0% /dev/shm&lt;br /&gt;
&lt;br /&gt;
/dev/drbd0            446G  346G   78G  82% /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         &#039;&#039;&#039;::::::::::::Installing HEARBEAT:::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
&lt;br /&gt;
keepalive 2&lt;br /&gt;
&lt;br /&gt;
deadtime 30&lt;br /&gt;
&lt;br /&gt;
bcast eth0 &lt;br /&gt;
&lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
&lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 &lt;br /&gt;
&lt;br /&gt;
IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::&lt;br /&gt;
&lt;br /&gt;
/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
auth 3&lt;br /&gt;
&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
&lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
&lt;br /&gt;
          TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
&lt;br /&gt;
          RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:0    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
&lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
&lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
&lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
&lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
&lt;br /&gt;
          RX bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;:::::::MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1::::::::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
::::::::COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINKS:::::::::::&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2004</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2004"/>
		<updated>2015-07-11T18:57:29Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
On Node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       96G   41G   50G  46% /&lt;br /&gt;
/dev/sda1             935M   27M  860M   4% /boot&lt;br /&gt;
tmpfs                 3.8G     0  3.8G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  346G   78G  82% /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         ::::::::::::Installing HEARBEAT:::::::::::&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:0    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          RX bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:::::::MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1::::::::::&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
::::::::COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINKS:::::::::::&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2003</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2003"/>
		<updated>2015-07-11T18:56:20Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
## Do not remove the following line, or various programs&lt;br /&gt;
## that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
##::1		localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
On Node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       96G   41G   50G  46% /&lt;br /&gt;
/dev/sda1             935M   27M  860M   4% /boot&lt;br /&gt;
tmpfs                 3.8G     0  3.8G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  346G   78G  82% /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         ::::::::::::Installing HEARBEAT:::::::::::&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:0    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          RX bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:::::::MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1::::::::::&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
::::::::COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINKS:::::::::::&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2002</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2002"/>
		<updated>2015-07-11T18:54:15Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
                       == &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note :&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        &#039;&#039;&#039;:::: Installing DRBD ::::&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
On Node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       96G   41G   50G  46% /&lt;br /&gt;
/dev/sda1             935M   27M  860M   4% /boot&lt;br /&gt;
tmpfs                 3.8G     0  3.8G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  346G   78G  82% /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         ::::::::::::Installing HEARBEAT:::::::::::&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:0    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          RX bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:::::::MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1::::::::::&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
::::::::COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINKS:::::::::::&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2001</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2001"/>
		<updated>2015-07-11T18:50:58Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;###NODE1: configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
Note : &lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        :::: Installing DRBD ::::&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
On Node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       96G   41G   50G  46% /&lt;br /&gt;
/dev/sda1             935M   27M  860M   4% /boot&lt;br /&gt;
tmpfs                 3.8G     0  3.8G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  346G   78G  82% /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         ::::::::::::Installing HEARBEAT:::::::::::&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:0    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          RX bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:::::::MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1::::::::::&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
::::::::COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINKS:::::::::::&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### ON NODE2 configuration ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;### Test the cluster ###&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2000</id>
		<title>Cluster of energoindia drbd and heartbeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Cluster_of_energoindia_drbd_and_heartbeat&amp;diff=2000"/>
		<updated>2015-07-11T18:48:27Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Created page with &amp;quot;category:Tetra Clients category:Energo Group  We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Clients]]&lt;br /&gt;
[[category:Energo Group]]&lt;br /&gt;
&lt;br /&gt;
We had challenge to create cluster with drbd and heartbeat of qmail because alreay there was running server of qmail. We have decided to create cluster by following below steps:&lt;br /&gt;
&lt;br /&gt;
STEP 1. create a server with same configuration as running server.( Os, harddisk, drbd size)&lt;br /&gt;
STEP 2. create DRBD and HEARTBEAT on this server.&lt;br /&gt;
STEP 3. Migrate the users, password, and groups from running server to new server.&lt;br /&gt;
STEP 4. make link of required directory and file of qmail, ldap, clamd, spamassassin, squid, fetchmail in /home partition and copied data from running server.&lt;br /&gt;
STEP 5. Live this new server as primary node of cluster.&lt;br /&gt;
STEP 6. Create DRBD and HEARTBEAT on old server as secondary node.&lt;br /&gt;
STEP 7. Make link of required directory and file as created in primary node.&lt;br /&gt;
STEP 8. Test the cluster. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;#################################NODE1: configuration #######################################&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OS- Red Hat Enterprise Linux Server release 5.3 (Tikanga)&lt;br /&gt;
ARCH - 64 bit&lt;br /&gt;
&lt;br /&gt;
Note : &lt;br /&gt;
1. Before start DRBD and Heartbeat implementation , make sure NTP synchronization between node1 and node2 , otherwise it will not work.&lt;br /&gt;
2. Make both node or machine keyless, so it will not promt password at the time of login from one node to other node.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1		mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1		localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com &lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
NOTE: The virtual ip is 192.168.1.150.&lt;br /&gt;
&lt;br /&gt;
                        :::: Installing DRBD ::::&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install drbd83-utils kmod-drbd83&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
and we can now start DRBD&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service drbd start   &lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
We will tell DRBD that server1 is the Primary server:&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# drbdsetup /dev/drbd0 primary –o &lt;br /&gt;
[root@node1 ~]# cat /proc/drbd&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:Connected ro:Primary/Secondary ds:UpToDate/unknown C r-----&lt;br /&gt;
ns:182767328 nr:116152 dw:182883616 dr:829873130 al:1019560 bm:344 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkfs.ext3 /dev/drbd0 &lt;br /&gt;
&lt;br /&gt;
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /home&lt;br /&gt;
&lt;br /&gt;
On Node1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mount –t ext3 /dev/drbd0 /home &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       96G   41G   50G  46% /&lt;br /&gt;
/dev/sda1             935M   27M  860M   4% /boot&lt;br /&gt;
tmpfs                 3.8G     0  3.8G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  346G   78G  82% /home&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                         ::::::::::::Installing HEARBEAT:::::::::::&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node1 servers:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next step is to create the resource file for heartbeat on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node1 servers: &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
&lt;br /&gt;
start heartbeat on node 1:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# ifconfig &lt;br /&gt;
eth0      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.149  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cc/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:171872956 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:229211317 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:80916792381 (75.3 GiB)  TX bytes:190588412808 (177.4 GiB)&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:0    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.10.150  Bcast:192.168.10.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:1    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.20.150  Bcast:192.168.20.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:2    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.1.150  Bcast:192.168.3.255  Mask:255.255.252.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth0:3    Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CC  &lt;br /&gt;
          inet addr:192.168.30.150  Bcast:192.168.30.255  Mask:255.255.255.0&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          Interrupt:169 Memory:92000000-92012100 &lt;br /&gt;
&lt;br /&gt;
eth1      Link encap:Ethernet  HWaddr E4:1F:13:C0:E9:CD  &lt;br /&gt;
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: fe80::e61f:13ff:fec0:e9cd/64 Scope:Link&lt;br /&gt;
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1&lt;br /&gt;
          RX packets:32136747 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:92544365 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000 &lt;br /&gt;
          RX bytes:3368179779 (3.1 GiB)  TX bytes:128171113009 (119.3 GiB)&lt;br /&gt;
          Interrupt:138 Memory:94000000-94012100 &lt;br /&gt;
&lt;br /&gt;
lo        Link encap:Local Loopback  &lt;br /&gt;
          inet addr:127.0.0.1  Mask:255.0.0.0&lt;br /&gt;
          inet6 addr: ::1/128 Scope:Host&lt;br /&gt;
          UP LOOPBACK RUNNING  MTU:16436  Metric:1&lt;br /&gt;
          RX packets:7571848 errors:0 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:7571848 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:0 &lt;br /&gt;
          RX bytes:5164760682 (4.8 GiB)  TX bytes:5164760682 (4.8 GiB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:::::::MIGRATION OF QMAIL USERS, SYSTEM USERS, NORMAL USERS FROM A RUNNING SERVER TO NODE1::::::::::&lt;br /&gt;
&lt;br /&gt;
Commands to type on old Linux system:&lt;br /&gt;
&lt;br /&gt;
1. First create a tar ball of old uses (old Linux system). Create a directory:&lt;br /&gt;
# mkdir /root/move/&lt;br /&gt;
&lt;br /&gt;
2. Setup UID filter limit:&lt;br /&gt;
# export UGIDLIMIT=500&lt;br /&gt;
&lt;br /&gt;
3. Now copy /etc/passwd accounts to /root/move/passwd.mig using awk to filter out system account (i.e. only copy user accounts)&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/passwd &amp;gt; /root/move/passwd.mig&lt;br /&gt;
&lt;br /&gt;
4. Copy /etc/group file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534)&#039; /etc/group &amp;gt; /root/move/group.mig&lt;br /&gt;
&lt;br /&gt;
5. Copy /etc/shadow file:&lt;br /&gt;
# awk -v LIMIT=$UGIDLIMIT -F: &#039;($3&amp;gt;=LIMIT) &amp;amp;&amp;amp; ($3!=65534) {print $1}&#039; /etc/passwd | tee - |egrep -f - /etc/shadow &amp;gt; /root/move/shadow.mig&lt;br /&gt;
&lt;br /&gt;
6. Copy /etc/gshadow (rarely used):&lt;br /&gt;
# cp /etc/gshadow /root/move/gshadow.mig&lt;br /&gt;
&lt;br /&gt;
7. Use scp or usb pen or tape to copy /root/move to a new Linux system.&lt;br /&gt;
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location&lt;br /&gt;
&lt;br /&gt;
Commands to type on new Linux system&lt;br /&gt;
&lt;br /&gt;
1. First, make a backup of current users and passwords:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir /root/newsusers.bak&lt;br /&gt;
[root@node1 ~]# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak&lt;br /&gt;
&lt;br /&gt;
2. Now restore passwd and other files in /etc/&lt;br /&gt;
[root@node1 ~]# cd /path/to/location&lt;br /&gt;
[root@node1 ~]# cat passwd.mig &amp;gt;&amp;gt; /etc/passwd&lt;br /&gt;
[root@node1 ~]# cat group.mig &amp;gt;&amp;gt; /etc/group&lt;br /&gt;
[root@node1 ~]# cat shadow.mig &amp;gt;&amp;gt; /etc/shadow&lt;br /&gt;
[root@node1 ~]# /bin/cp gshadow.mig /etc/gshadow&lt;br /&gt;
&lt;br /&gt;
Now reboot system; when the Linux comes back, your user accounts will work as they did before on old system:&lt;br /&gt;
[root@node1 ~]# reboot&lt;br /&gt;
&lt;br /&gt;
::::::::COPY ALL FILES OF QMAIL, LDAP ,SPAMASSASSIN , CLAMAV FROM A SERVER TO NODE1 USING LINKS:::::::::::&lt;br /&gt;
&lt;br /&gt;
create below directory, make link of this and copy the data from running server.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node1 ~]# ln -s /home/command /command ( copy data from running server )&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node1 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node1 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node1 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node1 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node1 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node1 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Install openldap:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
Install clamav:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install clamav clamd&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node1 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
install spamassassin:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install spamassassin&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node1 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
install squid:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# yum install squid&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node1 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
configuration of fetchmail:&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# crontab -lu tetra&lt;br /&gt;
*/5 * * * * /usr/bin/fetchmail -v -U -F &amp;gt;&amp;gt; /home/tetra/fetchmail.log&lt;br /&gt;
&lt;br /&gt;
copy the script of fetchmail...&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/usr/bin/fetchmail /usr/bin/&lt;br /&gt;
&lt;br /&gt;
copy the rc.local file........&lt;br /&gt;
[root@node1 ~]# rsync -aP 192.168.10.155:/etc/rc.local /etc/&lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node1 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node1 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node1 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
Now reboot the node1 to check all required files are copied properly and server is starting normally. Afterthen try below to check qmail, imap, ldap is working or not.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;2081.1436400429@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
copy the /home from running server to node1......&lt;br /&gt;
&lt;br /&gt;
[root@node1 ~]# rsync -alkvHP 192.168.10.155:/home/* /home/&lt;br /&gt;
&lt;br /&gt;
After proper sync live this node1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;############################ ON NODE2 configuration #######################################&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /etc/hosts&lt;br /&gt;
# Do not remove the following line, or various programs&lt;br /&gt;
# that require network functionality will fail.&lt;br /&gt;
127.0.0.1               mail.energoindia.com mail localhost.localdomain localhost&lt;br /&gt;
#::1            localhost6.localdomain6 localhost6&lt;br /&gt;
192.168.10.149  node1.energoindia.com node1  node.energoindia.com mail&lt;br /&gt;
192.168.1.150  node.energoindia.com node  mail.energoindia.com mail&lt;br /&gt;
10.0.0.1        node1.energoindia.com node1 node.energoindia.com&lt;br /&gt;
10.0.0.2        node2.energoindia.com node2 node.energoindia.com&lt;br /&gt;
192.168.10.155  node2.energoindia.com node2 node.energoindia.com mail&lt;br /&gt;
&lt;br /&gt;
                    :::::::::Installing DRBD:::::::&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# yum install drbd83-utils kmod-drbd83 &lt;br /&gt;
&lt;br /&gt;
Configuration should be same as in node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample  &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/global_common.conf&lt;br /&gt;
global { usage-count no; }&lt;br /&gt;
&lt;br /&gt;
common {&lt;br /&gt;
&lt;br /&gt;
syncer { rate 100M; }&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Create a new resource file that I called “main”,&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/drbd.d/main.res &lt;br /&gt;
resource main {&lt;br /&gt;
protocol C;&lt;br /&gt;
startup { wfc-timeout 0; degr-wfc-timeout 120; }&lt;br /&gt;
disk { on-io-error detach; }&lt;br /&gt;
on node1.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/VolGroup00/LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.1:7788;&lt;br /&gt;
}&lt;br /&gt;
on node2.energoindia.com {&lt;br /&gt;
device /dev/drbd0;&lt;br /&gt;
disk /dev/mapper/VolGroup00-LogVol02;&lt;br /&gt;
meta-disk internal;&lt;br /&gt;
address 10.0.0.2:7788;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now we have to create the metadata on node2:&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]#dd if=/dev/zero of= /dev/VolGroup00/LogVol02  bs=1M count=50 &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# drbdadm create-md main&lt;br /&gt;
&lt;br /&gt;
Now start DRBD on this (node2) server:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# service drbd start&lt;br /&gt;
&lt;br /&gt;
Starting DRBD resources: [ d(main) s(main) n(main) ]. &lt;br /&gt;
&lt;br /&gt;
After starting drbd on node2 server, it start to synchronization between both nodes. It will take a little while to be completed. Please wait until it is done and move to the next step. &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# cat /proc/drbd&lt;br /&gt;
&lt;br /&gt;
version: 8.3.16 (api:88/proto:86-97)&lt;br /&gt;
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R5, 2013-09-27 15:48:18&lt;br /&gt;
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----&lt;br /&gt;
ns:503808 nr:0 dw:0 dr:504472 al:0 bm:30 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:41437916&lt;br /&gt;
[&amp;gt;....................] sync&#039;ed: 1.3% (40464/40956)M&lt;br /&gt;
finish: 1:06:40 speed: 10,340 (10,280) K/sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                      ::::::Installing heartbeat::::::&lt;br /&gt;
&lt;br /&gt;
 [root@node2 ~]# yum install heartbeat &lt;br /&gt;
&lt;br /&gt;
Create the following file on node2 servers with the exact same content as on node1:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/ha.cf &lt;br /&gt;
keepalive 2&lt;br /&gt;
deadtime 30&lt;br /&gt;
bcast eth0 &lt;br /&gt;
node node1.energoindia.com node2.energoindia.com&lt;br /&gt;
logfile /var/log/ha-log&lt;br /&gt;
debugfile /var/log/ha-debug&lt;br /&gt;
&lt;br /&gt;
The next setp is to create the resource file for heartbeat on node2 servers with exact same content as on node1 again: &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/haresources &lt;br /&gt;
node1.energoindia.com IPaddr::192.168.10.150/24/eth0 IPaddr::192.168.20.150/24/eth0 IPaddr::192.168.1.150/22/eth0 IPaddr::192.168.30.150/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/home::ext3 ldap httpd spamassassin clamd authdaemond imap imaps squid qmailctl&lt;br /&gt;
&lt;br /&gt;
The last thing is to create the authentication file on node2 servers again with the same content as on node1: &lt;br /&gt;
[root@node2 ~]# vim /etc/ha.d/authkeys &lt;br /&gt;
auth 3&lt;br /&gt;
3 md5 asd1234f &lt;br /&gt;
&lt;br /&gt;
This password file should only be readable by the root user:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# chmod 600 /etc/ha.d/authkeys &lt;br /&gt;
[root@node2 ~]# service heartbeat start &lt;br /&gt;
&lt;br /&gt;
Again create same directory on node2 as in node1 and make links but before take backup of these directory:&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/command&lt;br /&gt;
[root@node2 ~]# ln -s /home/command /command&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/downloads&lt;br /&gt;
[root@node2 ~]# ln -s /home/downloads /downloads&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/packages&lt;br /&gt;
[root@node2 ~]# ln -s /home/packages /packages&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/service&lt;br /&gt;
[root@node2 ~]# ln -s /home/service /service&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/local&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/local /usr/local&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/qmail&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/qmail /var/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/usr/src&lt;br /&gt;
[root@node2 ~]# ln -s /home/usr/src  /usr/src&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]#  mkdir -p /home/var/log/qmail&lt;br /&gt;
[root@node2 ~]#  ln -s /home/var/log/qmail /var/log/qmail&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp /etc/tcp.smtp&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# touch /home/etc/tcp.smtp.cdb&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/qmaildoc&lt;br /&gt;
[root@node2 ~]# ln -s /home/qmaildoc /qmaildoc&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/openldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/openldap /etc/openldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/lib/ldap&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/lib/ldap /var/lib/ldap&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/html&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/html /var/www/html&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/www/sarg&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/www/sarg /var/www/sarg&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/var/spool/qscan&lt;br /&gt;
[root@node2 ~]# ln -s /home/var/spool/qscan /var/spool/qscan&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/mail/spamassassin/&lt;br /&gt;
[root@node2 ~]# touch /home/etc/mail/spamassassin/local.cf&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/mail/spamassassin/local.cf /etc/mail/spamassassin/local.cf&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# mkdir -p /home/etc/squid&lt;br /&gt;
[root@node2 ~]# ln -s /home/etc/squid /etc/squid &lt;br /&gt;
&lt;br /&gt;
Make link of below file.......&lt;br /&gt;
[root@node2 ~]# ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond&lt;br /&gt;
[root@node2 ~]# ln -s /var/qmail/bin/qmailctl /usr/bin/qmailctl&lt;br /&gt;
[root@node2 ~]# ln -s /usr/bin/qmailctl /etc/init.d/qmailctl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;############################### Test the cluster #################################&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Stop heartbeat on node1:&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
&lt;br /&gt;
2. Watch log of heartbeat on node2, cluster will shift on node2.&lt;br /&gt;
[root@node2 ~]# tailf /var/log/ha-log&lt;br /&gt;
&lt;br /&gt;
3. On node2, check the mails are working and /home is mounted.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 25&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
220 mail.energoindia.com ESMTP &lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 110&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
+OK &amp;lt;14050.1436639325@mail.energoindia.com&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 143&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2005 Double Precision, Inc.  See COPYING for distribution information.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# telnet localhost 389&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.localdomain (127.0.0.1).&lt;br /&gt;
Escape character is &#039;^]&#039;.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# df -h&lt;br /&gt;
Filesystem            Size  Used Avail Use% Mounted on&lt;br /&gt;
/dev/mapper/VolGroup00-LogVol00&lt;br /&gt;
                       95G   74G   17G  83% /&lt;br /&gt;
/dev/sda1             965M   24M  892M   3% /boot&lt;br /&gt;
tmpfs                 2.0G     0  2.0G   0% /dev/shm&lt;br /&gt;
/dev/drbd0            446G  359G   65G  85% /home&lt;br /&gt;
&lt;br /&gt;
4. now, to shift cluster again on node1. &lt;br /&gt;
   stop heartbeat on node2 and start heartbeat on node1.&lt;br /&gt;
&lt;br /&gt;
[root@node2 ~]# /etc/init.d/heartbeat stop&lt;br /&gt;
[root@node1 ~]# /etc/init.d/heartbeat start&lt;br /&gt;
&lt;br /&gt;
5. Now test the cluster is shifting to node2, if node1 goes down. It will shift.&lt;br /&gt;
6. Now start node1, the cluster will shift automatically on node1 from node2.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Architecture_of_sysnetglobal&amp;diff=1932</id>
		<title>Architecture of sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Architecture_of_sysnetglobal&amp;diff=1932"/>
		<updated>2015-04-16T15:55:30Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Architecture&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[image:sysnet-architechture.jpg]]&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1931</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1931"/>
		<updated>2015-04-16T15:54:01Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Blanked the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Architecture_of_sysnetglobal&amp;diff=1930</id>
		<title>Architecture of sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Architecture_of_sysnetglobal&amp;diff=1930"/>
		<updated>2015-04-16T15:51:56Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Created page with &amp;quot;category:sysnetglobal  &amp;#039;&amp;#039;&amp;#039;Architecture&amp;#039;&amp;#039;&amp;#039;  image:sysnet-architechture&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Architecture&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[image:sysnet-architechture]]&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1929</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1929"/>
		<updated>2015-04-16T15:49:45Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Architecture of sysnetglobal&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[image:sysnet-architechture.jpg]]&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=File:Sysnet-architechture.jpg&amp;diff=1928</id>
		<title>File:Sysnet-architechture.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=File:Sysnet-architechture.jpg&amp;diff=1928"/>
		<updated>2015-04-16T13:30:16Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1927</id>
		<title>Implementation of sysnetglobal mailserver</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1927"/>
		<updated>2015-04-16T12:34:02Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
  &lt;br /&gt;
== &#039;&#039;&#039;DNS Configuration in Sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#yum install bind bind-utils&lt;br /&gt;
&lt;br /&gt;
# service named restart&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra ~]# vim  /etc/named.conf &lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
// named.conf&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS&lt;br /&gt;
&lt;br /&gt;
// server as a caching only nameserver (as a localhost DNS resolver only).&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
// See /usr/share/doc/bind*/sample/ for example named configuration files.&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
options {&lt;br /&gt;
&lt;br /&gt;
	listen-on port 53 { 127.0.0.1; 10.240.40.228; };&lt;br /&gt;
&lt;br /&gt;
//	listen-on-v6 port 53 { ::1; };&lt;br /&gt;
&lt;br /&gt;
	directory 	&amp;quot;/var/named&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	dump-file 	&amp;quot;/var/named/data/cache_dump.db&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
        statistics-file &amp;quot;/var/named/data/named_stats.txt&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
        memstatistics-file &amp;quot;/var/named/data/named_mem_stats.txt&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//	allow-query     { localhost; };&lt;br /&gt;
&lt;br /&gt;
	allow-query	{ any; };&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
	recursion yes;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	dnssec-enable yes;&lt;br /&gt;
&lt;br /&gt;
	dnssec-validation yes;&lt;br /&gt;
&lt;br /&gt;
	dnssec-lookaside auto;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	/* Path to ISC DLV key */&lt;br /&gt;
&lt;br /&gt;
	bindkeys-file &amp;quot;/etc/named.iscdlv.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	managed-keys-directory &amp;quot;/var/named/dynamic&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
logging {&lt;br /&gt;
&lt;br /&gt;
        channel default_debug {&lt;br /&gt;
&lt;br /&gt;
                file &amp;quot;data/named.run&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
                severity dynamic;&lt;br /&gt;
&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;.&amp;quot; IN {&lt;br /&gt;
&lt;br /&gt;
	type hint;&lt;br /&gt;
&lt;br /&gt;
	file &amp;quot;named.ca&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysmet-zimbra&amp;quot; IN {&lt;br /&gt;
&lt;br /&gt;
	type master;&lt;br /&gt;
&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.com&amp;quot; IN {&lt;br /&gt;
&lt;br /&gt;
	type master;&lt;br /&gt;
&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.net&amp;quot; IN {&lt;br /&gt;
&lt;br /&gt;
	type master;&lt;br /&gt;
&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
//include &amp;quot;/etc/named.rfc1912.zones&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//include &amp;quot;/etc/named.root.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Forward Zone&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
#cd /var/named &lt;br /&gt;
&lt;br /&gt;
# cp -p named.localhost  sysmet-zimbra_fwd&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra named]# cat sysmet-zimbra_fwd &lt;br /&gt;
&lt;br /&gt;
$TTL 6400&lt;br /&gt;
@       IN SOA  sysmet-zimbra. root.sysmet-zimbra. (&lt;br /&gt;
                                        20150405        ; serial&lt;br /&gt;
                                        1D      ; refresh&lt;br /&gt;
                                        1H      ; retry&lt;br /&gt;
                                        1W      ; expire&lt;br /&gt;
                                        3H )    ; minimum&lt;br /&gt;
                        IN      NS              sysmet-zimbra.c.zimbra-sysnet.internal.&lt;br /&gt;
                        IN      A               10.240.40.228&lt;br /&gt;
                        MX      5               mail.sysnetglobal.com.&lt;br /&gt;
                        MX      10              mail.sysnetglobal.net.&lt;br /&gt;
 sysmet-zimbra           IN      A       10.240.40.228&lt;br /&gt;
 mail.sysnetglobal.com.   IN      A       10.240.40.228&lt;br /&gt;
 mail.sysnetglobal.net.   IN      A       10.240.40.228&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
== &#039;&#039;&#039;ZIMBRA   configuration in sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
     &lt;br /&gt;
Below is the proper document for installation of zimbra on sysnetglobal:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1.&#039;&#039;&#039; check the postfix and sendmail running on the server, if it is running then please stop these services. &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/postfix stop &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/sendmail stop &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2.&#039;&#039;&#039; [root@sysmet-zimbra ~]# yum install perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat sqlite nc -y &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3.&#039;&#039;&#039; [root@sysmet-zimbra ~]# tar -zxvf zcs-8.6.0_GA_1153.RHEL6_64.20141215151155.tgz &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4.&#039;&#039;&#039; [root@sysmet-zimbra ~]# cd zcs-8.6.0_GA_1153.RHEL6_64.20141215151155 &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;5.&#039;&#039;&#039;[root@sysmet-zimbra zcs-8.6.0_GA_1153.RHEL6_64.20141215151155]# ./install.sh --platform-override &lt;br /&gt;
&lt;br /&gt;
Operations logged to /tmp/install.log.19420 &lt;br /&gt;
Checking for existing installation... &lt;br /&gt;
    zimbra-ldap...NOT FOUND &lt;br /&gt;
    zimbra-logger...NOT FOUND &lt;br /&gt;
    zimbra-mta...NOT FOUND &lt;br /&gt;
    zimbra-dnscache...NOT FOUND &lt;br /&gt;
    zimbra-snmp...NOT FOUND &lt;br /&gt;
    zimbra-store...NOT FOUND &lt;br /&gt;
    zimbra-apache...NOT FOUND &lt;br /&gt;
    zimbra-spell...NOT FOUND &lt;br /&gt;
    zimbra-convertd...NOT FOUND &lt;br /&gt;
    zimbra-memcached...NOT FOUND &lt;br /&gt;
    zimbra-proxy...NOT FOUND &lt;br /&gt;
    zimbra-archiving...NOT FOUND &lt;br /&gt;
    zimbra-core...NOT FOUND &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE. &lt;br /&gt;
ZIMBRA, INC. (&amp;quot;ZIMBRA&amp;quot;) WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU &lt;br /&gt;
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING &lt;br /&gt;
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY &lt;br /&gt;
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS &lt;br /&gt;
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT. &lt;br /&gt;
&lt;br /&gt;
License Terms for the Zimbra Collaboration Suite: &lt;br /&gt;
  http://www.zimbra.com/license/zimbra-public-eula-2-5.html &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Do you agree with the terms of the software license agreement? [N] Y &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Checking for prerequisites... &lt;br /&gt;
     FOUND: NPTL &lt;br /&gt;
     FOUND: nc-1.84-22 &lt;br /&gt;
     FOUND: sudo-1.8.6p3-15 &lt;br /&gt;
     FOUND: libidn-1.18-2 &lt;br /&gt;
     FOUND: gmp-4.3.1-7 &lt;br /&gt;
     FOUND: libaio-0.3.107-10 &lt;br /&gt;
     FOUND: libstdc++-4.4.7-11 &lt;br /&gt;
     FOUND: unzip-6.0-2 &lt;br /&gt;
&lt;br /&gt;
Checking for suggested prerequisites... &lt;br /&gt;
     FOUND: perl-5.10.1 &lt;br /&gt;
     FOUND: sysstat &lt;br /&gt;
     FOUND: sqlite &lt;br /&gt;
Prerequisite check complete. &lt;br /&gt;
&lt;br /&gt;
Checking for installable packages &lt;br /&gt;
&lt;br /&gt;
Found zimbra-core &lt;br /&gt;
Found zimbra-ldap &lt;br /&gt;
Found zimbra-logger &lt;br /&gt;
Found zimbra-mta &lt;br /&gt;
Found zimbra-dnscache &lt;br /&gt;
Found zimbra-snmp &lt;br /&gt;
Found zimbra-store &lt;br /&gt;
Found zimbra-apache &lt;br /&gt;
Found zimbra-spell &lt;br /&gt;
Found zimbra-memcached &lt;br /&gt;
Found zimbra-proxy &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Select the packages to install &lt;br /&gt;
&lt;br /&gt;
Install zimbra-ldap [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-logger [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-mta [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-dnscache [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-snmp [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-store [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-apache [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-spell [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-memcached [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-proxy [Y] N &lt;br /&gt;
Checking required space for zimbra-core &lt;br /&gt;
Checking space for zimbra-store &lt;br /&gt;
Checking required packages for zimbra-store &lt;br /&gt;
zimbra-store package check complete. &lt;br /&gt;
&lt;br /&gt;
Installing: &lt;br /&gt;
    zimbra-core &lt;br /&gt;
    zimbra-ldap &lt;br /&gt;
    zimbra-logger &lt;br /&gt;
    zimbra-mta &lt;br /&gt;
    zimbra-snmp &lt;br /&gt;
    zimbra-store &lt;br /&gt;
    zimbra-apache &lt;br /&gt;
    zimbra-spell &lt;br /&gt;
&lt;br /&gt;
The system will be modified.  Continue? [N] &lt;br /&gt;
&lt;br /&gt;
Removing /opt/zimbra &lt;br /&gt;
&lt;br /&gt;
Removing zimbra crontab entry...done. &lt;br /&gt;
&lt;br /&gt;
Cleaning up zimbra init scripts...done. &lt;br /&gt;
&lt;br /&gt;
Cleaning up /etc/ld.so.conf...done. &lt;br /&gt;
&lt;br /&gt;
Cleaning up /etc/prelink.conf...done. &lt;br /&gt;
&lt;br /&gt;
Cleaning up /etc/security/limits.conf...done. &lt;br /&gt;
&lt;br /&gt;
Finished removing Zimbra Collaboration Server. &lt;br /&gt;
&lt;br /&gt;
Installing packages &lt;br /&gt;
&lt;br /&gt;
    zimbra-core......zimbra-core-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-ldap......zimbra-ldap-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-logger......zimbra-logger-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-mta......zimbra-mta-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
zimbra-snmp......zimbra-snmp-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-store......zimbra-store-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-apache......zimbra-apache-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-spell......zimbra-spell-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Installing LDAP configuration database...done. &lt;br /&gt;
Setting defaults... &lt;br /&gt;
No results returned for A lookup of sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
	10.240.40.228 &lt;br /&gt;
No results returned for AAAA lookup of sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
	10.240.40.228 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DNS ERROR resolving sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
It is suggested that the hostname be resolvable via DNS &lt;br /&gt;
Change hostname [Yes] &lt;br /&gt;
Please enter the logical hostname for this host [sysmet-zimbra.c.zimbra-sysnet.internal] mail.sysnetglobal.com &lt;br /&gt;
No results returned for A lookup of mail.sysnetglobal.com &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
        10.240.40.228 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DNS ERROR resolving MX for sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
It is suggested that the domain name have an MX record configured in DNS &lt;br /&gt;
Change domain name? [Yes] &lt;br /&gt;
Create domain: [sysmet-zimbra.c.zimbra-sysnet.internal] sysnetglobal.com &lt;br /&gt;
	MX: mail.sysnetglobal.com (10.240.40.228) &lt;br /&gt;
	MX: mail.sysnetglobal.net (10.240.40.228) &lt;br /&gt;
&lt;br /&gt;
	Interface: 10.240.40.228 &lt;br /&gt;
	Interface: 127.0.0.1 &lt;br /&gt;
	Interface: ::1 &lt;br /&gt;
done. &lt;br /&gt;
Checking for port conflicts &lt;br /&gt;
&lt;br /&gt;
Main menu &lt;br /&gt;
1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
        +Create Admin User:                    yes                           &lt;br /&gt;
        +Admin user to create:                 admin@sysnetglobal.com           &lt;br /&gt;
******* +Admin Password                        UNSET                         &lt;br /&gt;
        +Anti-virus quarantine user:           virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
        +Enable automated spam training:       yes                           &lt;br /&gt;
        +Spam training user:                   spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
        +Non-spam(Ham) training user:          ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
        +SMTP host:                            sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
        +Web server HTTP port:                 80                            &lt;br /&gt;
        +Web server HTTPS port:                443                           &lt;br /&gt;
        +Web server mode:                      https                         &lt;br /&gt;
        +IMAP server port:                     143                           &lt;br /&gt;
        +IMAP server SSL port:                 993                           &lt;br /&gt;
        +POP server port:                      110                           &lt;br /&gt;
        +POP server SSL port:                  995                           &lt;br /&gt;
        +Use spell check server:               yes                           &lt;br /&gt;
        +Spell server URL:                     http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
        +Configure for use with mail proxy:    FALSE                         &lt;br /&gt;
        +Configure for use with web proxy:     FALSE                         &lt;br /&gt;
        +Enable version update checks:         TRUE                          &lt;br /&gt;
        +Enable version update notifications:  TRUE                          &lt;br /&gt;
        +Version update notification email:    admin@sysnetglobal.com           &lt;br /&gt;
        +Version update source email:          admin@sysnetglobal.com           &lt;br /&gt;
        +Install mailstore (service webapp):   yes                           &lt;br /&gt;
        +Install UI (zimbra,zimbraAdmin webapps): yes            &lt;br /&gt;
  7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
Address unconfigured (**) items  (? - help) 6 &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
** 4) Admin Password                           UNSET                         &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 4 &lt;br /&gt;
Password for admin@sysnetglobal.com (min 6 characters): [abrQ3Kmjp] sysnet123tetra &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 23 &lt;br /&gt;
Version update destination address: [admin@sysnetglobal.com] 24 &lt;br /&gt;
Must enter a valid email address. &lt;br /&gt;
Version update destination address: [admin@sysmet-zimbra] admin@sysnetglobal.com &lt;br /&gt;
&lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com        &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] r &lt;br /&gt;
Main menu &lt;br /&gt;
&lt;br /&gt;
   1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
   7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
*** CONFIGURATION COMPLETE - press &#039;a&#039; to apply &lt;br /&gt;
&lt;br /&gt;
Select from menu, or press &#039;a&#039; to apply config (? - help) a &lt;br /&gt;
&lt;br /&gt;
Save configuration data to a file? [Yes] &lt;br /&gt;
&lt;br /&gt;
Save config in file: [/opt/zimbra/config.30782] &lt;br /&gt;
&lt;br /&gt;
Saving config in /opt/zimbra/config.30782...done. &lt;br /&gt;
&lt;br /&gt;
The system will be modified - continue? [No] Yes &lt;br /&gt;
&lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Setting local config values... &lt;br /&gt;
&lt;br /&gt;
...done. &lt;br /&gt;
&lt;br /&gt;
Initializing core config...Setting up CA...done. &lt;br /&gt;
&lt;br /&gt;
Deploying CA to /opt/zimbra/conf/ca ...done. &lt;br /&gt;
&lt;br /&gt;
Creating SSL zimbra-store certificate...done. &lt;br /&gt;
&lt;br /&gt;
Creating new zimbra-ldap SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Creating new zimbra-mta SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Installing mailboxd SSL certificates...done. &lt;br /&gt;
&lt;br /&gt;
Installing MTA SSL certificates...done. &lt;br /&gt;
&lt;br /&gt;
Installing LDAP SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Initializing ldap...done. &lt;br /&gt;
&lt;br /&gt;
Setting replication password...done. &lt;br /&gt;
&lt;br /&gt;
Setting Postfix password...done. &lt;br /&gt;
&lt;br /&gt;
Setting amavis password...done. &lt;br /&gt;
&lt;br /&gt;
Setting nginx password...done. &lt;br /&gt;
&lt;br /&gt;
Setting BES searcher  password...done. &lt;br /&gt;
&lt;br /&gt;
Creating server entry for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Setting Zimbra IP Mode...done. &lt;br /&gt;
&lt;br /&gt;
Saving CA in ldap ...done. &lt;br /&gt;
&lt;br /&gt;
Saving SSL Certificate in ldap ...done. &lt;br /&gt;
&lt;br /&gt;
Setting spell check URL...done. &lt;br /&gt;
&lt;br /&gt;
Setting service ports on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraFeatureTasksEnabled=TRUE...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraFeatureBriefcasesEnabled=TRUE...done. &lt;br /&gt;
&lt;br /&gt;
Setting TimeZone Preference...done. &lt;br /&gt;
&lt;br /&gt;
Initializing mta config...done. &lt;br /&gt;
&lt;br /&gt;
Setting services on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Adding sysmet-zimbra.c.zimbra-sysnet.internal to zimbraMailHostPool in default COS...done. &lt;br /&gt;
&lt;br /&gt;
Creating domain sysmet-zimbra...done. &lt;br /&gt;
&lt;br /&gt;
Setting default domain name...done. &lt;br /&gt;
&lt;br /&gt;
Creating domain sysnetglobal.com...already exists. &lt;br /&gt;
&lt;br /&gt;
Creating admin account admin@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating root alias...done. &lt;br /&gt;
&lt;br /&gt;
Creating postmaster alias...done. &lt;br /&gt;
&lt;br /&gt;
Creating user spam.98wsrsws@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating user ham.vybghdap@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating user virus-quarantine.fqxwyynob@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Setting spam training and Anti-virus quarantine accounts...done. &lt;br /&gt;
&lt;br /&gt;
Initializing store sql database...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraSmtpHostname for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Configuring SNMP...done. &lt;br /&gt;
&lt;br /&gt;
Setting up syslog.conf...done. &lt;br /&gt;
&lt;br /&gt;
Starting servers...done. &lt;br /&gt;
&lt;br /&gt;
Installing common zimlets... &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_srchhighlighter...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_proxy_config...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_mailarchive...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_phone...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_ymemoticons...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_cert_manager...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_clientuploader...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_tooltip...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_bulkprovision...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_viewmail...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_adminversioncheck...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_email...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_webex...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_date...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_attachmail...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_url...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_attachcontacts...done. &lt;br /&gt;
&lt;br /&gt;
Finished installing common zimlets. &lt;br /&gt;
&lt;br /&gt;
Restarting mailboxd...done. &lt;br /&gt;
Creating galsync account for default domain...done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You have the option of notifying Zimbra of your installation. &lt;br /&gt;
&lt;br /&gt;
This helps us to track the uptake of the Zimbra Collaboration Server. &lt;br /&gt;
&lt;br /&gt;
The only information that will be transmitted is: &lt;br /&gt;
&lt;br /&gt;
	The VERSION of zcs installed (8.6.0_GA_1153_RHEL6_64) &lt;br /&gt;
&lt;br /&gt;
	The ADMIN EMAIL ADDRESS created (admin@sysnetglobal.com) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notify Zimbra of your installation? [Yes] no &lt;br /&gt;
&lt;br /&gt;
Notification skipped &lt;br /&gt;
&lt;br /&gt;
Setting up zimbra crontab...done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Moving /tmp/zmsetup04052015-035300.log to /opt/zimbra/log &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Configuration complete - press return to exit&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1926</id>
		<title>Implementation of sysnetglobal mailserver</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1926"/>
		<updated>2015-04-16T12:29:41Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
  &lt;br /&gt;
== &#039;&#039;&#039;DNS Configuration in Sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#yum install bind bind-utils&lt;br /&gt;
&lt;br /&gt;
# service named restart&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra ~]# vim  /etc/named.conf &lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
// named.conf&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS&lt;br /&gt;
&lt;br /&gt;
// server as a caching only nameserver (as a localhost DNS resolver only).&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
// See /usr/share/doc/bind*/sample/ for example named configuration files.&lt;br /&gt;
&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
options {&lt;br /&gt;
&lt;br /&gt;
	listen-on port 53 { 127.0.0.1; 10.240.40.228; };&lt;br /&gt;
&lt;br /&gt;
//	listen-on-v6 port 53 { ::1; };&lt;br /&gt;
&lt;br /&gt;
	directory 	&amp;quot;/var/named&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	dump-file 	&amp;quot;/var/named/data/cache_dump.db&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
        statistics-file &amp;quot;/var/named/data/named_stats.txt&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
        memstatistics-file &amp;quot;/var/named/data/named_mem_stats.txt&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
//	allow-query     { localhost; };&lt;br /&gt;
&lt;br /&gt;
	allow-query	{ any; };&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
	recursion yes;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	dnssec-enable yes;&lt;br /&gt;
&lt;br /&gt;
	dnssec-validation yes;&lt;br /&gt;
&lt;br /&gt;
	dnssec-lookaside auto;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	/* Path to ISC DLV key */&lt;br /&gt;
&lt;br /&gt;
	bindkeys-file &amp;quot;/etc/named.iscdlv.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	managed-keys-directory &amp;quot;/var/named/dynamic&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
logging {&lt;br /&gt;
&lt;br /&gt;
        channel default_debug {&lt;br /&gt;
&lt;br /&gt;
                file &amp;quot;data/named.run&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
                severity dynamic;&lt;br /&gt;
&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;.&amp;quot; IN {&lt;br /&gt;
&lt;br /&gt;
	type hint;&lt;br /&gt;
&lt;br /&gt;
	file &amp;quot;named.ca&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysmet-zimbra&amp;quot; IN {&lt;br /&gt;
&lt;br /&gt;
	type master;&lt;br /&gt;
&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.com&amp;quot; IN {&lt;br /&gt;
&lt;br /&gt;
	type master;&lt;br /&gt;
&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.net&amp;quot; IN {&lt;br /&gt;
&lt;br /&gt;
	type master;&lt;br /&gt;
&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
//include &amp;quot;/etc/named.rfc1912.zones&amp;quot;&lt;br /&gt;
&lt;br /&gt;
//include &amp;quot;/etc/named.root.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Forward Zone&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
#cd /var/named &lt;br /&gt;
&lt;br /&gt;
# cp -p named.localhost  sysmet-zimbra_fwd&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra named]# cat sysmet-zimbra_fwd &lt;br /&gt;
&lt;br /&gt;
$TTL 6400&lt;br /&gt;
@       IN SOA  sysmet-zimbra. root.sysmet-zimbra. (&lt;br /&gt;
                                        20150405        ; serial&lt;br /&gt;
                                        1D      ; refresh&lt;br /&gt;
                                        1H      ; retry&lt;br /&gt;
                                        1W      ; expire&lt;br /&gt;
                                        3H )    ; minimum&lt;br /&gt;
                        IN      NS              sysmet-zimbra.c.zimbra-sysnet.internal.&lt;br /&gt;
                        IN      A               10.240.40.228&lt;br /&gt;
                        MX      5               mail.sysnetglobal.com.&lt;br /&gt;
                        MX      10              mail.sysnetglobal.net.&lt;br /&gt;
 sysmet-zimbra           IN      A       10.240.40.228&lt;br /&gt;
 mail.sysnetglobal.com.   IN      A       10.240.40.228&lt;br /&gt;
 mail.sysnetglobal.net.   IN      A       10.240.40.228&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
== &#039;&#039;&#039;ZIMBRA   configuration in sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
     &lt;br /&gt;
Below is the proper document for installation of zimbra on sysnetglobal:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1.&#039;&#039;&#039; check the postfix and sendmail running on the server, if it is running then please stop these services. &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/postfix stop &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/sendmail stop &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2.&#039;&#039;&#039; [root@sysmet-zimbra ~]# yum install perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat sqlite nc -y &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3.&#039;&#039;&#039; [root@sysmet-zimbra ~]# tar -zxvf zcs-8.6.0_GA_1153.RHEL6_64.20141215151155.tgz &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4.&#039;&#039;&#039; [root@sysmet-zimbra ~]# cd zcs-8.6.0_GA_1153.RHEL6_64.20141215151155 &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;5.&#039;&#039;&#039;[root@sysmet-zimbra zcs-8.6.0_GA_1153.RHEL6_64.20141215151155]# ./install.sh --platform-override &lt;br /&gt;
&lt;br /&gt;
Operations logged to /tmp/install.log.19420 &lt;br /&gt;
Checking for existing installation... &lt;br /&gt;
    zimbra-ldap...NOT FOUND &lt;br /&gt;
    zimbra-logger...NOT FOUND &lt;br /&gt;
    zimbra-mta...NOT FOUND &lt;br /&gt;
    zimbra-dnscache...NOT FOUND &lt;br /&gt;
    zimbra-snmp...NOT FOUND &lt;br /&gt;
    zimbra-store...NOT FOUND &lt;br /&gt;
    zimbra-apache...NOT FOUND &lt;br /&gt;
    zimbra-spell...NOT FOUND &lt;br /&gt;
    zimbra-convertd...NOT FOUND &lt;br /&gt;
    zimbra-memcached...NOT FOUND &lt;br /&gt;
    zimbra-proxy...NOT FOUND &lt;br /&gt;
    zimbra-archiving...NOT FOUND &lt;br /&gt;
    zimbra-core...NOT FOUND &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE. &lt;br /&gt;
ZIMBRA, INC. (&amp;quot;ZIMBRA&amp;quot;) WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU &lt;br /&gt;
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING &lt;br /&gt;
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY &lt;br /&gt;
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS &lt;br /&gt;
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT. &lt;br /&gt;
&lt;br /&gt;
License Terms for the Zimbra Collaboration Suite: &lt;br /&gt;
  http://www.zimbra.com/license/zimbra-public-eula-2-5.html &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Do you agree with the terms of the software license agreement? [N] Y &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Checking for prerequisites... &lt;br /&gt;
     FOUND: NPTL &lt;br /&gt;
     FOUND: nc-1.84-22 &lt;br /&gt;
     FOUND: sudo-1.8.6p3-15 &lt;br /&gt;
     FOUND: libidn-1.18-2 &lt;br /&gt;
     FOUND: gmp-4.3.1-7 &lt;br /&gt;
     FOUND: libaio-0.3.107-10 &lt;br /&gt;
     FOUND: libstdc++-4.4.7-11 &lt;br /&gt;
     FOUND: unzip-6.0-2 &lt;br /&gt;
&lt;br /&gt;
Checking for suggested prerequisites... &lt;br /&gt;
     FOUND: perl-5.10.1 &lt;br /&gt;
     FOUND: sysstat &lt;br /&gt;
     FOUND: sqlite &lt;br /&gt;
Prerequisite check complete. &lt;br /&gt;
&lt;br /&gt;
Checking for installable packages &lt;br /&gt;
&lt;br /&gt;
Found zimbra-core &lt;br /&gt;
Found zimbra-ldap &lt;br /&gt;
Found zimbra-logger &lt;br /&gt;
Found zimbra-mta &lt;br /&gt;
Found zimbra-dnscache &lt;br /&gt;
Found zimbra-snmp &lt;br /&gt;
Found zimbra-store &lt;br /&gt;
Found zimbra-apache &lt;br /&gt;
Found zimbra-spell &lt;br /&gt;
Found zimbra-memcached &lt;br /&gt;
Found zimbra-proxy &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Select the packages to install &lt;br /&gt;
&lt;br /&gt;
Install zimbra-ldap [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-logger [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-mta [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-dnscache [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-snmp [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-store [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-apache [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-spell [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-memcached [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-proxy [Y] N &lt;br /&gt;
Checking required space for zimbra-core &lt;br /&gt;
Checking space for zimbra-store &lt;br /&gt;
Checking required packages for zimbra-store &lt;br /&gt;
zimbra-store package check complete. &lt;br /&gt;
&lt;br /&gt;
Installing: &lt;br /&gt;
    zimbra-core &lt;br /&gt;
    zimbra-ldap &lt;br /&gt;
    zimbra-logger &lt;br /&gt;
    zimbra-mta &lt;br /&gt;
    zimbra-snmp &lt;br /&gt;
    zimbra-store &lt;br /&gt;
    zimbra-apache &lt;br /&gt;
    zimbra-spell &lt;br /&gt;
&lt;br /&gt;
The system will be modified.  Continue? [N] &lt;br /&gt;
Removing /opt/zimbra &lt;br /&gt;
Removing zimbra crontab entry...done. &lt;br /&gt;
Cleaning up zimbra init scripts...done. &lt;br /&gt;
Cleaning up /etc/ld.so.conf...done. &lt;br /&gt;
Cleaning up /etc/prelink.conf...done. &lt;br /&gt;
Cleaning up /etc/security/limits.conf...done. &lt;br /&gt;
&lt;br /&gt;
Finished removing Zimbra Collaboration Server. &lt;br /&gt;
&lt;br /&gt;
Installing packages &lt;br /&gt;
&lt;br /&gt;
    zimbra-core......zimbra-core-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-ldap......zimbra-ldap-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-logger......zimbra-logger-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-mta......zimbra-mta-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
zimbra-snmp......zimbra-snmp-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-store......zimbra-store-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-apache......zimbra-apache-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-spell......zimbra-spell-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Installing LDAP configuration database...done. &lt;br /&gt;
Setting defaults... &lt;br /&gt;
No results returned for A lookup of sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
	10.240.40.228 &lt;br /&gt;
No results returned for AAAA lookup of sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
	10.240.40.228 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DNS ERROR resolving sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
It is suggested that the hostname be resolvable via DNS &lt;br /&gt;
Change hostname [Yes] &lt;br /&gt;
Please enter the logical hostname for this host [sysmet-zimbra.c.zimbra-sysnet.internal] mail.sysnetglobal.com &lt;br /&gt;
No results returned for A lookup of mail.sysnetglobal.com &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
        10.240.40.228 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DNS ERROR resolving MX for sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
It is suggested that the domain name have an MX record configured in DNS &lt;br /&gt;
Change domain name? [Yes] &lt;br /&gt;
Create domain: [sysmet-zimbra.c.zimbra-sysnet.internal] sysnetglobal.com &lt;br /&gt;
	MX: mail.sysnetglobal.com (10.240.40.228) &lt;br /&gt;
	MX: mail.sysnetglobal.net (10.240.40.228) &lt;br /&gt;
&lt;br /&gt;
	Interface: 10.240.40.228 &lt;br /&gt;
	Interface: 127.0.0.1 &lt;br /&gt;
	Interface: ::1 &lt;br /&gt;
done. &lt;br /&gt;
Checking for port conflicts &lt;br /&gt;
&lt;br /&gt;
Main menu &lt;br /&gt;
1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
        +Create Admin User:                    yes                           &lt;br /&gt;
        +Admin user to create:                 admin@sysnetglobal.com           &lt;br /&gt;
******* +Admin Password                        UNSET                         &lt;br /&gt;
        +Anti-virus quarantine user:           virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
        +Enable automated spam training:       yes                           &lt;br /&gt;
        +Spam training user:                   spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
        +Non-spam(Ham) training user:          ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
        +SMTP host:                            sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
        +Web server HTTP port:                 80                            &lt;br /&gt;
        +Web server HTTPS port:                443                           &lt;br /&gt;
        +Web server mode:                      https                         &lt;br /&gt;
        +IMAP server port:                     143                           &lt;br /&gt;
        +IMAP server SSL port:                 993                           &lt;br /&gt;
        +POP server port:                      110                           &lt;br /&gt;
        +POP server SSL port:                  995                           &lt;br /&gt;
        +Use spell check server:               yes                           &lt;br /&gt;
        +Spell server URL:                     http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
        +Configure for use with mail proxy:    FALSE                         &lt;br /&gt;
        +Configure for use with web proxy:     FALSE                         &lt;br /&gt;
        +Enable version update checks:         TRUE                          &lt;br /&gt;
        +Enable version update notifications:  TRUE                          &lt;br /&gt;
        +Version update notification email:    admin@sysnetglobal.com           &lt;br /&gt;
        +Version update source email:          admin@sysnetglobal.com           &lt;br /&gt;
        +Install mailstore (service webapp):   yes                           &lt;br /&gt;
        +Install UI (zimbra,zimbraAdmin webapps): yes            &lt;br /&gt;
  7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
Address unconfigured (**) items  (? - help) 6 &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
** 4) Admin Password                           UNSET                         &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 4 &lt;br /&gt;
Password for admin@sysnetglobal.com (min 6 characters): [abrQ3Kmjp] sysnet123tetra &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 23 &lt;br /&gt;
Version update destination address: [admin@sysnetglobal.com] 24 &lt;br /&gt;
Must enter a valid email address. &lt;br /&gt;
Version update destination address: [admin@sysmet-zimbra] admin@sysnetglobal.com &lt;br /&gt;
&lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com        &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] r &lt;br /&gt;
Main menu &lt;br /&gt;
&lt;br /&gt;
   1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
   7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
*** CONFIGURATION COMPLETE - press &#039;a&#039; to apply &lt;br /&gt;
&lt;br /&gt;
Select from menu, or press &#039;a&#039; to apply config (? - help) a &lt;br /&gt;
&lt;br /&gt;
Save configuration data to a file? [Yes] &lt;br /&gt;
&lt;br /&gt;
Save config in file: [/opt/zimbra/config.30782] &lt;br /&gt;
&lt;br /&gt;
Saving config in /opt/zimbra/config.30782...done. &lt;br /&gt;
&lt;br /&gt;
The system will be modified - continue? [No] Yes &lt;br /&gt;
&lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Setting local config values... &lt;br /&gt;
&lt;br /&gt;
...done. &lt;br /&gt;
&lt;br /&gt;
Initializing core config...Setting up CA...done. &lt;br /&gt;
&lt;br /&gt;
Deploying CA to /opt/zimbra/conf/ca ...done. &lt;br /&gt;
&lt;br /&gt;
Creating SSL zimbra-store certificate...done. &lt;br /&gt;
&lt;br /&gt;
Creating new zimbra-ldap SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Creating new zimbra-mta SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Installing mailboxd SSL certificates...done. &lt;br /&gt;
&lt;br /&gt;
Installing MTA SSL certificates...done. &lt;br /&gt;
&lt;br /&gt;
Installing LDAP SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Initializing ldap...done. &lt;br /&gt;
&lt;br /&gt;
Setting replication password...done. &lt;br /&gt;
&lt;br /&gt;
Setting Postfix password...done. &lt;br /&gt;
&lt;br /&gt;
Setting amavis password...done. &lt;br /&gt;
&lt;br /&gt;
Setting nginx password...done. &lt;br /&gt;
&lt;br /&gt;
Setting BES searcher  password...done. &lt;br /&gt;
&lt;br /&gt;
Creating server entry for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Setting Zimbra IP Mode...done. &lt;br /&gt;
&lt;br /&gt;
Saving CA in ldap ...done. &lt;br /&gt;
&lt;br /&gt;
Saving SSL Certificate in ldap ...done. &lt;br /&gt;
&lt;br /&gt;
Setting spell check URL...done. &lt;br /&gt;
&lt;br /&gt;
Setting service ports on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraFeatureTasksEnabled=TRUE...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraFeatureBriefcasesEnabled=TRUE...done. &lt;br /&gt;
&lt;br /&gt;
Setting TimeZone Preference...done. &lt;br /&gt;
&lt;br /&gt;
Initializing mta config...done. &lt;br /&gt;
&lt;br /&gt;
Setting services on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Adding sysmet-zimbra.c.zimbra-sysnet.internal to zimbraMailHostPool in default COS...done. &lt;br /&gt;
&lt;br /&gt;
Creating domain sysmet-zimbra...done. &lt;br /&gt;
&lt;br /&gt;
Setting default domain name...done. &lt;br /&gt;
&lt;br /&gt;
Creating domain sysnetglobal.com...already exists. &lt;br /&gt;
&lt;br /&gt;
Creating admin account admin@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating root alias...done. &lt;br /&gt;
&lt;br /&gt;
Creating postmaster alias...done. &lt;br /&gt;
&lt;br /&gt;
Creating user spam.98wsrsws@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating user ham.vybghdap@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating user virus-quarantine.fqxwyynob@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Setting spam training and Anti-virus quarantine accounts...done. &lt;br /&gt;
&lt;br /&gt;
Initializing store sql database...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraSmtpHostname for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Configuring SNMP...done. &lt;br /&gt;
&lt;br /&gt;
Setting up syslog.conf...done. &lt;br /&gt;
&lt;br /&gt;
Starting servers...done. &lt;br /&gt;
&lt;br /&gt;
Installing common zimlets... &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_srchhighlighter...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_proxy_config...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_mailarchive...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_phone...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_ymemoticons...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_cert_manager...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_clientuploader...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_tooltip...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_bulkprovision...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_viewmail...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_adminversioncheck...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_email...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_webex...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_date...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_attachmail...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_url...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_attachcontacts...done. &lt;br /&gt;
&lt;br /&gt;
Finished installing common zimlets. &lt;br /&gt;
&lt;br /&gt;
Restarting mailboxd...done. &lt;br /&gt;
Creating galsync account for default domain...done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You have the option of notifying Zimbra of your installation. &lt;br /&gt;
&lt;br /&gt;
This helps us to track the uptake of the Zimbra Collaboration Server. &lt;br /&gt;
&lt;br /&gt;
The only information that will be transmitted is: &lt;br /&gt;
&lt;br /&gt;
	The VERSION of zcs installed (8.6.0_GA_1153_RHEL6_64) &lt;br /&gt;
&lt;br /&gt;
	The ADMIN EMAIL ADDRESS created (admin@sysnetglobal.com) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notify Zimbra of your installation? [Yes] no &lt;br /&gt;
&lt;br /&gt;
Notification skipped &lt;br /&gt;
&lt;br /&gt;
Setting up zimbra crontab...done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Moving /tmp/zmsetup04052015-035300.log to /opt/zimbra/log &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Configuration complete - press return to exit&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1925</id>
		<title>Implementation of sysnetglobal mailserver</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1925"/>
		<updated>2015-04-16T12:28:23Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
  &lt;br /&gt;
== &#039;&#039;&#039;DNS Configuration in Sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#yum install bind bind-utils&lt;br /&gt;
&lt;br /&gt;
# service named restart&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra ~]# vim  /etc/named.conf &lt;br /&gt;
//&lt;br /&gt;
// named.conf&lt;br /&gt;
//&lt;br /&gt;
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS&lt;br /&gt;
// server as a caching only nameserver (as a localhost DNS resolver only).&lt;br /&gt;
//&lt;br /&gt;
// See /usr/share/doc/bind*/sample/ for example named configuration files.&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
options {&lt;br /&gt;
	listen-on port 53 { 127.0.0.1; 10.240.40.228; };&lt;br /&gt;
//	listen-on-v6 port 53 { ::1; };&lt;br /&gt;
	directory 	&amp;quot;/var/named&amp;quot;;&lt;br /&gt;
	dump-file 	&amp;quot;/var/named/data/cache_dump.db&amp;quot;;&lt;br /&gt;
        statistics-file &amp;quot;/var/named/data/named_stats.txt&amp;quot;;&lt;br /&gt;
        memstatistics-file &amp;quot;/var/named/data/named_mem_stats.txt&amp;quot;;&lt;br /&gt;
//	allow-query     { localhost; };&lt;br /&gt;
	allow-query	{ any; };&lt;br /&gt;
	&lt;br /&gt;
	recursion yes;&lt;br /&gt;
&lt;br /&gt;
	dnssec-enable yes;&lt;br /&gt;
	dnssec-validation yes;&lt;br /&gt;
	dnssec-lookaside auto;&lt;br /&gt;
&lt;br /&gt;
	/* Path to ISC DLV key */&lt;br /&gt;
	bindkeys-file &amp;quot;/etc/named.iscdlv.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	managed-keys-directory &amp;quot;/var/named/dynamic&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
logging {&lt;br /&gt;
        channel default_debug {&lt;br /&gt;
                file &amp;quot;data/named.run&amp;quot;;&lt;br /&gt;
                severity dynamic;&lt;br /&gt;
        };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;.&amp;quot; IN {&lt;br /&gt;
	type hint;&lt;br /&gt;
	file &amp;quot;named.ca&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
zone &amp;quot;sysmet-zimbra&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.com&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.net&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
//include &amp;quot;/etc/named.rfc1912.zones&amp;quot;&lt;br /&gt;
//include &amp;quot;/etc/named.root.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Forward Zone&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
#cd /var/named &lt;br /&gt;
&lt;br /&gt;
# cp -p named.localhost  sysmet-zimbra_fwd&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra named]# cat sysmet-zimbra_fwd &lt;br /&gt;
&lt;br /&gt;
$TTL 6400&lt;br /&gt;
@       IN SOA  sysmet-zimbra. root.sysmet-zimbra. (&lt;br /&gt;
                                        20150405        ; serial&lt;br /&gt;
                                        1D      ; refresh&lt;br /&gt;
                                        1H      ; retry&lt;br /&gt;
                                        1W      ; expire&lt;br /&gt;
                                        3H )    ; minimum&lt;br /&gt;
                        IN      NS              sysmet-zimbra.c.zimbra-sysnet.internal.&lt;br /&gt;
                        IN      A               10.240.40.228&lt;br /&gt;
                        MX      5               mail.sysnetglobal.com.&lt;br /&gt;
                        MX      10              mail.sysnetglobal.net.&lt;br /&gt;
 sysmet-zimbra           IN      A       10.240.40.228&lt;br /&gt;
 mail.sysnetglobal.com.   IN      A       10.240.40.228&lt;br /&gt;
 mail.sysnetglobal.net.   IN      A       10.240.40.228&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
== &#039;&#039;&#039;ZIMBRA   configuration in sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
     &lt;br /&gt;
Below is the proper document for installation of zimbra on sysnetglobal:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1.&#039;&#039;&#039; check the postfix and sendmail running on the server, if it is running then please stop these services. &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/postfix stop &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/sendmail stop &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2.&#039;&#039;&#039; [root@sysmet-zimbra ~]# yum install perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat sqlite nc -y &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3.&#039;&#039;&#039; [root@sysmet-zimbra ~]# tar -zxvf zcs-8.6.0_GA_1153.RHEL6_64.20141215151155.tgz &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4.&#039;&#039;&#039; [root@sysmet-zimbra ~]# cd zcs-8.6.0_GA_1153.RHEL6_64.20141215151155 &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;5.&#039;&#039;&#039;[root@sysmet-zimbra zcs-8.6.0_GA_1153.RHEL6_64.20141215151155]# ./install.sh --platform-override &lt;br /&gt;
&lt;br /&gt;
Operations logged to /tmp/install.log.19420 &lt;br /&gt;
Checking for existing installation... &lt;br /&gt;
    zimbra-ldap...NOT FOUND &lt;br /&gt;
    zimbra-logger...NOT FOUND &lt;br /&gt;
    zimbra-mta...NOT FOUND &lt;br /&gt;
    zimbra-dnscache...NOT FOUND &lt;br /&gt;
    zimbra-snmp...NOT FOUND &lt;br /&gt;
    zimbra-store...NOT FOUND &lt;br /&gt;
    zimbra-apache...NOT FOUND &lt;br /&gt;
    zimbra-spell...NOT FOUND &lt;br /&gt;
    zimbra-convertd...NOT FOUND &lt;br /&gt;
    zimbra-memcached...NOT FOUND &lt;br /&gt;
    zimbra-proxy...NOT FOUND &lt;br /&gt;
    zimbra-archiving...NOT FOUND &lt;br /&gt;
    zimbra-core...NOT FOUND &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE. &lt;br /&gt;
ZIMBRA, INC. (&amp;quot;ZIMBRA&amp;quot;) WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU &lt;br /&gt;
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING &lt;br /&gt;
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY &lt;br /&gt;
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS &lt;br /&gt;
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT. &lt;br /&gt;
&lt;br /&gt;
License Terms for the Zimbra Collaboration Suite: &lt;br /&gt;
  http://www.zimbra.com/license/zimbra-public-eula-2-5.html &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Do you agree with the terms of the software license agreement? [N] Y &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Checking for prerequisites... &lt;br /&gt;
     FOUND: NPTL &lt;br /&gt;
     FOUND: nc-1.84-22 &lt;br /&gt;
     FOUND: sudo-1.8.6p3-15 &lt;br /&gt;
     FOUND: libidn-1.18-2 &lt;br /&gt;
     FOUND: gmp-4.3.1-7 &lt;br /&gt;
     FOUND: libaio-0.3.107-10 &lt;br /&gt;
     FOUND: libstdc++-4.4.7-11 &lt;br /&gt;
     FOUND: unzip-6.0-2 &lt;br /&gt;
&lt;br /&gt;
Checking for suggested prerequisites... &lt;br /&gt;
     FOUND: perl-5.10.1 &lt;br /&gt;
     FOUND: sysstat &lt;br /&gt;
     FOUND: sqlite &lt;br /&gt;
Prerequisite check complete. &lt;br /&gt;
&lt;br /&gt;
Checking for installable packages &lt;br /&gt;
&lt;br /&gt;
Found zimbra-core &lt;br /&gt;
Found zimbra-ldap &lt;br /&gt;
Found zimbra-logger &lt;br /&gt;
Found zimbra-mta &lt;br /&gt;
Found zimbra-dnscache &lt;br /&gt;
Found zimbra-snmp &lt;br /&gt;
Found zimbra-store &lt;br /&gt;
Found zimbra-apache &lt;br /&gt;
Found zimbra-spell &lt;br /&gt;
Found zimbra-memcached &lt;br /&gt;
Found zimbra-proxy &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Select the packages to install &lt;br /&gt;
&lt;br /&gt;
Install zimbra-ldap [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-logger [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-mta [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-dnscache [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-snmp [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-store [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-apache [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-spell [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-memcached [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-proxy [Y] N &lt;br /&gt;
Checking required space for zimbra-core &lt;br /&gt;
Checking space for zimbra-store &lt;br /&gt;
Checking required packages for zimbra-store &lt;br /&gt;
zimbra-store package check complete. &lt;br /&gt;
&lt;br /&gt;
Installing: &lt;br /&gt;
    zimbra-core &lt;br /&gt;
    zimbra-ldap &lt;br /&gt;
    zimbra-logger &lt;br /&gt;
    zimbra-mta &lt;br /&gt;
    zimbra-snmp &lt;br /&gt;
    zimbra-store &lt;br /&gt;
    zimbra-apache &lt;br /&gt;
    zimbra-spell &lt;br /&gt;
&lt;br /&gt;
The system will be modified.  Continue? [N] &lt;br /&gt;
Removing /opt/zimbra &lt;br /&gt;
Removing zimbra crontab entry...done. &lt;br /&gt;
Cleaning up zimbra init scripts...done. &lt;br /&gt;
Cleaning up /etc/ld.so.conf...done. &lt;br /&gt;
Cleaning up /etc/prelink.conf...done. &lt;br /&gt;
Cleaning up /etc/security/limits.conf...done. &lt;br /&gt;
&lt;br /&gt;
Finished removing Zimbra Collaboration Server. &lt;br /&gt;
&lt;br /&gt;
Installing packages &lt;br /&gt;
&lt;br /&gt;
    zimbra-core......zimbra-core-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-ldap......zimbra-ldap-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-logger......zimbra-logger-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-mta......zimbra-mta-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
zimbra-snmp......zimbra-snmp-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-store......zimbra-store-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-apache......zimbra-apache-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-spell......zimbra-spell-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Installing LDAP configuration database...done. &lt;br /&gt;
Setting defaults... &lt;br /&gt;
No results returned for A lookup of sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
	10.240.40.228 &lt;br /&gt;
No results returned for AAAA lookup of sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
	10.240.40.228 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DNS ERROR resolving sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
It is suggested that the hostname be resolvable via DNS &lt;br /&gt;
Change hostname [Yes] &lt;br /&gt;
Please enter the logical hostname for this host [sysmet-zimbra.c.zimbra-sysnet.internal] mail.sysnetglobal.com &lt;br /&gt;
No results returned for A lookup of mail.sysnetglobal.com &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
        10.240.40.228 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DNS ERROR resolving MX for sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
It is suggested that the domain name have an MX record configured in DNS &lt;br /&gt;
Change domain name? [Yes] &lt;br /&gt;
Create domain: [sysmet-zimbra.c.zimbra-sysnet.internal] sysnetglobal.com &lt;br /&gt;
	MX: mail.sysnetglobal.com (10.240.40.228) &lt;br /&gt;
	MX: mail.sysnetglobal.net (10.240.40.228) &lt;br /&gt;
&lt;br /&gt;
	Interface: 10.240.40.228 &lt;br /&gt;
	Interface: 127.0.0.1 &lt;br /&gt;
	Interface: ::1 &lt;br /&gt;
done. &lt;br /&gt;
Checking for port conflicts &lt;br /&gt;
&lt;br /&gt;
Main menu &lt;br /&gt;
1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
        +Create Admin User:                    yes                           &lt;br /&gt;
        +Admin user to create:                 admin@sysnetglobal.com           &lt;br /&gt;
******* +Admin Password                        UNSET                         &lt;br /&gt;
        +Anti-virus quarantine user:           virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
        +Enable automated spam training:       yes                           &lt;br /&gt;
        +Spam training user:                   spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
        +Non-spam(Ham) training user:          ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
        +SMTP host:                            sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
        +Web server HTTP port:                 80                            &lt;br /&gt;
        +Web server HTTPS port:                443                           &lt;br /&gt;
        +Web server mode:                      https                         &lt;br /&gt;
        +IMAP server port:                     143                           &lt;br /&gt;
        +IMAP server SSL port:                 993                           &lt;br /&gt;
        +POP server port:                      110                           &lt;br /&gt;
        +POP server SSL port:                  995                           &lt;br /&gt;
        +Use spell check server:               yes                           &lt;br /&gt;
        +Spell server URL:                     http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
        +Configure for use with mail proxy:    FALSE                         &lt;br /&gt;
        +Configure for use with web proxy:     FALSE                         &lt;br /&gt;
        +Enable version update checks:         TRUE                          &lt;br /&gt;
        +Enable version update notifications:  TRUE                          &lt;br /&gt;
        +Version update notification email:    admin@sysnetglobal.com           &lt;br /&gt;
        +Version update source email:          admin@sysnetglobal.com           &lt;br /&gt;
        +Install mailstore (service webapp):   yes                           &lt;br /&gt;
        +Install UI (zimbra,zimbraAdmin webapps): yes            &lt;br /&gt;
  7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
Address unconfigured (**) items  (? - help) 6 &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
** 4) Admin Password                           UNSET                         &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 4 &lt;br /&gt;
Password for admin@sysnetglobal.com (min 6 characters): [abrQ3Kmjp] sysnet123tetra &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 23 &lt;br /&gt;
Version update destination address: [admin@sysnetglobal.com] 24 &lt;br /&gt;
Must enter a valid email address. &lt;br /&gt;
Version update destination address: [admin@sysmet-zimbra] admin@sysnetglobal.com &lt;br /&gt;
&lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com        &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] r &lt;br /&gt;
Main menu &lt;br /&gt;
&lt;br /&gt;
   1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
   7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
*** CONFIGURATION COMPLETE - press &#039;a&#039; to apply &lt;br /&gt;
&lt;br /&gt;
Select from menu, or press &#039;a&#039; to apply config (? - help) a &lt;br /&gt;
&lt;br /&gt;
Save configuration data to a file? [Yes] &lt;br /&gt;
&lt;br /&gt;
Save config in file: [/opt/zimbra/config.30782] &lt;br /&gt;
&lt;br /&gt;
Saving config in /opt/zimbra/config.30782...done. &lt;br /&gt;
&lt;br /&gt;
The system will be modified - continue? [No] Yes &lt;br /&gt;
&lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Setting local config values... &lt;br /&gt;
&lt;br /&gt;
...done. &lt;br /&gt;
&lt;br /&gt;
Initializing core config...Setting up CA...done. &lt;br /&gt;
&lt;br /&gt;
Deploying CA to /opt/zimbra/conf/ca ...done. &lt;br /&gt;
&lt;br /&gt;
Creating SSL zimbra-store certificate...done. &lt;br /&gt;
&lt;br /&gt;
Creating new zimbra-ldap SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Creating new zimbra-mta SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Installing mailboxd SSL certificates...done. &lt;br /&gt;
&lt;br /&gt;
Installing MTA SSL certificates...done. &lt;br /&gt;
&lt;br /&gt;
Installing LDAP SSL certificate...done. &lt;br /&gt;
&lt;br /&gt;
Initializing ldap...done. &lt;br /&gt;
&lt;br /&gt;
Setting replication password...done. &lt;br /&gt;
&lt;br /&gt;
Setting Postfix password...done. &lt;br /&gt;
&lt;br /&gt;
Setting amavis password...done. &lt;br /&gt;
&lt;br /&gt;
Setting nginx password...done. &lt;br /&gt;
&lt;br /&gt;
Setting BES searcher  password...done. &lt;br /&gt;
&lt;br /&gt;
Creating server entry for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Setting Zimbra IP Mode...done. &lt;br /&gt;
&lt;br /&gt;
Saving CA in ldap ...done. &lt;br /&gt;
&lt;br /&gt;
Saving SSL Certificate in ldap ...done. &lt;br /&gt;
&lt;br /&gt;
Setting spell check URL...done. &lt;br /&gt;
&lt;br /&gt;
Setting service ports on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraFeatureTasksEnabled=TRUE...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraFeatureBriefcasesEnabled=TRUE...done. &lt;br /&gt;
&lt;br /&gt;
Setting TimeZone Preference...done. &lt;br /&gt;
&lt;br /&gt;
Initializing mta config...done. &lt;br /&gt;
&lt;br /&gt;
Setting services on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Adding sysmet-zimbra.c.zimbra-sysnet.internal to zimbraMailHostPool in default COS...done. &lt;br /&gt;
&lt;br /&gt;
Creating domain sysmet-zimbra...done. &lt;br /&gt;
&lt;br /&gt;
Setting default domain name...done. &lt;br /&gt;
&lt;br /&gt;
Creating domain sysnetglobal.com...already exists. &lt;br /&gt;
&lt;br /&gt;
Creating admin account admin@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating root alias...done. &lt;br /&gt;
&lt;br /&gt;
Creating postmaster alias...done. &lt;br /&gt;
&lt;br /&gt;
Creating user spam.98wsrsws@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating user ham.vybghdap@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Creating user virus-quarantine.fqxwyynob@sysnetglobal.com...done. &lt;br /&gt;
&lt;br /&gt;
Setting spam training and Anti-virus quarantine accounts...done. &lt;br /&gt;
&lt;br /&gt;
Initializing store sql database...done. &lt;br /&gt;
&lt;br /&gt;
Setting zimbraSmtpHostname for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
&lt;br /&gt;
Configuring SNMP...done. &lt;br /&gt;
&lt;br /&gt;
Setting up syslog.conf...done. &lt;br /&gt;
&lt;br /&gt;
Starting servers...done. &lt;br /&gt;
&lt;br /&gt;
Installing common zimlets... &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_srchhighlighter...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_proxy_config...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_mailarchive...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_phone...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_ymemoticons...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_cert_manager...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_clientuploader...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_tooltip...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_bulkprovision...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_viewmail...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_adminversioncheck...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_email...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_webex...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_date...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_attachmail...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_url...done. &lt;br /&gt;
&lt;br /&gt;
	com_zimbra_attachcontacts...done. &lt;br /&gt;
&lt;br /&gt;
Finished installing common zimlets. &lt;br /&gt;
&lt;br /&gt;
Restarting mailboxd...done. &lt;br /&gt;
Creating galsync account for default domain...done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You have the option of notifying Zimbra of your installation. &lt;br /&gt;
&lt;br /&gt;
This helps us to track the uptake of the Zimbra Collaboration Server. &lt;br /&gt;
&lt;br /&gt;
The only information that will be transmitted is: &lt;br /&gt;
&lt;br /&gt;
	The VERSION of zcs installed (8.6.0_GA_1153_RHEL6_64) &lt;br /&gt;
&lt;br /&gt;
	The ADMIN EMAIL ADDRESS created (admin@sysnetglobal.com) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notify Zimbra of your installation? [Yes] no &lt;br /&gt;
&lt;br /&gt;
Notification skipped &lt;br /&gt;
&lt;br /&gt;
Setting up zimbra crontab...done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Moving /tmp/zmsetup04052015-035300.log to /opt/zimbra/log &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Configuration complete - press return to exit&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1924</id>
		<title>Implementation of sysnetglobal mailserver</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1924"/>
		<updated>2015-04-16T12:21:01Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
  &lt;br /&gt;
== &#039;&#039;&#039;DNS Configuration in Sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#yum install bind bind-utils&lt;br /&gt;
&lt;br /&gt;
# service named restart&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra ~]# vim  /etc/named.conf &lt;br /&gt;
//&lt;br /&gt;
// named.conf&lt;br /&gt;
//&lt;br /&gt;
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS&lt;br /&gt;
// server as a caching only nameserver (as a localhost DNS resolver only).&lt;br /&gt;
//&lt;br /&gt;
// See /usr/share/doc/bind*/sample/ for example named configuration files.&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
options {&lt;br /&gt;
	listen-on port 53 { 127.0.0.1; 10.240.40.228; };&lt;br /&gt;
//	listen-on-v6 port 53 { ::1; };&lt;br /&gt;
	directory 	&amp;quot;/var/named&amp;quot;;&lt;br /&gt;
	dump-file 	&amp;quot;/var/named/data/cache_dump.db&amp;quot;;&lt;br /&gt;
        statistics-file &amp;quot;/var/named/data/named_stats.txt&amp;quot;;&lt;br /&gt;
        memstatistics-file &amp;quot;/var/named/data/named_mem_stats.txt&amp;quot;;&lt;br /&gt;
//	allow-query     { localhost; };&lt;br /&gt;
	allow-query	{ any; };&lt;br /&gt;
	&lt;br /&gt;
	recursion yes;&lt;br /&gt;
&lt;br /&gt;
	dnssec-enable yes;&lt;br /&gt;
	dnssec-validation yes;&lt;br /&gt;
	dnssec-lookaside auto;&lt;br /&gt;
&lt;br /&gt;
	/* Path to ISC DLV key */&lt;br /&gt;
	bindkeys-file &amp;quot;/etc/named.iscdlv.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	managed-keys-directory &amp;quot;/var/named/dynamic&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
logging {&lt;br /&gt;
        channel default_debug {&lt;br /&gt;
                file &amp;quot;data/named.run&amp;quot;;&lt;br /&gt;
                severity dynamic;&lt;br /&gt;
        };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;.&amp;quot; IN {&lt;br /&gt;
	type hint;&lt;br /&gt;
	file &amp;quot;named.ca&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
zone &amp;quot;sysmet-zimbra&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.com&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.net&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
//include &amp;quot;/etc/named.rfc1912.zones&amp;quot;&lt;br /&gt;
//include &amp;quot;/etc/named.root.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Forward Zone&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
#cd /var/named &lt;br /&gt;
&lt;br /&gt;
# cp -p named.localhost  sysmet-zimbra_fwd&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra named]# cat sysmet-zimbra_fwd &lt;br /&gt;
$TTL 6400&lt;br /&gt;
@       IN SOA  sysmet-zimbra. root.sysmet-zimbra. (&lt;br /&gt;
                                        20150405        ; serial&lt;br /&gt;
                                        1D      ; refresh&lt;br /&gt;
                                        1H      ; retry&lt;br /&gt;
                                        1W      ; expire&lt;br /&gt;
                                        3H )    ; minimum&lt;br /&gt;
                        IN      NS              sysmet-zimbra.c.zimbra-sysnet.internal.&lt;br /&gt;
                        IN      A               10.240.40.228&lt;br /&gt;
                        MX      5               mail.sysnetglobal.com.&lt;br /&gt;
                        MX      10              mail.sysnetglobal.net.&lt;br /&gt;
sysmet-zimbra           IN      A       10.240.40.228&lt;br /&gt;
mail.sysnetglobal.com.   IN      A       10.240.40.228&lt;br /&gt;
mail.sysnetglobal.net.   IN      A       10.240.40.228&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
== &#039;&#039;&#039;ZIMBRA   configuration in sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
     &lt;br /&gt;
Below is the proper document for installation of zimbra on sysnetglobal:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1.&#039;&#039;&#039; check the postfix and sendmail running on the server, if it is running then please stop these services. &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/postfix stop &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/sendmail stop &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2.&#039;&#039;&#039; [root@sysmet-zimbra ~]# yum install perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat sqlite nc -y &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3.&#039;&#039;&#039; [root@sysmet-zimbra ~]# tar -zxvf zcs-8.6.0_GA_1153.RHEL6_64.20141215151155.tgz &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4.&#039;&#039;&#039; [root@sysmet-zimbra ~]# cd zcs-8.6.0_GA_1153.RHEL6_64.20141215151155 &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;5.&#039;&#039;&#039;[root@sysmet-zimbra zcs-8.6.0_GA_1153.RHEL6_64.20141215151155]# ./install.sh --platform-override &lt;br /&gt;
&lt;br /&gt;
Operations logged to /tmp/install.log.19420 &lt;br /&gt;
Checking for existing installation... &lt;br /&gt;
    zimbra-ldap...NOT FOUND &lt;br /&gt;
    zimbra-logger...NOT FOUND &lt;br /&gt;
    zimbra-mta...NOT FOUND &lt;br /&gt;
    zimbra-dnscache...NOT FOUND &lt;br /&gt;
    zimbra-snmp...NOT FOUND &lt;br /&gt;
    zimbra-store...NOT FOUND &lt;br /&gt;
    zimbra-apache...NOT FOUND &lt;br /&gt;
    zimbra-spell...NOT FOUND &lt;br /&gt;
    zimbra-convertd...NOT FOUND &lt;br /&gt;
    zimbra-memcached...NOT FOUND &lt;br /&gt;
    zimbra-proxy...NOT FOUND &lt;br /&gt;
    zimbra-archiving...NOT FOUND &lt;br /&gt;
    zimbra-core...NOT FOUND &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE. &lt;br /&gt;
ZIMBRA, INC. (&amp;quot;ZIMBRA&amp;quot;) WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU &lt;br /&gt;
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING &lt;br /&gt;
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY &lt;br /&gt;
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS &lt;br /&gt;
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT. &lt;br /&gt;
&lt;br /&gt;
License Terms for the Zimbra Collaboration Suite: &lt;br /&gt;
  http://www.zimbra.com/license/zimbra-public-eula-2-5.html &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Do you agree with the terms of the software license agreement? [N] Y &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Checking for prerequisites... &lt;br /&gt;
     FOUND: NPTL &lt;br /&gt;
     FOUND: nc-1.84-22 &lt;br /&gt;
     FOUND: sudo-1.8.6p3-15 &lt;br /&gt;
     FOUND: libidn-1.18-2 &lt;br /&gt;
     FOUND: gmp-4.3.1-7 &lt;br /&gt;
     FOUND: libaio-0.3.107-10 &lt;br /&gt;
     FOUND: libstdc++-4.4.7-11 &lt;br /&gt;
     FOUND: unzip-6.0-2 &lt;br /&gt;
&lt;br /&gt;
Checking for suggested prerequisites... &lt;br /&gt;
     FOUND: perl-5.10.1 &lt;br /&gt;
     FOUND: sysstat &lt;br /&gt;
     FOUND: sqlite &lt;br /&gt;
Prerequisite check complete. &lt;br /&gt;
&lt;br /&gt;
Checking for installable packages &lt;br /&gt;
&lt;br /&gt;
Found zimbra-core &lt;br /&gt;
Found zimbra-ldap &lt;br /&gt;
Found zimbra-logger &lt;br /&gt;
Found zimbra-mta &lt;br /&gt;
Found zimbra-dnscache &lt;br /&gt;
Found zimbra-snmp &lt;br /&gt;
Found zimbra-store &lt;br /&gt;
Found zimbra-apache &lt;br /&gt;
Found zimbra-spell &lt;br /&gt;
Found zimbra-memcached &lt;br /&gt;
Found zimbra-proxy &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Select the packages to install &lt;br /&gt;
&lt;br /&gt;
Install zimbra-ldap [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-logger [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-mta [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-dnscache [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-snmp [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-store [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-apache [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-spell [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-memcached [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-proxy [Y] N &lt;br /&gt;
Checking required space for zimbra-core &lt;br /&gt;
Checking space for zimbra-store &lt;br /&gt;
Checking required packages for zimbra-store &lt;br /&gt;
zimbra-store package check complete. &lt;br /&gt;
&lt;br /&gt;
Installing: &lt;br /&gt;
    zimbra-core &lt;br /&gt;
    zimbra-ldap &lt;br /&gt;
    zimbra-logger &lt;br /&gt;
    zimbra-mta &lt;br /&gt;
    zimbra-snmp &lt;br /&gt;
    zimbra-store &lt;br /&gt;
    zimbra-apache &lt;br /&gt;
    zimbra-spell &lt;br /&gt;
&lt;br /&gt;
The system will be modified.  Continue? [N] &lt;br /&gt;
Removing /opt/zimbra &lt;br /&gt;
Removing zimbra crontab entry...done. &lt;br /&gt;
Cleaning up zimbra init scripts...done. &lt;br /&gt;
Cleaning up /etc/ld.so.conf...done. &lt;br /&gt;
Cleaning up /etc/prelink.conf...done. &lt;br /&gt;
Cleaning up /etc/security/limits.conf...done. &lt;br /&gt;
&lt;br /&gt;
Finished removing Zimbra Collaboration Server. &lt;br /&gt;
&lt;br /&gt;
Installing packages &lt;br /&gt;
&lt;br /&gt;
    zimbra-core......zimbra-core-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-ldap......zimbra-ldap-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-logger......zimbra-logger-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-mta......zimbra-mta-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
zimbra-snmp......zimbra-snmp-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-store......zimbra-store-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-apache......zimbra-apache-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...done &lt;br /&gt;
    zimbra-spell......zimbra-spell-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Installing LDAP configuration database...done. &lt;br /&gt;
Setting defaults... &lt;br /&gt;
No results returned for A lookup of sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
	10.240.40.228 &lt;br /&gt;
No results returned for AAAA lookup of sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
	10.240.40.228 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DNS ERROR resolving sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
It is suggested that the hostname be resolvable via DNS &lt;br /&gt;
Change hostname [Yes] &lt;br /&gt;
Please enter the logical hostname for this host [sysmet-zimbra.c.zimbra-sysnet.internal] mail.sysnetglobal.com &lt;br /&gt;
No results returned for A lookup of mail.sysnetglobal.com &lt;br /&gt;
Checked nameservers: &lt;br /&gt;
        10.240.40.228 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DNS ERROR resolving MX for sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
It is suggested that the domain name have an MX record configured in DNS &lt;br /&gt;
Change domain name? [Yes] &lt;br /&gt;
Create domain: [sysmet-zimbra.c.zimbra-sysnet.internal] sysnetglobal.com &lt;br /&gt;
	MX: mail.sysnetglobal.com (10.240.40.228) &lt;br /&gt;
	MX: mail.sysnetglobal.net (10.240.40.228) &lt;br /&gt;
&lt;br /&gt;
	Interface: 10.240.40.228 &lt;br /&gt;
	Interface: 127.0.0.1 &lt;br /&gt;
	Interface: ::1 &lt;br /&gt;
done. &lt;br /&gt;
Checking for port conflicts &lt;br /&gt;
&lt;br /&gt;
Main menu &lt;br /&gt;
1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
        +Create Admin User:                    yes                           &lt;br /&gt;
        +Admin user to create:                 admin@sysnetglobal.com           &lt;br /&gt;
******* +Admin Password                        UNSET                         &lt;br /&gt;
        +Anti-virus quarantine user:           virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
        +Enable automated spam training:       yes                           &lt;br /&gt;
        +Spam training user:                   spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
        +Non-spam(Ham) training user:          ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
        +SMTP host:                            sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
        +Web server HTTP port:                 80                            &lt;br /&gt;
        +Web server HTTPS port:                443                           &lt;br /&gt;
        +Web server mode:                      https                         &lt;br /&gt;
        +IMAP server port:                     143                           &lt;br /&gt;
        +IMAP server SSL port:                 993                           &lt;br /&gt;
        +POP server port:                      110                           &lt;br /&gt;
        +POP server SSL port:                  995                           &lt;br /&gt;
        +Use spell check server:               yes                           &lt;br /&gt;
        +Spell server URL:                     http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
        +Configure for use with mail proxy:    FALSE                         &lt;br /&gt;
        +Configure for use with web proxy:     FALSE                         &lt;br /&gt;
        +Enable version update checks:         TRUE                          &lt;br /&gt;
        +Enable version update notifications:  TRUE                          &lt;br /&gt;
        +Version update notification email:    admin@sysnetglobal.com           &lt;br /&gt;
        +Version update source email:          admin@sysnetglobal.com           &lt;br /&gt;
        +Install mailstore (service webapp):   yes                           &lt;br /&gt;
        +Install UI (zimbra,zimbraAdmin webapps): yes            &lt;br /&gt;
  7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
Address unconfigured (**) items  (? - help) 6 &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
** 4) Admin Password                           UNSET                         &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 4 &lt;br /&gt;
Password for admin@sysnetglobal.com (min 6 characters): [abrQ3Kmjp] sysnet123tetra &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 23 &lt;br /&gt;
Version update destination address: [admin@sysnetglobal.com] 24 &lt;br /&gt;
Must enter a valid email address. &lt;br /&gt;
Version update destination address: [admin@sysmet-zimbra] admin@sysnetglobal.com &lt;br /&gt;
&lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com        &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] r &lt;br /&gt;
Main menu &lt;br /&gt;
&lt;br /&gt;
   1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
   7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
*** CONFIGURATION COMPLETE - press &#039;a&#039; to apply &lt;br /&gt;
Select from menu, or press &#039;a&#039; to apply config (? - help) a &lt;br /&gt;
Save configuration data to a file? [Yes] &lt;br /&gt;
Save config in file: [/opt/zimbra/config.30782] &lt;br /&gt;
Saving config in /opt/zimbra/config.30782...done. &lt;br /&gt;
The system will be modified - continue? [No] Yes &lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Setting local config values... &lt;br /&gt;
...done. &lt;br /&gt;
Initializing core config...Setting up CA...done. &lt;br /&gt;
Deploying CA to /opt/zimbra/conf/ca ...done. &lt;br /&gt;
Creating SSL zimbra-store certificate...done. &lt;br /&gt;
Creating new zimbra-ldap SSL certificate...done. &lt;br /&gt;
Creating new zimbra-mta SSL certificate...done. &lt;br /&gt;
Installing mailboxd SSL certificates...done. &lt;br /&gt;
Installing MTA SSL certificates...done. &lt;br /&gt;
Installing LDAP SSL certificate...done. &lt;br /&gt;
Initializing ldap...done. &lt;br /&gt;
Setting replication password...done. &lt;br /&gt;
Setting Postfix password...done. &lt;br /&gt;
Setting amavis password...done. &lt;br /&gt;
Setting nginx password...done. &lt;br /&gt;
Setting BES searcher  password...done. &lt;br /&gt;
Creating server entry for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
Setting Zimbra IP Mode...done. &lt;br /&gt;
Saving CA in ldap ...done. &lt;br /&gt;
Saving SSL Certificate in ldap ...done. &lt;br /&gt;
Setting spell check URL...done. &lt;br /&gt;
Setting service ports on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
Setting zimbraFeatureTasksEnabled=TRUE...done. &lt;br /&gt;
Setting zimbraFeatureBriefcasesEnabled=TRUE...done. &lt;br /&gt;
Setting TimeZone Preference...done. &lt;br /&gt;
Initializing mta config...done. &lt;br /&gt;
Setting services on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
Adding sysmet-zimbra.c.zimbra-sysnet.internal to zimbraMailHostPool in default COS...done. &lt;br /&gt;
Creating domain sysmet-zimbra...done. &lt;br /&gt;
Setting default domain name...done. &lt;br /&gt;
Creating domain sysnetglobal.com...already exists. &lt;br /&gt;
Creating admin account admin@sysnetglobal.com...done. &lt;br /&gt;
Creating root alias...done. &lt;br /&gt;
Creating postmaster alias...done. &lt;br /&gt;
Creating user spam.98wsrsws@sysnetglobal.com...done. &lt;br /&gt;
Creating user ham.vybghdap@sysnetglobal.com...done. &lt;br /&gt;
Creating user virus-quarantine.fqxwyynob@sysnetglobal.com...done. &lt;br /&gt;
Setting spam training and Anti-virus quarantine accounts...done. &lt;br /&gt;
Initializing store sql database...done. &lt;br /&gt;
Setting zimbraSmtpHostname for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
Configuring SNMP...done. &lt;br /&gt;
Setting up syslog.conf...done. &lt;br /&gt;
Starting servers...done. &lt;br /&gt;
Installing common zimlets... &lt;br /&gt;
	com_zimbra_srchhighlighter...done. &lt;br /&gt;
	com_zimbra_proxy_config...done. &lt;br /&gt;
	com_zimbra_mailarchive...done. &lt;br /&gt;
	com_zimbra_phone...done. &lt;br /&gt;
	com_zimbra_ymemoticons...done. &lt;br /&gt;
	com_zimbra_cert_manager...done. &lt;br /&gt;
	com_zimbra_clientuploader...done. &lt;br /&gt;
	com_zimbra_tooltip...done. &lt;br /&gt;
	com_zimbra_bulkprovision...done. &lt;br /&gt;
	com_zimbra_viewmail...done. &lt;br /&gt;
	com_zimbra_adminversioncheck...done. &lt;br /&gt;
	com_zimbra_email...done. &lt;br /&gt;
	com_zimbra_webex...done. &lt;br /&gt;
	com_zimbra_date...done. &lt;br /&gt;
	com_zimbra_attachmail...done. &lt;br /&gt;
	com_zimbra_url...done. &lt;br /&gt;
	com_zimbra_attachcontacts...done. &lt;br /&gt;
Finished installing common zimlets. &lt;br /&gt;
Restarting mailboxd...done. &lt;br /&gt;
Creating galsync account for default domain...done. &lt;br /&gt;
&lt;br /&gt;
You have the option of notifying Zimbra of your installation. &lt;br /&gt;
This helps us to track the uptake of the Zimbra Collaboration Server. &lt;br /&gt;
The only information that will be transmitted is: &lt;br /&gt;
	The VERSION of zcs installed (8.6.0_GA_1153_RHEL6_64) &lt;br /&gt;
	The ADMIN EMAIL ADDRESS created (admin@sysnetglobal.com) &lt;br /&gt;
&lt;br /&gt;
Notify Zimbra of your installation? [Yes] no &lt;br /&gt;
Notification skipped &lt;br /&gt;
Setting up zimbra crontab...done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Moving /tmp/zmsetup04052015-035300.log to /opt/zimbra/log &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Configuration complete - press return to exit&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1923</id>
		<title>Implementation of sysnetglobal mailserver</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Implementation_of_sysnetglobal_mailserver&amp;diff=1923"/>
		<updated>2015-04-16T12:13:45Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Created page with &amp;quot;category:sysnetglobal    == &amp;#039;&amp;#039;&amp;#039;DNS Configuration in Sysnetglobal&amp;#039;&amp;#039;&amp;#039; ==   #yum install bind bind-utils  # service named restart   [root@sysmet-zimbra ~]# vim  /etc/named.co...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
  &lt;br /&gt;
== &#039;&#039;&#039;DNS Configuration in Sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#yum install bind bind-utils&lt;br /&gt;
&lt;br /&gt;
# service named restart&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra ~]# vim  /etc/named.conf &lt;br /&gt;
//&lt;br /&gt;
// named.conf&lt;br /&gt;
//&lt;br /&gt;
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS&lt;br /&gt;
// server as a caching only nameserver (as a localhost DNS resolver only).&lt;br /&gt;
//&lt;br /&gt;
// See /usr/share/doc/bind*/sample/ for example named configuration files.&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
options {&lt;br /&gt;
	listen-on port 53 { 127.0.0.1; 10.240.40.228; };&lt;br /&gt;
//	listen-on-v6 port 53 { ::1; };&lt;br /&gt;
	directory 	&amp;quot;/var/named&amp;quot;;&lt;br /&gt;
	dump-file 	&amp;quot;/var/named/data/cache_dump.db&amp;quot;;&lt;br /&gt;
        statistics-file &amp;quot;/var/named/data/named_stats.txt&amp;quot;;&lt;br /&gt;
        memstatistics-file &amp;quot;/var/named/data/named_mem_stats.txt&amp;quot;;&lt;br /&gt;
//	allow-query     { localhost; };&lt;br /&gt;
	allow-query	{ any; };&lt;br /&gt;
	&lt;br /&gt;
	recursion yes;&lt;br /&gt;
&lt;br /&gt;
	dnssec-enable yes;&lt;br /&gt;
	dnssec-validation yes;&lt;br /&gt;
	dnssec-lookaside auto;&lt;br /&gt;
&lt;br /&gt;
	/* Path to ISC DLV key */&lt;br /&gt;
	bindkeys-file &amp;quot;/etc/named.iscdlv.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	managed-keys-directory &amp;quot;/var/named/dynamic&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
logging {&lt;br /&gt;
        channel default_debug {&lt;br /&gt;
                file &amp;quot;data/named.run&amp;quot;;&lt;br /&gt;
                severity dynamic;&lt;br /&gt;
        };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;.&amp;quot; IN {&lt;br /&gt;
	type hint;&lt;br /&gt;
	file &amp;quot;named.ca&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
zone &amp;quot;sysmet-zimbra&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.com&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;sysnetglobal.net&amp;quot; IN {&lt;br /&gt;
	type master;&lt;br /&gt;
	file &amp;quot;/var/named/sysmet-zimbra_fwd&amp;quot;;&lt;br /&gt;
	allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
//include &amp;quot;/etc/named.rfc1912.zones&amp;quot;&lt;br /&gt;
//include &amp;quot;/etc/named.root.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Forward Zone&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
#cd /var/named &lt;br /&gt;
&lt;br /&gt;
# cp -p named.localhost  sysmet-zimbra_fwd&lt;br /&gt;
&lt;br /&gt;
[root@sysmet-zimbra named]# cat sysmet-zimbra_fwd &lt;br /&gt;
$TTL 6400&lt;br /&gt;
@       IN SOA  sysmet-zimbra. root.sysmet-zimbra. (&lt;br /&gt;
                                        20150405        ; serial&lt;br /&gt;
                                        1D      ; refresh&lt;br /&gt;
                                        1H      ; retry&lt;br /&gt;
                                        1W      ; expire&lt;br /&gt;
                                        3H )    ; minimum&lt;br /&gt;
                        IN      NS              sysmet-zimbra.c.zimbra-sysnet.internal.&lt;br /&gt;
                        IN      A               10.240.40.228&lt;br /&gt;
                        MX      5               mail.sysnetglobal.com.&lt;br /&gt;
                        MX      10              mail.sysnetglobal.net.&lt;br /&gt;
sysmet-zimbra           IN      A       10.240.40.228&lt;br /&gt;
mail.sysnetglobal.com.   IN      A       10.240.40.228&lt;br /&gt;
mail.sysnetglobal.net.   IN      A       10.240.40.228&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
== &#039;&#039;&#039;ZIMBRA   configuration in sysnetglobal&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
     &lt;br /&gt;
Below is the proper document for installation of zimbra on sysnetglobal:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1.&#039;&#039;&#039; check the postfix and sendmail running on the server, if it is running then please stop these services. &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/postfix stop &lt;br /&gt;
   [root@sysmet-zimbra ~]# /etc/init.d/sendmail stop &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2.&#039;&#039;&#039; [root@sysmet-zimbra ~]# yum install perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat sqlite nc -y &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3.&#039;&#039;&#039; [root@sysmet-zimbra ~]# tar -zxvf zcs-8.6.0_GA_1153.RHEL6_64.20141215151155.tgz &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4.&#039;&#039;&#039; [root@sysmet-zimbra ~]# cd zcs-8.6.0_GA_1153.RHEL6_64.20141215151155 &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;5.&#039;&#039;&#039;[root@sysmet-zimbra zcs-8.6.0_GA_1153.RHEL6_64.20141215151155]# ./install.sh --platform-override &lt;br /&gt;
&lt;br /&gt;
Operations logged to /tmp/install.log.19420 &lt;br /&gt;
Checking for existing installation... &lt;br /&gt;
    zimbra-ldap...NOT FOUND &lt;br /&gt;
    zimbra-logger...NOT FOUND &lt;br /&gt;
    zimbra-mta...NOT FOUND &lt;br /&gt;
    zimbra-dnscache...NOT FOUND &lt;br /&gt;
    zimbra-snmp...NOT FOUND &lt;br /&gt;
    zimbra-store...NOT FOUND &lt;br /&gt;
    zimbra-apache...NOT FOUND &lt;br /&gt;
    zimbra-spell...NOT FOUND &lt;br /&gt;
    zimbra-convertd...NOT FOUND &lt;br /&gt;
    zimbra-memcached...NOT FOUND &lt;br /&gt;
    zimbra-proxy...NOT FOUND &lt;br /&gt;
    zimbra-archiving...NOT FOUND &lt;br /&gt;
    zimbra-core...NOT FOUND &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE. &lt;br /&gt;
ZIMBRA, INC. (&amp;quot;ZIMBRA&amp;quot;) WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU &lt;br /&gt;
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING &lt;br /&gt;
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY &lt;br /&gt;
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS &lt;br /&gt;
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT. &lt;br /&gt;
&lt;br /&gt;
License Terms for the Zimbra Collaboration Suite: &lt;br /&gt;
  http://www.zimbra.com/license/zimbra-public-eula-2-5.html &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Do you agree with the terms of the software license agreement? [N] Y &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Checking for prerequisites... &lt;br /&gt;
     FOUND: NPTL &lt;br /&gt;
     FOUND: nc-1.84-22 &lt;br /&gt;
     FOUND: sudo-1.8.6p3-15 &lt;br /&gt;
     FOUND: libidn-1.18-2 &lt;br /&gt;
     FOUND: gmp-4.3.1-7 &lt;br /&gt;
     FOUND: libaio-0.3.107-10 &lt;br /&gt;
     FOUND: libstdc++-4.4.7-11 &lt;br /&gt;
     FOUND: unzip-6.0-2 &lt;br /&gt;
&lt;br /&gt;
Checking for suggested prerequisites... &lt;br /&gt;
     FOUND: perl-5.10.1 &lt;br /&gt;
     FOUND: sysstat &lt;br /&gt;
     FOUND: sqlite &lt;br /&gt;
Prerequisite check complete. &lt;br /&gt;
&lt;br /&gt;
Checking for installable packages &lt;br /&gt;
&lt;br /&gt;
Found zimbra-core &lt;br /&gt;
Found zimbra-ldap &lt;br /&gt;
Found zimbra-logger &lt;br /&gt;
Found zimbra-mta &lt;br /&gt;
Found zimbra-dnscache &lt;br /&gt;
Found zimbra-snmp &lt;br /&gt;
Found zimbra-store &lt;br /&gt;
Found zimbra-apache &lt;br /&gt;
Found zimbra-spell &lt;br /&gt;
Found zimbra-memcached &lt;br /&gt;
Found zimbra-proxy &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Select the packages to install &lt;br /&gt;
&lt;br /&gt;
Install zimbra-ldap [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-logger [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-mta [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-dnscache [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-snmp [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-store [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-apache [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-spell [Y] &lt;br /&gt;
&lt;br /&gt;
Install zimbra-memcached [Y] N &lt;br /&gt;
&lt;br /&gt;
Install zimbra-proxy [Y] N &lt;br /&gt;
Checking required space for zimbra-core &lt;br /&gt;
Checking space for zimbra-store &lt;br /&gt;
Checking required packages for zimbra-store &lt;br /&gt;
zimbra-store package check complete. &lt;br /&gt;
&lt;br /&gt;
Installing: &lt;br /&gt;
    zimbra-core &lt;br /&gt;
    zimbra-ldap &lt;br /&gt;
    zimbra-logger &lt;br /&gt;
    zimbra-mta &lt;br /&gt;
    zimbra-snmp &lt;br /&gt;
    zimbra-store &lt;br /&gt;
    zimbra-apache &lt;br /&gt;
    zimbra-spell &lt;br /&gt;
&lt;br /&gt;
The system will be modified.  Continue? [N] &lt;br /&gt;
Removing /opt/zimbra &lt;br /&gt;
Removing zimbra crontab entry...done. &lt;br /&gt;
Cleaning up zimbra init scripts...done. &lt;br /&gt;
Cleaning up /etc/ld.so.conf...done. &lt;br /&gt;
Cleaning up /etc/prelink.conf...done. &lt;br /&gt;
Cleaning up /etc/security/limits.conf...done. &lt;br /&gt;
&lt;br /&gt;
Finished removing Zimbra Collaboration Server. &lt;br /&gt;
&lt;br /&gt;
Installing packages &lt;br /&gt;
&lt;br /&gt;
    zimbra-core......zimbra-core-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm... &lt;br /&gt;
 zimbra-ldap......zimbra-ldap-8.6.0_GA_1153.RHEL6_64-20141215151155.x86_64.rpm...doreate domain: [sysmet-zimbra.c.zimbra-sysnet.internal] sysnetglobal.com &lt;br /&gt;
	MX: mail.sysnetglobal.com (10.240.40.228) &lt;br /&gt;
	MX: mail.sysnetglobal.net (10.240.40.228) &lt;br /&gt;
&lt;br /&gt;
	Interface: 10.240.40.228 &lt;br /&gt;
	Interface: 127.0.0.1 &lt;br /&gt;
	Interface: ::1 &lt;br /&gt;
done. &lt;br /&gt;
Checking for port conflicts &lt;br /&gt;
&lt;br /&gt;
Main menu &lt;br /&gt;
1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
        +Create Admin User:                    yes                           &lt;br /&gt;
        +Admin user to create:                 admin@sysnetglobal.com           &lt;br /&gt;
******* +Admin Password                        UNSET                         &lt;br /&gt;
        +Anti-virus quarantine user:           virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
        +Enable automated spam training:       yes                           &lt;br /&gt;
        +Spam training user:                   spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
        +Non-spam(Ham) training user:          ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
        +SMTP host:                            sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
        +Web server HTTP rus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 4 &lt;br /&gt;
Password for admin@sysnetglobal.com (min 6 characters): [abrQ3Kmjp] sysnet123tetra &lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com           &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] 23 &lt;br /&gt;
Version update destination address: [admin@sysnetglobal.com] 24 &lt;br /&gt;
Must enter a valid email address. &lt;br /&gt;
Version update destination address: [admin@sysmet-zimbra] admin@sysnetglobal.com &lt;br /&gt;
&lt;br /&gt;
Store configuration &lt;br /&gt;
&lt;br /&gt;
   1) Status:                                  Enabled                       &lt;br /&gt;
   2) Create Admin User:                       yes                           &lt;br /&gt;
   3) Admin user to create:                    admin@sysnetglobal.com           &lt;br /&gt;
   4) Admin Password                           set                           &lt;br /&gt;
   5) Anti-virus quarantine user:              virus-quarantine.fqxwyynob@sysnetglobal.com &lt;br /&gt;
   6) Enable automated spam training:          yes                           &lt;br /&gt;
   7) Spam training user:                      spam.98wsrsws@sysnetglobal.com   &lt;br /&gt;
   8) Non-spam(Ham) training user:             ham.vybghdap@sysnetglobal.com    &lt;br /&gt;
   9) SMTP host:                               sysmet-zimbra.c.zimbra-sysnet.internal &lt;br /&gt;
  10) Web server HTTP port:                    80                            &lt;br /&gt;
  11) Web server HTTPS port:                   443                           &lt;br /&gt;
  12) Web server mode:                         https                         &lt;br /&gt;
  13) IMAP server port:                        143                           &lt;br /&gt;
  14) IMAP server SSL port:                    993                           &lt;br /&gt;
  15) POP server port:                         110                           &lt;br /&gt;
  16) POP server SSL port:                     995                           &lt;br /&gt;
  17) Use spell check server:                  yes                           &lt;br /&gt;
  18) Spell server URL:                        http://sysmet-zimbra.c.zimbra-sysnet.internal:7780/aspell.php &lt;br /&gt;
  19) Configure for use with mail proxy:       FALSE                         &lt;br /&gt;
  20) Configure for use with web proxy:        FALSE                         &lt;br /&gt;
  21) Enable version update checks:            TRUE                          &lt;br /&gt;
  22) Enable version update notifications:     TRUE                          &lt;br /&gt;
  23) Version update notification email:       admin@sysnetglobal.com        &lt;br /&gt;
  24) Version update source email:             admin@sysnetglobal.com           &lt;br /&gt;
  25) Install mailstore (service webapp):      yes                           &lt;br /&gt;
  26) Install UI (zimbra,zimbraAdmin webapps): yes                           &lt;br /&gt;
&lt;br /&gt;
Select, or &#039;r&#039; for previous menu [r] r &lt;br /&gt;
Main menu &lt;br /&gt;
&lt;br /&gt;
   1) Common Configuration:                                                  &lt;br /&gt;
   2) zimbra-ldap:                             Enabled                       &lt;br /&gt;
   3) zimbra-logger:                           Enabled                       &lt;br /&gt;
   4) zimbra-mta:                              Enabled                       &lt;br /&gt;
   5) zimbra-snmp:                             Enabled                       &lt;br /&gt;
   6) zimbra-store:                            Enabled                       &lt;br /&gt;
   7) zimbra-spell:                            Enabled                       &lt;br /&gt;
   8) Default Class of Service Configuration:                                &lt;br /&gt;
   s) Save config to file                                                    &lt;br /&gt;
   x) Expand menu                                                            &lt;br /&gt;
   q) Quit                                    &lt;br /&gt;
&lt;br /&gt;
*** CONFIGURATION COMPLETE - press &#039;a&#039; to apply &lt;br /&gt;
Select from menu, or press &#039;a&#039; to apply config (? - help) a &lt;br /&gt;
Save configuration data to a file? [Yes] &lt;br /&gt;
Save config in file: [/opt/zimbra/config.30782] &lt;br /&gt;
Saving config in /opt/zimbra/config.30782...done. &lt;br /&gt;
The system will be modified - continue? [No] Yes &lt;br /&gt;
Operations logged to /tmp/zmsetup04052015-035300.log &lt;br /&gt;
Setting local config values... &lt;br /&gt;
...done. &lt;br /&gt;
Initializing core config...Setting up CA...done. &lt;br /&gt;
Deploying CA to /opt/zimbra/conf/ca ...done. &lt;br /&gt;
Creating SSL zimbra-store certificate...done. &lt;br /&gt;
Creating new zimbra-ldap SSL certificate...done. &lt;br /&gt;
Creating new zimbra-mta SSL certificate...done. &lt;br /&gt;
Installing mailboxd SSL certificates...done. &lt;br /&gt;
Installing MTA SSL certificates...done. &lt;br /&gt;
Installing LDAP SSL certificate...done. &lt;br /&gt;
Initializing ldap...done. &lt;br /&gt;
Setting replication password...done. &lt;br /&gt;
Setting Postfix password...done. &lt;br /&gt;
Setting amavis password...done. &lt;br /&gt;
Setting nginx password...done. &lt;br /&gt;
Setting BES searcher  password...done. &lt;br /&gt;
Creating server entry for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
Setting Zimbra IP Mode...done. &lt;br /&gt;
Saving CA in ldap ...done. &lt;br /&gt;
Saving SSL Certificate in ldap ...done. &lt;br /&gt;
Setting spell check URL...done. &lt;br /&gt;
Setting service ports on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
Setting zimbraFeatureTasksEnabled=TRUE...done. &lt;br /&gt;
Setting zimbraFeatureBriefcasesEnabled=TRUE...done. &lt;br /&gt;
Setting TimeZone Preference...done. &lt;br /&gt;
Initializing mta config...done. &lt;br /&gt;
Setting services on sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
Adding sysmet-zimbra.c.zimbra-sysnet.internal to zimbraMailHostPool in default COS...done. &lt;br /&gt;
Creating domain sysmet-zimbra...done. &lt;br /&gt;
Setting default domain name...done. &lt;br /&gt;
Creating domain sysnetglobal.com...already exists. &lt;br /&gt;
Creating admin account admin@sysnetglobal.com...done. &lt;br /&gt;
Creating root alias...done. &lt;br /&gt;
Creating postmaster alias...done. &lt;br /&gt;
Creating user spam.98wsrsws@sysnetglobal.com...done. &lt;br /&gt;
Creating user ham.vybghdap@sysnetglobal.com...done. &lt;br /&gt;
Creating user virus-quarantine.fqxwyynob@sysnetglobal.com...done. &lt;br /&gt;
Setting spam training and Anti-virus quarantine accounts...done. &lt;br /&gt;
Initializing store sql database...done. &lt;br /&gt;
Setting zimbraSmtpHostname for sysmet-zimbra.c.zimbra-sysnet.internal...done. &lt;br /&gt;
Configuring SNMP...done. &lt;br /&gt;
Setting up syslog.conf...done. &lt;br /&gt;
Starting servers...done. &lt;br /&gt;
Installing common zimlets... &lt;br /&gt;
	com_zimbra_srchhighlighter...done. &lt;br /&gt;
	com_zimbra_proxy_config...done. &lt;br /&gt;
	com_zimbra_mailarchive...done. &lt;br /&gt;
	com_zimbra_phone...done. &lt;br /&gt;
	com_zimbra_ymemoticons...done. &lt;br /&gt;
	com_zimbra_cert_manager...done. &lt;br /&gt;
	com_zimbra_clientuploader...done. &lt;br /&gt;
	com_zimbra_tooltip...done. &lt;br /&gt;
	com_zimbra_bulkprovision...done. &lt;br /&gt;
	com_zimbra_viewmail...done. &lt;br /&gt;
	com_zimbra_adminversioncheck...done. &lt;br /&gt;
	com_zimbra_email...done. &lt;br /&gt;
	com_zimbra_webex...done. &lt;br /&gt;
	com_zimbra_date...done. &lt;br /&gt;
	com_zimbra_attachmail...done. &lt;br /&gt;
	com_zimbra_url...done. &lt;br /&gt;
	com_zimbra_attachcontacts...done. &lt;br /&gt;
Finished installing common zimlets. &lt;br /&gt;
Restarting mailboxd...done. &lt;br /&gt;
Creating galsync account for default domain...done. &lt;br /&gt;
&lt;br /&gt;
You have the option of notifying Zimbra of your installation. &lt;br /&gt;
This helps us to track the uptake of the Zimbra Collaboration Server. &lt;br /&gt;
The only information that will be transmitted is: &lt;br /&gt;
	The VERSION of zcs installed (8.6.0_GA_1153_RHEL6_64) &lt;br /&gt;
	The ADMIN EMAIL ADDRESS created (admin@sysnetglobal.com) &lt;br /&gt;
&lt;br /&gt;
Notify Zimbra of your installation? [Yes] no &lt;br /&gt;
Notification skipped &lt;br /&gt;
Setting up zimbra crontab...done. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Moving /tmp/zmsetup04052015-035300.log to /opt/zimbra/log &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Configuration complete - press return to exit&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1922</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1922"/>
		<updated>2015-04-16T11:44:40Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Local]]&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1921</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1921"/>
		<updated>2015-04-16T11:43:47Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Tetra Local]]&lt;br /&gt;
&#039;&#039;&#039;Implementation of sysnetglobal mailserver&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1920</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1920"/>
		<updated>2015-04-16T11:39:45Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&#039;&#039;&#039;Implementation of sysnetglobal mailserver&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1919</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1919"/>
		<updated>2015-04-16T11:38:29Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
&#039;&#039;&#039;Implementation of sysnetglobal mailserver&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1918</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1918"/>
		<updated>2015-04-16T11:36:45Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:sysnetglobal]]&lt;br /&gt;
Implementation of sysnetglobal mailserver&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1917</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1917"/>
		<updated>2015-04-16T11:36:09Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Implementation of sysnetglobal mailserver&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1916</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1916"/>
		<updated>2015-04-16T11:35:32Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Implementation of sysnetglobal mailserver]]&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1915</id>
		<title>Category:Sysnetglobal</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Category:Sysnetglobal&amp;diff=1915"/>
		<updated>2015-04-16T11:33:42Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Created page with &amp;quot;category:Sysnetglobal&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Sysnetglobal]]&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Main_Page/Outgoing_SMTP_Authentication-with-username-and-password-for-TIPL&amp;diff=1800</id>
		<title>Main Page/Outgoing SMTP Authentication-with-username-and-password-for-TIPL</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Main_Page/Outgoing_SMTP_Authentication-with-username-and-password-for-TIPL&amp;diff=1800"/>
		<updated>2015-04-08T06:46:10Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== &#039;&#039;&#039;Outgoing_SMTP_Authentication&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To configure authentication for the MTA relay, follow these steps (shell console, as the Zimbra user):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1.&#039;&#039;&#039; Create a text file mapping the name/password (generally the ISP login/password) should be used for each MTA relay server. You can have MTA relay servers in this file, just add one per line: &#039;&#039;&#039;echo smtp-relay.gmail.com manish.kaushik@tipl.com:manish.kaushik_!@# &amp;gt; /opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2.&#039;&#039;&#039; Create a postfix lookup table: &#039;&#039;&#039;postmap hash:/opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3.&#039;&#039;&#039; To test that the lookup table is correct, the following should return username:password: &#039;&#039;&#039;postmap -q smtp-relay.gmail.com /opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4.&#039;&#039;&#039; Configure postfix to use the new password map: &#039;&#039;&#039;postconf -e smtp_sasl_password_maps=hash:/opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;5.&#039;&#039;&#039; Configure postfix to use SSL authentication: &#039;&#039;&#039;postconf -e smtp_sasl_auth_enable=yes&lt;br /&gt;
Enable TLS: postconf -e smtp_use_tls=yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;6.&#039;&#039;&#039; By default, Zimbra is configured not to allow plain text authentication. However, we have found that most ISPs only accept plain text. So it is recommended to enable plain text authentication:&lt;br /&gt;
&#039;&#039;&#039;postconf -e smtp_sasl_security_options=noanonymous&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;7.&#039;&#039;&#039; Configure postfix to use the outgoing server name rather than the canonical server name (what is returned from a DNS lookup). For example: If the MTA relay is set to smtp.gmail.com but the canonical server name is gmail-smtp.l.google.com then password lookup will fail as there is no entry for smtp.l.google.com. To overcome this:&lt;br /&gt;
&#039;&#039;&#039;postconf -e smtp_cname_overrides_servername=no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8.&#039;&#039;&#039; Restart postfix: &#039;&#039;&#039;postfix reload&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;9.&#039;&#039;&#039; Send an email and watch the Zimbra logs: &#039;&#039;&#039;less /var/log/zimbra.log&lt;br /&gt;
&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
https://wiki.zimbra.com/wiki/Outgoing_SMTP_Authentication&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Main_Page/Outgoing_SMTP_Authentication-with-username-and-password-for-TIPL&amp;diff=1799</id>
		<title>Main Page/Outgoing SMTP Authentication-with-username-and-password-for-TIPL</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Main_Page/Outgoing_SMTP_Authentication-with-username-and-password-for-TIPL&amp;diff=1799"/>
		<updated>2015-04-08T06:44:54Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== &#039;&#039;&#039;Outgoing_SMTP_Authentication&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To configure authentication for the MTA relay, follow these steps (shell console, as the Zimbra user):&lt;br /&gt;
&lt;br /&gt;
1. Create a text file mapping the name/password (generally the ISP login/password) should be used for each MTA relay server. You can have MTA relay servers in this file, just add one per line: &#039;&#039;&#039;echo smtp-relay.gmail.com manish.kaushik@tipl.com:manish.kaushik_!@# &amp;gt; /opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
2. Create a postfix lookup table: &#039;&#039;&#039;postmap hash:/opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
3. To test that the lookup table is correct, the following should return username:password: &#039;&#039;&#039;postmap -q smtp-relay.gmail.com /opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
4. Configure postfix to use the new password map: &#039;&#039;&#039;postconf -e smtp_sasl_password_maps=hash:/opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
5. Configure postfix to use SSL authentication: &#039;&#039;&#039;postconf -e smtp_sasl_auth_enable=yes&lt;br /&gt;
Enable TLS: postconf -e smtp_use_tls=yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
6. By default, Zimbra is configured not to allow plain text authentication. However, we have found that most ISPs only accept plain text. So it is recommended to enable plain text authentication:&lt;br /&gt;
&#039;&#039;&#039;postconf -e smtp_sasl_security_options=noanonymous&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
7. Configure postfix to use the outgoing server name rather than the canonical server name (what is returned from a DNS lookup). For example: If the MTA relay is set to smtp.gmail.com but the canonical server name is gmail-smtp.l.google.com then password lookup will fail as there is no entry for smtp.l.google.com. To overcome this:&lt;br /&gt;
&#039;&#039;&#039;postconf -e smtp_cname_overrides_servername=no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
8. Restart postfix: &#039;&#039;&#039;postfix reload&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
9. Send an email and watch the Zimbra logs: &#039;&#039;&#039;less /var/log/zimbra.log&lt;br /&gt;
&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
https://wiki.zimbra.com/wiki/Outgoing_SMTP_Authentication&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=Main_Page/Outgoing_SMTP_Authentication-with-username-and-password-for-TIPL&amp;diff=1798</id>
		<title>Main Page/Outgoing SMTP Authentication-with-username-and-password-for-TIPL</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=Main_Page/Outgoing_SMTP_Authentication-with-username-and-password-for-TIPL&amp;diff=1798"/>
		<updated>2015-04-08T06:43:28Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Created page with &amp;quot; == &amp;#039;&amp;#039;&amp;#039;Outgoing_SMTP_Authentication&amp;#039;&amp;#039;&amp;#039; ==   To configure authentication for the MTA relay, follow these steps (shell console, as the Zimbra user):  1. Create a text file mappi...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== &#039;&#039;&#039;Outgoing_SMTP_Authentication&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To configure authentication for the MTA relay, follow these steps (shell console, as the Zimbra user):&lt;br /&gt;
&lt;br /&gt;
1. Create a text file mapping the name/password (generally the ISP login/password) should be used for each MTA relay server. You can have MTA relay servers in this file, just add one per line: &#039;&#039;&#039;echo smtp-relay.gmail.com manish.kaushik@tipl.com:manish.kaushik_!@# &amp;gt; /opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
2. Create a postfix lookup table: &#039;&#039;&#039;postmap hash:/opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
3. To test that the lookup table is correct, the following should return username:password: &#039;&#039;&#039;postmap -q smtp-relay.gmail.com /opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
4. Configure postfix to use the new password map: &#039;&#039;&#039;postconf -e smtp_sasl_password_maps=hash:/opt/zimbra/conf/relay_password&#039;&#039;&#039;&lt;br /&gt;
5. Configure postfix to use SSL authentication: &#039;&#039;&#039;postconf -e smtp_sasl_auth_enable=yes&lt;br /&gt;
Enable TLS: postconf -e smtp_use_tls=yes&#039;&#039;&#039;&lt;br /&gt;
6. By default, Zimbra is configured not to allow plain text authentication. However, we have found that most ISPs only accept plain text. So it is recommended to enable plain text authentication:&lt;br /&gt;
&#039;&#039;&#039;postconf -e smtp_sasl_security_options=noanonymous&#039;&#039;&#039;&lt;br /&gt;
7. Configure postfix to use the outgoing server name rather than the canonical server name (what is returned from a DNS lookup). For example: If the MTA relay is set to smtp.gmail.com but the canonical server name is gmail-smtp.l.google.com then password lookup will fail as there is no entry for smtp.l.google.com. To overcome this:&lt;br /&gt;
&#039;&#039;&#039;postconf -e smtp_cname_overrides_servername=no&#039;&#039;&#039;&lt;br /&gt;
8. Restart postfix: &#039;&#039;&#039;postfix reload&#039;&#039;&#039;&lt;br /&gt;
9. Send an email and watch the Zimbra logs: &#039;&#039;&#039;less /var/log/zimbra.log&lt;br /&gt;
&#039;&#039;&#039;&lt;br /&gt;
https://wiki.zimbra.com/wiki/Outgoing_SMTP_Authentication&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=How_to_delete_all_recipient_at_a_time_in_openemm&amp;diff=1781</id>
		<title>How to delete all recipient at a time in openemm</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=How_to_delete_all_recipient_at_a_time_in_openemm&amp;diff=1781"/>
		<updated>2015-03-28T12:13:50Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Created page with &amp;quot;&amp;#039;&amp;#039;&amp;#039;Delete all Recipient&amp;#039;&amp;#039;&amp;#039;  1. Create a target group that contains all reciepients (like mailtype =  0 or mailtype &amp;gt;0)  2. Click on the link &amp;quot;Delete recipients of this target&amp;quot;...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Delete all Recipient&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
1. Create a target group that contains all reciepients (like mailtype = &lt;br /&gt;
0 or mailtype &amp;gt;0)&lt;br /&gt;
&lt;br /&gt;
2. Click on the link &amp;quot;Delete recipients of this target&amp;quot; in the view of &lt;br /&gt;
this target.&lt;br /&gt;
&lt;br /&gt;
This will delete all the recipient.&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=NRPE-AND-NRPE-PLUGIN-ON-CLIENT-MACHINE(SANDHAR)&amp;diff=1769</id>
		<title>NRPE-AND-NRPE-PLUGIN-ON-CLIENT-MACHINE(SANDHAR)</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=NRPE-AND-NRPE-PLUGIN-ON-CLIENT-MACHINE(SANDHAR)&amp;diff=1769"/>
		<updated>2015-02-06T13:34:58Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Created page with &amp;quot;&amp;#039;&amp;#039;&amp;#039;STEPS TO CONFIGURE NRPE AND NRPE PLUGIN ON CLIENT MACHINE:-&amp;#039;&amp;#039;&amp;#039;   ON CLIENT MACHINE:   Install libraries for dependencies as it would help in compiling the NRPE packages.   ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;STEPS TO CONFIGURE NRPE AND NRPE PLUGIN ON CLIENT MACHINE:-&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ON CLIENT MACHINE: &lt;br /&gt;
&lt;br /&gt;
Install libraries for dependencies as it would help in compiling the NRPE packages.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Step 1- install libraries &lt;br /&gt;
&lt;br /&gt;
# yum install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel &lt;br /&gt;
&lt;br /&gt;
step 2- user and password &lt;br /&gt;
&lt;br /&gt;
# useradd nagios &lt;br /&gt;
# passwd nagios &lt;br /&gt;
&lt;br /&gt;
step 3-extract plugins &lt;br /&gt;
&lt;br /&gt;
# tar –xvf nagios-plugins-1.5.tar.gz &lt;br /&gt;
&lt;br /&gt;
step 4- compile and install &lt;br /&gt;
# cd nagios-plugins-1.5 &lt;br /&gt;
# ./configure &lt;br /&gt;
# make &lt;br /&gt;
# make install &lt;br /&gt;
step 5-permissions on plugins &lt;br /&gt;
&lt;br /&gt;
# chown nagios.nagios /usr/local/nagios &lt;br /&gt;
# chown -R nagios.nagios /usr/local/nagios/libexec &lt;br /&gt;
step 6-install xinetd &lt;br /&gt;
&lt;br /&gt;
#yum install xinetd &lt;br /&gt;
&lt;br /&gt;
step 7-install nrpe &lt;br /&gt;
&lt;br /&gt;
tar xzf nrpe-2.15.tar.gz &lt;br /&gt;
# cd nrpe-2.15 &lt;br /&gt;
# ./configure &lt;br /&gt;
# make all &lt;br /&gt;
# make install-plugin &lt;br /&gt;
# make install-daemon &lt;br /&gt;
# make install-daemon-config &lt;br /&gt;
#make install-xinetd &lt;br /&gt;
&lt;br /&gt;
step 8-add nagios monitoring server ip &lt;br /&gt;
&lt;br /&gt;
#vim /etc/xinetd.d/nrpe &lt;br /&gt;
add only_from = 127.0.0.1  &amp;lt;nagios_ip_address&amp;gt; &lt;br /&gt;
#vim /etc/service &lt;br /&gt;
add nrpe            5666/tcp                 #NRPE &lt;br /&gt;
&lt;br /&gt;
step 9-restart xinetd &lt;br /&gt;
&lt;br /&gt;
#/etc/init.d/xinetd restart &lt;br /&gt;
&lt;br /&gt;
step 10-verify nrpe daemon &lt;br /&gt;
&lt;br /&gt;
# netstat -at | grep nrpe &lt;br /&gt;
&lt;br /&gt;
tcp        0      0 *:nrpe                      *:*                         LISTEN &lt;br /&gt;
&lt;br /&gt;
step 11-To check nrpe daemon is workig properly &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H localhost &lt;br /&gt;
NRPE v2.15 &lt;br /&gt;
&lt;br /&gt;
step 12- customize nrpe commands and add commands &lt;br /&gt;
&lt;br /&gt;
# vim /usr/local/nagios/etc/nrpe.cfg &lt;br /&gt;
command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10 &lt;br /&gt;
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 &lt;br /&gt;
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/mapper/vg_mail1-LogVol01 &lt;br /&gt;
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z &lt;br /&gt;
command[check_cpu]=/usr/local/nagios/libexec/check_cpu.sh -w 60 -c 70 &lt;br /&gt;
command[check_mem]=/usr/local/nagios/libexec/check_mem_avail -w 10 -c 5 &lt;br /&gt;
command[check_queue]=/usr/local/nagios/libexec/check_postfix_queue -w 200 -c 250 &lt;br /&gt;
command[check_zimbra_lmtp]=/usr/local/nagios/libexec/check_smtp -H localhost -p 7025 -e &#039;220 node.sandhar.in Zimbra LMTP server ready&#039; &lt;br /&gt;
command[check_smtp]=/usr/local/nagios/libexec/check_smtp -H localhost &lt;br /&gt;
&lt;br /&gt;
step 13 -run /etc/init.d/xinetd restart &lt;br /&gt;
&lt;br /&gt;
step 14 – reload nagios on nagios server: &lt;br /&gt;
#/etc/init.d/nagios reload &lt;br /&gt;
&lt;br /&gt;
step 15 -After then we should call all services from nagios server: &lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_zimbra_lmtp &lt;br /&gt;
ERROR: could not complete SSL handshake &lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_smtp &lt;br /&gt;
ERROR: could not complete SSL handshake &lt;br /&gt;
&lt;br /&gt;
That means we are not able to call services from nagios server to client machine. This is happening because of openssl library missing. For this we need to run nrpe as daemon with non ssl. The command is: &lt;br /&gt;
# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d -n &lt;br /&gt;
Now in future whenever we will add services of mailserver in sandhar, we need to follow below steps: &lt;br /&gt;
&lt;br /&gt;
step 16-kill the nrpe running and run nrpe as daemon. &lt;br /&gt;
    # ps -elf | grep nrpe &lt;br /&gt;
0 S root       747 15083  0  80   0 - 25813 pipe_w 10:59 pts/0    00:00:00 grep nrpe &lt;br /&gt;
5 S nagios   22682     1  0  80   0 -  9810 poll_s Feb02 ?        00:00:00 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d -n &lt;br /&gt;
&lt;br /&gt;
   # kill -9  22682 &lt;br /&gt;
   # /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d -n &lt;br /&gt;
&lt;br /&gt;
step -17 Now test from nagios server. &lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_zimbra_lmtp &lt;br /&gt;
SMTP OK - 0.001 sec. response time|time=0.000956s;;;0.000000 &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_smtp &lt;br /&gt;
SMTP OK - 0.002 sec. response time|time=0.002258s;;;0.000000 &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_cpu &lt;br /&gt;
OK - user: 23.22, nice: 1.11, sys: 2.95, iowait: 0.62, irq: 0.50, softirq: 0.74 idle: 74.33 | &#039;user&#039;=23.22 &#039;nice&#039;=1.11 &#039;sys&#039;=2.95 &#039;softirq&#039;=0.74 &#039;iowait&#039;=0.62 &#039;irq&#039;=0.50 &#039;idle&#039;=74.33 &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_queue &lt;br /&gt;
33 mail(s) in queue | mail_queue=33 &lt;br /&gt;
&lt;br /&gt;
step 18- Add host on nagios server of sandhar. &lt;br /&gt;
# vim /usr/local/nagios/etc/objects/linux-box.cfg &lt;br /&gt;
define host{ &lt;br /&gt;
        use                      linux-server &lt;br /&gt;
        host_name               CORP-MAILSERVER &lt;br /&gt;
        alias                   CORP-MAILSERVER &lt;br /&gt;
        address                172.17.16.22 &lt;br /&gt;
        hostgroups      Windows Server &lt;br /&gt;
 } &lt;br /&gt;
&lt;br /&gt;
step 19- Add services on nagios server. &lt;br /&gt;
&lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Current Users &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_users &lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Server Load &lt;br /&gt;
         notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_load &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Disk Space &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_hda1 &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Zombie process &lt;br /&gt;
           notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_zombie_procs  &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description CPU Load &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_cpu &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Memory Utilization &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_mem &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Mail Queue &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_queue &lt;br /&gt;
} &lt;br /&gt;
define service{ use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Mail Queue &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_queue  &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description LMTP &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_zimbra_lmtp &lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description SMTP &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_smtp &lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
step 20- verify the nagios.cfg file. &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg &lt;br /&gt;
Checking services... &lt;br /&gt;
	Checked 815 services. &lt;br /&gt;
Checking hosts... &lt;br /&gt;
	Checked 108 hosts. &lt;br /&gt;
Checking host groups... &lt;br /&gt;
	Checked 5 host groups. &lt;br /&gt;
Checking service groups... &lt;br /&gt;
	Checked 0 service groups. &lt;br /&gt;
Checking contacts... &lt;br /&gt;
	Checked 16 contacts. &lt;br /&gt;
Checking contact groups... &lt;br /&gt;
	Checked 12 contact groups. &lt;br /&gt;
Checking service escalations... &lt;br /&gt;
	Checked 2962 service escalations. &lt;br /&gt;
Checking service dependencies... &lt;br /&gt;
	Checked 0 service dependencies. &lt;br /&gt;
Checking host escalations... &lt;br /&gt;
	Checked 0 host escalations. &lt;br /&gt;
Checking host dependencies... &lt;br /&gt;
	Checked 0 host dependencies. &lt;br /&gt;
Checking commands... &lt;br /&gt;
	Checked 70 commands. &lt;br /&gt;
Checking time periods... &lt;br /&gt;
	Checked 6 time periods. &lt;br /&gt;
Checking for circular paths between hosts... &lt;br /&gt;
Checking for circular host and service dependencies... &lt;br /&gt;
Checking global event handlers... &lt;br /&gt;
Checking obsessive compulsive processor commands... &lt;br /&gt;
Checking misc settings... &lt;br /&gt;
&lt;br /&gt;
Total Warnings: 0 &lt;br /&gt;
Total Errors:   0 &lt;br /&gt;
&lt;br /&gt;
If we get below error  in the escalation.cfg file that means there is empty services defined for any host. For this we need to check config file. &lt;br /&gt;
ERROR:  could not expand the services defined in ‘service escalation’ config ( /usr/local/nagios/etc/objects/escalation.cfg ) &lt;br /&gt;
&lt;br /&gt;
First disable the escalation.cfg in nagios.cfg file: &lt;br /&gt;
#cfg_file=/usr/local/nagios/etc/objects/escalation.cfg &lt;br /&gt;
 Second verify the config file nagios.cfg file: &lt;br /&gt;
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg &lt;br /&gt;
It will show you the warning like this: &lt;br /&gt;
Checking host escalations... &lt;br /&gt;
	Checked 0 host escalations. &lt;br /&gt;
Checking host dependencies... &lt;br /&gt;
	Warning: ‘node1.sandhar.in’ &lt;br /&gt;
Checking commands... &lt;br /&gt;
	Checked 70 commands. &lt;br /&gt;
&lt;br /&gt;
To resolve this either you define the services for that host or disable that host. And verify the nagios.cfg file. &lt;br /&gt;
If total warnings is 0 and total errors is 0 then reload nagios. &lt;br /&gt;
&lt;br /&gt;
# /etc/init.d/nagios reload&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=User:Mithilesh&amp;diff=1768</id>
		<title>User:Mithilesh</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=User:Mithilesh&amp;diff=1768"/>
		<updated>2015-02-06T13:15:36Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: Blanked the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
	<entry>
		<id>https://wiki.tetrain.com/index.php?title=User:Mithilesh&amp;diff=1767</id>
		<title>User:Mithilesh</title>
		<link rel="alternate" type="text/html" href="https://wiki.tetrain.com/index.php?title=User:Mithilesh&amp;diff=1767"/>
		<updated>2015-02-06T13:13:50Z</updated>

		<summary type="html">&lt;p&gt;Mithilesh: NRPE installation in sandhar Mailserver&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;STEPS TO CONFIGURE NRPE AND NRPE PLUGIN ON CLIENT MACHINE:-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ON CLIENT MACHINE: &lt;br /&gt;
&lt;br /&gt;
Install libraries for dependencies as it would help in compiling the NRPE packages.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Step 1- install libraries &lt;br /&gt;
&lt;br /&gt;
# yum install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel &lt;br /&gt;
&lt;br /&gt;
step 2- user and password &lt;br /&gt;
&lt;br /&gt;
# useradd nagios &lt;br /&gt;
# passwd nagios &lt;br /&gt;
&lt;br /&gt;
step 3-extract plugins &lt;br /&gt;
&lt;br /&gt;
# tar –xvf nagios-plugins-1.5.tar.gz &lt;br /&gt;
&lt;br /&gt;
step 4- compile and install &lt;br /&gt;
# cd nagios-plugins-1.5 &lt;br /&gt;
# ./configure &lt;br /&gt;
# make &lt;br /&gt;
# make install &lt;br /&gt;
step 5-permissions on plugins &lt;br /&gt;
&lt;br /&gt;
# chown nagios.nagios /usr/local/nagios &lt;br /&gt;
# chown -R nagios.nagios /usr/local/nagios/libexec &lt;br /&gt;
step 6-install xinetd &lt;br /&gt;
&lt;br /&gt;
#yum install xinetd &lt;br /&gt;
&lt;br /&gt;
step 7-install nrpe &lt;br /&gt;
&lt;br /&gt;
tar xzf nrpe-2.15.tar.gz &lt;br /&gt;
# cd nrpe-2.15 &lt;br /&gt;
# ./configure &lt;br /&gt;
# make all &lt;br /&gt;
# make install-plugin &lt;br /&gt;
# make install-daemon &lt;br /&gt;
# make install-daemon-config &lt;br /&gt;
#make install-xinetd &lt;br /&gt;
&lt;br /&gt;
step 8-add nagios monitoring server ip &lt;br /&gt;
&lt;br /&gt;
#vim /etc/xinetd.d/nrpe &lt;br /&gt;
add only_from = 127.0.0.1  &amp;lt;nagios_ip_address&amp;gt; &lt;br /&gt;
#vim /etc/service &lt;br /&gt;
add nrpe            5666/tcp                 #NRPE &lt;br /&gt;
&lt;br /&gt;
step 9-restart xinetd &lt;br /&gt;
&lt;br /&gt;
#/etc/init.d/xinetd restart &lt;br /&gt;
&lt;br /&gt;
step 10-verify nrpe daemon &lt;br /&gt;
&lt;br /&gt;
# netstat -at | grep nrpe &lt;br /&gt;
&lt;br /&gt;
tcp        0      0 *:nrpe                      *:*                         LISTEN &lt;br /&gt;
&lt;br /&gt;
step 11-To check nrpe daemon is workig properly &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H localhost &lt;br /&gt;
NRPE v2.15 &lt;br /&gt;
&lt;br /&gt;
step 12- customize nrpe commands and add commands &lt;br /&gt;
&lt;br /&gt;
# vim /usr/local/nagios/etc/nrpe.cfg &lt;br /&gt;
command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10 &lt;br /&gt;
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 &lt;br /&gt;
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/mapper/vg_mail1-LogVol01 &lt;br /&gt;
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z &lt;br /&gt;
command[check_cpu]=/usr/local/nagios/libexec/check_cpu.sh -w 60 -c 70 &lt;br /&gt;
command[check_mem]=/usr/local/nagios/libexec/check_mem_avail -w 10 -c 5 &lt;br /&gt;
command[check_queue]=/usr/local/nagios/libexec/check_postfix_queue -w 200 -c 250 &lt;br /&gt;
command[check_zimbra_lmtp]=/usr/local/nagios/libexec/check_smtp -H localhost -p 7025 -e &#039;220 node.sandhar.in Zimbra LMTP server ready&#039; &lt;br /&gt;
command[check_smtp]=/usr/local/nagios/libexec/check_smtp -H localhost &lt;br /&gt;
&lt;br /&gt;
step 13 -run /etc/init.d/xinetd restart &lt;br /&gt;
&lt;br /&gt;
step 14 – reload nagios on nagios server: &lt;br /&gt;
#/etc/init.d/nagios reload &lt;br /&gt;
&lt;br /&gt;
step 15 -After then we should call all services from nagios server: &lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_zimbra_lmtp &lt;br /&gt;
ERROR: could not complete SSL handshake &lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_smtp &lt;br /&gt;
ERROR: could not complete SSL handshake &lt;br /&gt;
&lt;br /&gt;
That means we are not able to call services from nagios server to client machine. This is happening because of openssl library missing. For this we need to run nrpe as daemon with non ssl. The command is: &lt;br /&gt;
# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d -n &lt;br /&gt;
Now in future whenever we will add services of mailserver in sandhar, we need to follow below steps: &lt;br /&gt;
&lt;br /&gt;
step 16-kill the nrpe running and run nrpe as daemon. &lt;br /&gt;
    # ps -elf | grep nrpe &lt;br /&gt;
0 S root       747 15083  0  80   0 - 25813 pipe_w 10:59 pts/0    00:00:00 grep nrpe &lt;br /&gt;
5 S nagios   22682     1  0  80   0 -  9810 poll_s Feb02 ?        00:00:00 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d -n &lt;br /&gt;
&lt;br /&gt;
   # kill -9  22682 &lt;br /&gt;
   # /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d -n &lt;br /&gt;
&lt;br /&gt;
step -17 Now test from nagios server. &lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_zimbra_lmtp &lt;br /&gt;
SMTP OK - 0.001 sec. response time|time=0.000956s;;;0.000000 &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_smtp &lt;br /&gt;
SMTP OK - 0.002 sec. response time|time=0.002258s;;;0.000000 &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_cpu &lt;br /&gt;
OK - user: 23.22, nice: 1.11, sys: 2.95, iowait: 0.62, irq: 0.50, softirq: 0.74 idle: 74.33 | &#039;user&#039;=23.22 &#039;nice&#039;=1.11 &#039;sys&#039;=2.95 &#039;softirq&#039;=0.74 &#039;iowait&#039;=0.62 &#039;irq&#039;=0.50 &#039;idle&#039;=74.33 &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/libexec/check_nrpe -H 172.17.16.22 -c check_queue &lt;br /&gt;
33 mail(s) in queue | mail_queue=33 &lt;br /&gt;
&lt;br /&gt;
step 18- Add host on nagios server of sandhar. &lt;br /&gt;
# vim /usr/local/nagios/etc/objects/linux-box.cfg &lt;br /&gt;
define host{ &lt;br /&gt;
        use                      linux-server &lt;br /&gt;
        host_name               CORP-MAILSERVER &lt;br /&gt;
        alias                   CORP-MAILSERVER &lt;br /&gt;
        address                172.17.16.22 &lt;br /&gt;
        hostgroups      Windows Server &lt;br /&gt;
 } &lt;br /&gt;
&lt;br /&gt;
step 19- Add services on nagios server. &lt;br /&gt;
&lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Current Users &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_users &lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Server Load &lt;br /&gt;
         notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_load &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Disk Space &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_hda1 &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Zombie process &lt;br /&gt;
           notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_zombie_procs  &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description CPU Load &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_cpu &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Memory Utilization &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_mem &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Mail Queue &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_queue &lt;br /&gt;
} &lt;br /&gt;
define service{ use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description Mail Queue &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_queue  &lt;br /&gt;
} &lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description LMTP &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_nrpe!check_zimbra_lmtp &lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
define service{ &lt;br /&gt;
          use                 generic-service &lt;br /&gt;
          host_name           CORP-MAILSERVER &lt;br /&gt;
          service_description SMTP &lt;br /&gt;
          notification_options     w,u,c,r &lt;br /&gt;
          check_command       check_smtp &lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
step 20- verify the nagios.cfg file. &lt;br /&gt;
&lt;br /&gt;
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg &lt;br /&gt;
Checking services... &lt;br /&gt;
	Checked 815 services. &lt;br /&gt;
Checking hosts... &lt;br /&gt;
	Checked 108 hosts. &lt;br /&gt;
Checking host groups... &lt;br /&gt;
	Checked 5 host groups. &lt;br /&gt;
Checking service groups... &lt;br /&gt;
	Checked 0 service groups. &lt;br /&gt;
Checking contacts... &lt;br /&gt;
	Checked 16 contacts. &lt;br /&gt;
Checking contact groups... &lt;br /&gt;
	Checked 12 contact groups. &lt;br /&gt;
Checking service escalations... &lt;br /&gt;
	Checked 2962 service escalations. &lt;br /&gt;
Checking service dependencies... &lt;br /&gt;
	Checked 0 service dependencies. &lt;br /&gt;
Checking host escalations... &lt;br /&gt;
	Checked 0 host escalations. &lt;br /&gt;
Checking host dependencies... &lt;br /&gt;
	Checked 0 host dependencies. &lt;br /&gt;
Checking commands... &lt;br /&gt;
	Checked 70 commands. &lt;br /&gt;
Checking time periods... &lt;br /&gt;
	Checked 6 time periods. &lt;br /&gt;
Checking for circular paths between hosts... &lt;br /&gt;
Checking for circular host and service dependencies... &lt;br /&gt;
Checking global event handlers... &lt;br /&gt;
Checking obsessive compulsive processor commands... &lt;br /&gt;
Checking misc settings... &lt;br /&gt;
&lt;br /&gt;
Total Warnings: 0 &lt;br /&gt;
Total Errors:   0 &lt;br /&gt;
&lt;br /&gt;
If we get below error  in the escalation.cfg file that means there is empty services defined for any host. For this we need to check config file. &lt;br /&gt;
ERROR:  could not expand the services defined in ‘service escalation’ config ( /usr/local/nagios/etc/objects/escalation.cfg ) &lt;br /&gt;
&lt;br /&gt;
First disable the escalation.cfg in nagios.cfg file: &lt;br /&gt;
#cfg_file=/usr/local/nagios/etc/objects/escalation.cfg &lt;br /&gt;
 Second verify the config file nagios.cfg file: &lt;br /&gt;
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg &lt;br /&gt;
It will show you the warning like this: &lt;br /&gt;
Checking host escalations... &lt;br /&gt;
	Checked 0 host escalations. &lt;br /&gt;
Checking host dependencies... &lt;br /&gt;
	Warning: ‘node1.sandhar.in’ &lt;br /&gt;
Checking commands... &lt;br /&gt;
	Checked 70 commands. &lt;br /&gt;
&lt;br /&gt;
To resolve this either you define the services for that host or disable that host. And verify the nagios.cfg file. &lt;br /&gt;
If total warnings is 0 and total errors is 0 then reload nagios. &lt;br /&gt;
&lt;br /&gt;
# /etc/init.d/nagios reload&lt;/div&gt;</summary>
		<author><name>Mithilesh</name></author>
	</entry>
</feed>