ZCS88-zxbackup-Disaster-Recovery: Difference between revisions

Line 268: Line 268:
If LDAP services are needed to be restored, you can do the following.<br>
If LDAP services are needed to be restored, you can do the following.<br>


===Stop ldap and move the old database aside===
===Method A===
 
====Stop ldap and move the old database aside====
<code><pre>
<code><pre>
ldap stop
ldap stop
Line 277: Line 279:
</pre></code>
</pre></code>


===Copy the backed up ldap data from Server 2===
====Copy the backed up ldap data from Server 2====
<code><pre>
<code><pre>
mkdir /tmp/ldap/
mkdir /tmp/ldap/
Line 286: Line 288:
</pre></code>
</pre></code>


===Extract the ldap.ldif file===
====Extract the ldap.ldif file====
<code><pre>
<code><pre>
tar -zxvf ldap_23_08_17#04_01_00.tar.gz ldap.ldif
tar -zxvf ldap_23_08_17#04_01_00.tar.gz ldap.ldif
</pre></code>
</pre></code>


===Restore the ldap-config===
====Restore the ldap-config====
<code><pre>
<code><pre>
cd /tmp/ldap/
cd /tmp/ldap/
Line 311: Line 313:
</pre></code>
</pre></code>


====If ldap is not starting, use the long command to start ldap====
===Method B===
<code><pre>
sudo /opt/zimbra/libexec/zmslapd -l LOCAL0 -u zimbra -h 'ldap://ldap.example.com:389 ldapi:///' -F /opt/zimbra/data/ldap/config -d -4
</pre></code>
The bottom portion of the output will usually provide a clue on why ldap is not starting.<br>


===Use zmrestoreldap===
====Use zmrestoreldap====
List all labels<br>
List all labels<br>
<code><pre>
<code><pre>
Line 333: Line 331:
zmrestoreldap -lb full-20170824.050005.077
zmrestoreldap -lb full-20170824.050005.077
</pre></code>
</pre></code>
==If ldap is not starting, use the long command to start ldap==
<code><pre>
sudo /opt/zimbra/libexec/zmslapd -l LOCAL0 -u zimbra -h 'ldap://ldap.example.com:389 ldapi:///' -F /opt/zimbra/data/ldap/config -d -4
</pre></code>
The bottom portion of the output will usually provide a clue on why ldap is not starting.<br>

Revision as of 22:24, 24 August 2017

ZCS 8.8 Article ZCS 8.8


Scenario I - Single Server

You have been running ZCS-88 using the Next Generation Suite, and you have a dedicated disk for /opt/zimbra/, something like...

/dev/mapper/vg_zcs-lv_root
xxG  xxxG   xxG  xx% /
tmpfs                /dev/shm
/dev/sda1            /boot
/dev/sda2            /opt/zimbra/

But something has happened to the server node, effecting the operating system, which will require a reinstall of the operating system, and ZCS-88.

Reinstall the Operating System

When you reinstall the operating system, make sure the disk containing /opt/zimbra/ is not mounted yet.

Reinstall ZCS-88 with Next Generation Modules

When you are ready to reinstall ZCS-88, make sure the /opt/zimbra/ is now mounted.

If it's possible, rename your production /opt/zimbra/ directory.

mv /opt/zimbra/    mv /opt/zimbraSAVE/


Now, run the installer as the root user using the software option.

./install.sh -s

*OR*

./install.sh --software

During the ZCS-88 Software Reinstall

Observe at the end of the software install, you will see the following

Running Post Installation Configuration:

Software Installation complete!

Operations logged to /tmp/install.log.SviTipi8

Now observe, you have two zimbra directories

drwxr-xr-x  30 root root 4096 Aug 24 14:29 zimbra
drwxr-xr-x  30 root root 4096 Aug 17 13:20 zimbraSAVE

Since the software install had created the /opt/zimbra/ directory, lets move it out of the way

mv /opt/zimbra/   /opt/zimbraSOFTWARE_INSTALL/

Now, lets put our production directory back into place

