Zimbra Suite Plus/Installation Guide
Zimbra Suite Plus - Installation Guide
Zimbra Suite Plus has no additional software requirements beyond what's required by a standard Zimbra deployment.
All commands must be executed as the 'zimbra' user unless differently specified
Where to get the Zimbra Suite Plus Installer package
Go to the try and download page on www.zimbra.com.
Zimbra Suite Plus Installer
The smart installer will automatically identify the appropriate version of Zimbra Suite Plus for your Zimbra deployment, then download the latest packages for you.
Zimbra Suite Plus is comprised of four major components:
- Zimbra Suite Plus Core, abbreviated as Zimbra Suite Plus Core or Core, which is a jar package extending Zimbra Collaboration
- Zimbra Suite Plus Administrative Zimlet, abbreviated as Zimbra Suite Plus Zimlet or just Zimlet, an administrative zimlet which accesses and manages the Core.
- ZAL - An Open Source abstraction layer for Zimbra.
The installation script follows the aforementioned structure allowing you three installation targets: core, zimlet and all . The latter is equivalent of installing core and immediately afterwards zimlet .
Below the various combinations are explained in detail.
Quick Installation Steps
- Download Zimbra Suite Plus on your server
- As ROOT, unpack the file you just downloaded inside a directory (we suggest in /root/) in your Zimbra server.
- Enter the directory created by the unpacking of the file.
- Run the install.sh script with the "all" option (so ./install.sh all).
Detailed Installation & Setup informations
ZAL - an abstraction layer for Zimbra
The ZAL is an Open Source abstraction layer created to allow any extension to easily communicate with Zimbra Collaboration Suite, regardless of the version in use.
It is released under the GPL license and thus cannot be included in the Zimbra Suite Plus package, but during the installation process the Zimbra Suite Installer will automatically detect the most appropriate library version and will download and install it autonomously.
If the automatic download fail, a direct download link will be provided: the downloaded file must be renamed to "zal.jar" and copied into the "packages/" subdirectory of the Zimbra Suite Plus package. Restarting the installer will detect the new file and install it along with Zimbra Suite Plus.
Zimbra 8.x Zimbra Administration Console login issue (AjxError)
Zimbra 8.x users might experience slowness and AJAX errors when accessing the Zimbra Administration Console because of the Zimbra DOS Filter. In this case, raising the number of Maximum Requests per Second is suggested (see Zimbra DOSFilter for further informations)
PermGen and HeapSize warnings
Zimbra Suite Plus includes a built-in check to verify that both the "PermGen" and "HeapSize" java properties are set to an appropriate value:
- PermGen: 196mb
- MaxPermGen: 350mb
- Heap: higher than the 20% of installed RAM memory
Albeit this values are not strictly related to Zimbra Suite Plus, a misconfiguration can lead to instability and crashes of the mailboxd service.
If you received a notification about either one or both this values being undersized you can easily fix this by using the 'zmlocalconfig' zimbra utility to change the following properties:
- mailboxd_java_options (only change the "-XX:PermSize=" and "-XX:MaxPermSize=" parts keeping everything else)
- mailboxd_java_heap_size (in megabytes)
- The "Low PermGen size" warning has been received.
- To check the current value run
root@test:~# su - zimbra zimbra@test:~$ zmlocalconfig mailboxd_java_options mailboxd_java_options = -server -Djava.awt.headless=true -Dsun.net.inetaddr.ttl=60 -XX:+UseConcMarkSweepGC -XX:PermSize=128m \ -XX:MaxPermSize=350m -XX:SoftRefLRUPolicyMSPerMB=1 -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps \ -XX:+PrintGCApplicationStoppedTime -XX:-OmitStackTraceInFastThrow -Djava.net.preferIPv4Stack=true \ -Dorg.apache.jasper.compiler.disablejsr199=true
- To change the PermGen size from 128mb to 196mb run
zimbra@test:~# zmlocalconfig -e mailboxd_java_options="-server -Djava.awt.headless=true -Dsun.net.inetaddr.ttl=60 \ -XX:+UseConcMarkSweepGC -XX:PermSize=196m -XX:MaxPermSize=350m -XX:SoftRefLRUPolicyMSPerMB=1 -verbose:gc -XX:+PrintGCDetails \ -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationStoppedTime -XX:-OmitStackTraceInFastThrow -Djava.net.preferIPv4Stack=true \ -Dorg.apache.jasper.compiler.disablejsr199=true"
When Zimbra is upgraded the Zimbra Suite Plus Core is removed from the server, so in case of a Zimbra upgrade Zimbra Suite Plus must be reinstalled. All the data and settings will be maintained, so after re-installing everything will be exactly as it was before the Zimbra upgrade.
Before upgrading your Zimbra server, please make sure that a compatible Zimbra Suite Plus version has been released. A Zimbra Suite Plus "compatibility" release is usually done within 48 hours since the release of a new Zimbra version.
The information above only applies to "version upgrades": installing a Zimbra patch won't affect Zimbra Suite Plus in any way and thus reinstalling the package is not required.
Minimum requirements and tweaking
Zimbra has a minimum RAM requirement of 2GB and a suggested RAM requirement of 8GB. Zimbra Suite Plus's impact on system resources is neglectible, but we still strongly suggest a minimum RAM of 4GB even for small environments to greatly improve your Zimbra experience.
If you are interested in optimization and tweaking we suggest to read the following article on the Zimbra wiki, which despite the title applies to both large and small deployments: http://wiki.zimbra.com/wiki/Performance_Tuning_Guidelines_for_Large_Deployments
Zimbra Suite Plus on Multiserver infrastructures
Depending on the server roles in use, some additional precautions must be taken:
Installing Zimbra Suite Plus on a Single-store infrastructure
Installing Zimbra Suite Plus on a multiserver infrastructure including a single mailbox server is just as easy as installing it on a single-server infrastructure, as the software must only be installed on servers running the mailboxd service.
Installing Zimbra Suite Plus on a Multistore infrastructure
Zimbra Suite Plus installation in a Multistore infrastructure featuring multiple mailbox servers requires the following additional precautions:
- Zimbra Suite Plus must be installed in ALL the store servers (the ones with the mailboxd service running).
- Zimbra Suite Plus uses port 8735 for store-to-store communication, make sure your servers can reach each other on this port and that the same port is closed to outside traffic.
- As usual, take your time :)
Before installing Zimbra Suite Plus one will need to have downloaded the package, as explained in the appropriate section above, and exploded the archive in a directory of one's choice.
$ tar xfz zimbra_suite-X.X.X.tgz $ ls zimbra_suite-X.X.X.tgz zimbra_suite-X.X.X/
Inside the directory
zimbra_suite-X.X.X one shall find an executable shell script named
$ cd zimbra_suite-X.X.X $ ./install.sh -h ./install.sh -h | ./install.sh [ -u ] all|zimlet|core -h This very message -u Uninstall the target The targets available for (un)installation are: core -- Zimbra Suite Plus Core zimlet -- Zimbra Suite Plus Zimlet all -- Zimbra Suite Plus Core followed by Zimbra Suite Plus Zimlet * In order to use Zimbra Suite Plus both * core and zimlet need to be installed.
The output of ./install.sh -h will give the user a concise explanation regarding the usage of the installation script.
In order to successfully perform an installation one shall need to either become the root user or execute the script with root privileges (e.g. using sudo).
Once launched the script will perform a check of your system determining your Zimbra version and checking for any preexistent installation of either Zimbra Suite Plus or Zimbra Suite Plus Migration Tool.
Were any component of Zimbra Suite Plus Migration Tool detected, you will be prompted to uninstall them (as detailed here) and rerun the Zimbra Suite Plus installation script afterwards.
Proceeding with the installation requires for the EULA of ZeXtras to be accepted, after which the actual installation shall take place.
For details regarding the Zimbra Suite Plus Core or Zimbra Suite Plus Zimlet installation, see the related sections below.
The Zimbra Backup Plus Module MUST be Initialized to work properly. No initialization means no Real Time Scanner, no Live Scan Scheduler and no export/import functions. All operations will be ignored.
Zimbra Suite Plus full Installation
In order to install Zimbra Suite Plus you need for both Core and Zimlet to be correctly deployed and functional.
all as target will install Core and Zimlet, in that order, in one go.
Alternatively you can invoke the
install.sh script with either
zimlet as targets, installing each separately
Beware: Zimbra Suite Plus Core and Zimbra Suite Plus Zimlet MUST match versions, even when installed separately.
Zimbra Suite Plus Core Installation
In order to install Zimbra Suite Plus Core you need for Zimbra services to be stopped beforehand.
You can either stop them before running the script or having them stopped by the script when prompted.
Once that step is cleared the script will perform a series of checks regarding a potential previous installation of Zimbra Suite Plus Core and eventually install the jar file among the Zimbra extensions.
Deployed the Core, Zimbra will need to be restarted to verify the former's correct operation.
(If you are using the
all target to install both Core and Zimlet the script itself will prompt to start Zimbra.)
Once Zimbra is fully started the presence of lines such as the ones below in
/opt/zimbra/log/mailbox.log will mark a successful installation.
INFO [main]  extensions - Initialized extension ZExtrasExtension: com.zextras.extension.ZExtrasExtension@com.zimbra.cs.extension.ZimbraExtensionClassLoader@7543073a [...] INFO [main]  extensions - registered handler at /zextras [...] INFO [main]  extensions - ZExtrasExtension Started
Zimbra Suite Plus Zimlet Installation
In order to install the Zimbra Suite Plus Zimlet you need for Zimbra services to be running.
As above, you can either proceed manually beforehand or let the script start them when prompted to do so.
Once Zimbra is active the administrative zimlet will be deployed, provided the core is already installed and both Core and Zimlet versions match.
Zimbra Suite Plus full Upgrade
In case of a preexistent instance of Zimbra Suite Plus on your system installing a newer version will automatically perform an upgrade.
See the instructions above for the installation procedure.
If you just upgraded your Zimbra install, please see the Zimbra Upgrade section above.
Upgrading Zimbra Suite Plus on a Multiserver infrastructure
Zimbra Suite Plus 2.2.0 introduced backwards compatibility among minor releases, so based on the upgrade you are performing, one among two different upgrade paths must be taken:
- Upgrading Zimbra Suite Plus 2.2+ to a different micro release (e.g. 2.2.3 to 2.2.4)
- Each separate server can be upgraded independently, and Zimbra Suite Plus will be fully functional even in a mixed-version environment
- Upgrading from a pre-2.2 release or to a different major release (e.g. 2.0.4 to 2.2.4 or 2.2.4 to 2.4.0)
- All servers should be upgraded at the same time, as in this case backwards compatibility is not guaranteed and Zimbra Suite Plus will not be fully functional until all nodes have been upgraded to the same version.
Zimbra Suite Plus full Downgrade
In order to downgrade any components of Zimbra Suite Plus you need to uninstall them using the installation script from a package of identical or greater version, then install the older versions.
Downgrading might result in either or both your license and existing backups not being recognized correctly by an earlier version of Zimbra Suite Plus. It is therefore not recommended nor supported.
Zimbra Suite Plus Uninstallation
The removal procedure is mostly similar to the installation one. Placing the
-u switch before the target is all is needed.
The script will verify the presence of any Zimbra Suite Plus components and prompt for their removal.
./install.sh -u all
will uninstall both the Zimbra Suite Plus Core and the Zimbra Suite Plus Administration Zimlet
./install.sh -u core
will uninstall the Zimbra Suite Plus Core
./install.sh -u zimlet
will uninstall the Zimbra Suite Plus Administration Zimlet
Post-Install and Post-Uninstall
After either installing or uninstalling Zimbra Suite Plus, it's highly suggested to clear both your browser's and server's cache.
In order to clear your server's Zimlet cache, simply run
zmprov fc zimlet
as the 'zimbra'user.
If you don't reach a successful conclusion, double check step-by-step this guide, or have a look at the Zimbra Suite Plus Troubleshooting page!
Zimbra Suite Plus Resources
Here you can find useful resources for your Zimbra Suite Plus environment