Install Zimbra Collaboration 8.6 multiserver in Centos 7

mm ByYOBIHAT TEAM

Install Zimbra Collaboration 8.6 multiserver in Centos 7

System Requirements for Zimbra Installation

The official website recommends the following hardware specification for Zimbra open-source edition.

-Intel/AMD 2.0 GHz 64-bit CPU

-A minimum of 8GB of RAM for a single server installation

-10 GB disk space for software and logs, and additional disk space for mail storage and temporary files

-At least 4GB of RAM for each server if you split the server in 2, but all depend of the kind of services you decide to install on each machine.

General Requirements

-Firewall Configuration should be set to “No firewall”.

-RAID-5 is not recommended for installations with more than 100 accounts.

-SSH client software to transfer and install the Zimbra Collaboration software.

-Valid DNS configured with an A record and MX record.

-Servers should be configured to run Network Time Protocol (NTP) on a scheduled basis.

Installation step by step

On both centos VM update the OS, install all packages needed for zimbra install, and disable firewall and sendmail services

yum update -y 
yum install net-tools usbutils firewalld wget nc perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat sqlite -y 
yum erase postfix
systemctl stop sendmail
systemctl disable sendmail
systemctl stop firewalld
systemctl disable firewalld

Add following entries to your both host files to change selinux config

vi /etc/selinux/config

change line SELINUX=permissive

Add following entries to your both host files

vi /etc/hosts
10.0.17.101      zimbra1.demo.local    zimbra1
10.0.17.102      zimbra2.demo.local    zimbra2

and remove all ipv6 relations comment or delete all ::1
Make static address in your NIC on all servers

vi /etc/sysconfig/network-scripts/ifcfg-………

Remove ipv6 configuration in file

vi /etc/sysctl.conf

Append the text below at the end of the file

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Apply and if print 1 everything related to ipv6 is disabled and you can reboot

sysctl -p
reboot

Now create and mount the partition will store the data of your mail system, if you are not familiar to this please search on internet to understand better what you are doing.
The server that need the second hard drive to store email data is the server where you are going to install zimbra store service, in our case the server 1.
We suppone that /dev/sda is your main linux HDD and /dev/sdb/ is the second disk that will be mounted on /opt/zimbra.
The above command will help you to understand the status of your system

fdisk -l
lsblk
lvs
pvdisplay /dev/sd...
vgdisplay vg...

Let’s create the partition on /dev/sdb/ and mount on /opt/zimbra

mkdir /opt/zimbra
pvcreate /dev/sdb
pvdisplay /dev/sdb
vgcreate vg1 /dev/sdb
lvcreate -l 100%FREE -n zmstore vg0
mkfs.ext4 /dev/vg0/zmstore
blkid /dev/vg1/* >> /etc/fstab

once the UUID is sent in append to /etc/fstab open the file and delete the title sent as in the example

vi /etc/fstab
example:    UUID=00000xxxx-xxxxxx-xxxxxxxx              /opt/zimbra      ext4      defaults     0 0

After save the file mount and check if is mounted correctly

mount -a
mount | grep opt
lsblk

If everything is ok we are ready to install zimbra, go the folder you decide to use for download zimbra packages

cd /home/
wget https://files.zimbra.com/downloads/8.6.0_GA/zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz
tar xzvf zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz
cd zcs-8.6.0_GA_1153.RHEL7_64.20141215151110
./install.sh

in this case we are going to split the zimbra mail server in 2 different server with different services running on the servers, you can decide to use more servers depends of your needs, Let’s install

Services to install in server 1

cd zcs-…
./install.sh

Do you agree with the terms of the software license agreement? [N] Y

Select the packages to install Install zimbra-ldap [Y] y

Install zimbra-logger [Y] y

Install zimbra-mta [Y] N

Install zimbra-dnscache [N] N

Install zimbra-snmp [Y] N

Install zimbra-store [Y] y

Install zimbra-apache [Y] y

Install zimbra-spell [Y] y

Install zimbra-memcached [Y] y

Install zimbra-proxy [Y] N

after install edit the field marked with **** before to save change timezone change default ldap admin password and make sure all password are set save config and apply. Before to start with second server apply config here and test with:

zmcontrol status

Services to install in second server

cd zcs-…
./install.sh

Do you agree with the terms of the software license agreement? [N] Y

Select the packages to install Install zimbra-ldap [Y] n

Install zimbra-logger [Y] n

Install zimbra-mta [Y] y

Install zimbra-dnscache [N] y

Install zimbra-snmp [Y] N

Install zimbra-store [Y] n

Install zimbra-apache [Y] n

Install zimbra-spell [Y] n

Install zimbra-memcached [Y] y

Install zimbra-proxy [Y] y

before to save change timezone, check ldap_master_host change default ldap admin password as the other server and check all password on the other server with zmlocalconfig -s (password to know).

Set Up the SSH Keys – both servers

We need to manually populate ssh keys on each server

su - zimbra
zmupdateauthkeys

Enabling Server Statistics – both servers

In order for the server statistics to display on the administration console, the syslog configuration files must be modified. On each server, as root, type

/opt/zimbra/libexec/zmsyslogsetup

Verify configuration

zmcontrol status

Setting up proxy zimbra1.demo.local

zimbra1.demo.local

su zimbra
/opt/zimbra/libexec/zmproxyconfig -e -m -H mailboxsrv.demo...
/opt/zimbra/libexec/zmproxyconfig -e -w -H mailboxsrv.demo...

mtasrv.demo…

su zimbra
/opt/zimbra/libexec/zmproxyconfig -e -m -H mtasrv.demo...
/opt/zimbra/libexec/zmproxyconfig -e -w -H mtasrv.demo...
zmcontrol restart

Common Steps to Run Servers Properly

Once installation is complete, do the common following steps on each server to function properly.
 1: Restart and Enable crond service

systemctl restart crond
systemctl enable crond

 2: Open rsyslog.conf file and uncomment following two lines and restart service

vim /etc/rsyslog.conf
$ModLoad imudp
$UDPServerRun 514
# Provides TCP syslog reception 
$ModLoad imtcp 
$InputTCPServerRun 514

service rsyslog restart

 3: Restart and Enable rsyslog service

systemctl restart rsyslog
systemctl enable rsyslog

 4: Now run the below command to update rsyslog

/opt/zimbra/libexec/zmsyslogsetup
updateSyslog: Updating /etc/rsyslog.conf...done.

If the installation are successful  you can access via web:

https://zimbra1.demo.local:443

for a webmail

https://zimbra2.demo.local:7071/zimbraAdmin

for admin managment site

(use your own link).

 

—>>> ENJOY!!! <<<—

About the author

mm

YOBIHAT TEAM author

YOBIHAT TEAM is a group of expertise IT (Programmers, System & Network engineer, Optic Fiber Technician, Graphics, Blogger and Users) who follow Open Source philosophy, and will drive you in deep with the YOBICLOUD platform for DevOps.

Leave a Reply

6 − four =