Single-Server Installation with Ansible

Contents

Single-Server Installation with Ansible#

This Single Node scenario can be installed using Ansible: you need to setup a control node to run Ansible playbooks (please refer to section Prepare the Ansible Environment, then follow the directions on setting up the control node). To access the control node, execute the following command to log in (replace mail.example.com with the name or IP of the control node)

$ ssh root@mail.example.com
$ ssh -A root@mail.example.com

After you have logged in to the control node, download the Ansible inventory (see below this paragraph), replace the FQDN and values present in the file according to your planned Carbonio infrastructure.

Note

This installation procedure does not support Work Stream Collaboration (Chats): If you plan to install it, you need to follow the Single-Server Manual Installation.

Inventory - “Single-Server” Scenario

Download_inventory

[postgresServers]
srv1.example.com

[masterDirectoryServers]
srv1.example.com

[serviceDiscoverServers]
srv1.example.com

### This Role is no longer required since Carbonio 24.12.0
[dbsConnectorServers]

[mtaServers]
srv1.example.com

[proxyServers]
srv1.example.com

[proxyServers:vars]
webmailHostname=srv1.example.com

[applicationServers]
srv1.example.com

############ Optional Roles ############

[previewServers]
srv1.example.com

[filesServers]
srv1.example.com

############ Optional Roles - to be installed on a different VM ############
[taskServers]
#srv2.example.com

[docsServers]
#srv2.example.com

[videoServers]
#srv3.example.com public_ip_address=x.y.z.t

############ These Roles are not supported in Single-Server scenario ###########
############ They are required for the proper Ansible installation #############

[replicaDirectoryServers]

[prometheusServers]

[syslogServer]

Note

To add any of the roles listed as optional, simply remove the comment (#) indicating the correct name of the server on which to install the Role, based on the directions provided.

Once you edited the inventory, save it in a directory of your choice as carbonio-inventory-single. Now, you can run the script: from that directory execute the command

$ ansible-playbook zxbot.carbonio_ssinstall.carbonio_ssinstall \
-u root -i carbonio-inventory-single \
--extra-vars "install_path=zxbot.carbonio_install.carbonio_install"

Antivirus Engine#

The antivirus engine (ClamAV) is automatically installed by Ansible and is part of the installation procedure. If you already have a company-wide antivirus engine, you can disable the one installed by Carbonio, together with other components by issuing as the zextras user the following command:

zextras$ carbonio prov ms $(zmhostname) \
-zimbraServiceEnabled amavis \
-zimbraServiceEnabled antivirus \
-zimbraServiceEnabled antispam \
-zimbraServiceEnabled opendkim \
carbonioAmavisDisableVirusCheck TRUE

To entirely disable ClamAV or carry out other management options, like modify signature lists or installing a signatures updater, please refer to Section ClamAV Management.