mv /opt/zimbraSAVE/   /opt/zimbra/

After putting your production /opt/zimbra/ directory back into place, switch to the zimbra account, and start Zimbra

su - zimbra
zmcontrol start
Host test3.zextras.local
	Starting ldap...Done.
	Starting zmconfigd...Done.
	Starting logger...Done.
	Starting convertd...Done.
	Starting mailbox...Done.
	Starting memcached...Done.
	Starting proxy...Done.
	Starting amavis...Done.
	Starting antispam...Done.
	Starting antivirus...Done.
	Starting opendkim...Done.
	Starting snmp...Done.
	Starting spell...Done.
	Starting mta...Done.
	Starting stats...Done.
	Starting service webapp...Done.
	Starting zimbra webapp...Done.
	Starting zimbraAdmin webapp...Done.
	Starting zimlet webapp...Done.
	Starting imapd...Done.

Check the status

zmcontrol status
Host test3.zextras.local
	amavis                  Running
	antispam                Running
	antivirus               Running
	convertd                Running
	imapd                   Running
	ldap                    Running
	logger                  Running
	mailbox                 Running
	memcached               Running
	mta                     Running
	opendkim                Running
	proxy                   Running
	service webapp          Running
	snmp                    Running
	spell                   Running
	stats                   Running
	zimbra webapp           Running
	zimbraAdmin webapp      Running
	zimlet webapp           Running
	zmconfigd               Running

Scenario I - Summary

Operating system needed to be installed, moving aside production Zimbra, and doing a software install, and placing production Zimbra directory back into place.

At this point, you should be up and running; however, as an option, you may want to check the user BLOBs, you can refer to this guide.

Scenario II - Single Server with corrupted mysql beyond repair

You have been running ZCS-88 using the Next Generation Suite, and you have just discovered a lot of errors in the /opt/zimbra/mysql_error.log file

You even tried to export and reimport the mysql data to no avail.

You can do the following...

Shutdown Zimbra

zmcontrol stop>

Move aside the production /opt/zimbra/ directory

mv /opt/zimbra/   /opt/zimbraSAVE/

Now, run the installer using the software only option

./install.sh -s

**OR**

./install.sh --software

Now go into the /opt/zimbraSAVE/back/ldap/ directory, and extract the ldap*.tar.gz file

gunzip ldap_23_08_17#04_01_00.tar.gz
tar -xvf ldap_23_08_17#04_01_00.tar

Restore the ldap config and user data

/opt/zimbra/libexec/slapadd -c /opt/zimbraSAVE/backup/ldap/ldap-config.ldif

/opt/zimbra/libexec/slapadd  /opt/zimbraSAVE/backup/ldap/ldap.ldif

Extract localconfig.xml file from NG backups, and place into /opt/zimbra/conf/

cd /opt/zimbraSAVE/backup/server/

tar -zxvf customizations_23_08_17#04_01_00.tar.gz localconfig.xml

mv /opt/zimbra/conf/localconfig.xml /opt/zimbra/conf/VANILLIA_localconfig.xml

mv /opt/zimbraSAVE/backup/server/localconfig.xml   /opt/zimbra/conf/localconfig.xml

Copy /opt/zimbraSAVE/conf/ca/ & /opt/zimbraSAVE/ssl/ to /opt/zimbra/

cd /opt/zimbra/
rsync -av /opt/zimbraSAVE/ssl .

cd /opt/zimbra/conf/

Copy all the *.crt & *.key files from /opt/zimbraSAVE/ to /opt/zimbra/ as well

cd /opt/zimbra/conf/

cp /opt/zimbraSAVE/conf/*.crt .
cp /opt/zimbraSAVE/conf/*.key .

Quick ldap test

Should be able to start ldap, and run a couple of zmprov -l commands without error

ldap start

zmprov -l gas

zmprov -l gad

If needed...
zmlocalconfig -e ssl_allow_untrusted_certs=true

Copy the keystore file from /opt/zimbraSAVE/ to /opt/zimbra/

cd /opt/zimbraSAVE/jetty-distribution-9.3.5.v20151012/etc

cp keystore /opt/zimbra/mailboxd/etc/

Initialize the mysql service

This will bring up the mysql service in a clean state, but no data yet

/opt/zimbra/libexec/zmmyinit 
* Creating required directories
* Generating mysql config /opt/zimbra/conf/my.cnf
* Creating database in /opt/zimbra/db/data
* Starting mysql server
* Loading schema /opt/zimbra/db/db.sql
* Loading version from /opt/zimbra/db/versions-init.sql
* Loading version from /opt/zimbra/db/backup-version-init.sql
* Setting random passwd for mysql root user in zimbra localconfig
* Setting random passwd for mysql zimbra user in zimbra localconfig
* Changing mysql root user password
* Changing mysql zimbra user password
* Changed zimbra mysql user password

As root copy the install history from /opt/zimbraSAVE/.install_history

rm -rf /opt/zimbra/.install_history

cp /opt/zimbraSAVE/.install_history   /opt/zimbra/.install_history

Now run zmsetup.pl as root

/opt/zimbra/libexec/zmsetup.pl

After zmsetup.pl is complete, initialize NG module

zxsuite backup setProperty ZxBackup_RealTimeScanner TRUE

This should create all of the mboxgroupXX databases needed.

Import the data from /opt/zimbraSAVE/backup/

zxsuite backup doExternalRestore /opt/zimbraSAVE/backup/

Install Zimlets

cd /opt/zimbra/zimlets-network

for i in `ls -1A`; do zmzimletctl deploy $i; done

cd /opt/zimbra/zimlets/

for i in `ls -1A`; do zmzimletctl deploy $i; done

zmcontrol restart

Option Check user blobs

At this point, you should be up and running; however, as an option, you may want to check the user BLOBs, you can refer to this guide.

Scenario III - Multi Server: Restore LDAP Service

Two Node Setup
Server 1 - LDAP + Proxy + MTA
Server 2 - Mailboxd (User mail store)

If LDAP services are needed to be restored, you can do the following.

Method A

Stop ldap and move the old database aside

ldap stop

mv /opt/zimbra/data/ldap/mdb/db  /opt/zimbra/data/ldap/mdb/OLD_db/

mkdir -p  /opt/zimbra/data/ldap/mdb/db

Copy the backed up ldap data from Server 2

mkdir /tmp/ldap/

scp root@server2.example.com:/opt/zimbra/backup/ldap/ldap_23_08_17#04_01_00.tar.gz  /tmp/ldap/

chown -R zimbra:zimbra /tmp/ldap/

Extract the ldap.ldif file

tar -zxvf ldap_23_08_17#04_01_00.tar.gz ldap.ldif

Restore the ldap-config

cd /tmp/ldap/

tar -zxvf ldap_23_08_17#04_01_00.tar.gz ldap-config.ldif

mv /opt/zimbra/data/ldap/config/  /opt/zimbra/data/ldap/OLDconfig/

mkdir /opt/zimbra/data/ldap/config/

/opt/zimbra/libexec/zmslapadd -c /tmp/ldap/ldap-config.ldif

Use zmslapadd to add the ldap data

/opt/zimbra/libexec/zmslapadd /tmp/ldap/ldap.ldif

ldap start

Method B

Use zmrestoreldap

List all labels

zmrestoreldap -lbs

**Should see something like...**
full-20170824.050005.077
full-20170823.050004.754
full-20170822.050004.779
full-20170821.050004.736
full-20170820.050005.331

Then use zmrestoreldap with the label name to restore the ldap data.

zmrestoreldap -lb full-20170824.050005.077

If ldap is not starting, use the long command to start ldap

sudo /opt/zimbra/libexec/zmslapd -l LOCAL0 -u zimbra -h 'ldap://ldap.example.com:389 ldapi:///' -F /opt/zimbra/data/ldap/config -d -4

The bottom portion of the output will usually provide a clue on why ldap is not starting.

Jump to: navigation, search