Contents
DataSync Suite On-Premise Installation Guide
The following steps will walk you through a typical Suite installation in its own dedicated environment. Prerequisites such as completed installations of SugarCRM and Zimbra should be setup before installing and configuring the Suite. See the requirements section below for more information.
Objectives
The DataSync Suite installer will accomplish the following tasks:
- Install dependencies and Suite libraries
- Create a Suite Administrator account (dsadmin)
- Configure synchronization (optional)
Prerequisites
Before installing DataSync Suite, the following systems must be in place:
A server for SugarCRM deployments with the required configuration
A Zimbra 5.x or 6.x server or cluster
- A dedicated Ubuntu 8.04 portal server or cluster that meets or exceeds the following hardware requirements:
For a single server setup with all DataSync Suite services on a single server (except applications such as SugarCRM and Zimbra):
- 2x vCPUs
- 2GB RAM
- 10GB HD space
Please note: Syncing utilizes a good amount of CPU capacity. Be sure to make the number of SugarCRM data adapters fewer than the number of CPU cores. The disk space required for the database is minimal. Disk space needs to scale only to accommodate logs and the MySQL database. For more information on hardware requirements see SystemRequirements
Download and Extract Source
Download the latest source from the SourceForge project page
Extract with the following command:
tar -xvzf datasync-suite-VERSION.tgz
where VERSION is the version number of the latest release.
Installation
Installation and configuration of core Suite services is an automated process performed by the install.sh script. When the script has completed, configuring the Suite to your custom environment is a manual process. However, we have supplied a 'Quick Start' script that will help you configure a Suite server with common defaults. At the end of the installation process, a prompt will appear asking if you would like to run Quick Start. Quick Start is recommended for deployments with a single SugarCRM and Zimbra deployment.
Run Installer
[ become the root user ] cd datasync-suite-VERSION ./install.sh
The installer will appear to pause on the Installing Pre-requesites and DataSync Suite... This is normal and takes a significant amount of time to complete-- 20+ minutes depending on system specs. You can use the --verbose option to see the details of the install.
If any errors occur you can view suite-install.log for details. After reviewing the log, you may try the installation again after deleting /opt/datasync-suite and running apt-get purge mysql-server-5.0 (select yes when asked to remove databases).
The Suite requires that apparmor be removed and it performs this action automatically.
Suite Administrator
The installer will prompt for the Suite Administrator user's email address. When asked, enter dsadmin@datasync.suite for the email address. No email will be sent to the provided email address. It is used only to determine where the dsadmin user should be created in the Suite's internal LDAP server.
Quick Start (optional)
The Quick Start script will perform the necessary leg work for a typical Suite install that is intended to be used for a single organization with both Sugar and Zimbra. The script attempts to use common defaults for as many of the required configuration options as necessary and prompts for settings it can not assume. It is crucial that you have met the necessary Zimbra and Sugar requirements before continuing.
Quick Start Assumptions
The Quick Start script either detects or assumes the following settings (if your environment has or requires customization of any of these, Quick Start may not be for you).
Sugar
Instance name, customer definition (regular expression for matching customer types for appointment syncing), message queue username, and message translation database settings.
Zimbra
Instance name, mailbox port, admin port, LDAP URL, connection and channel settings for the message queue, the database settings for Zimbra message translation and the folder name for contacts synced to Zimbra.
DataSync Suite Installation Prompts
Sugar
Sugar Administrator's username: The administrator username for the Sugar application you intend to work within the suite.
Sugar Administrator's password: The password for the Sugar administrator
Sugar Administrator's email address: The email address for the Sugar administrator
Sugar URL: The URL to the root of the Sugar application. Please note that on the Sugar server, the application root must not be the webroot. Instead it needs to be within a '/sugar' directory that would likely be your webroot. For example, the following is not a valid url: https://mycompany.com/retailcrm. Though https://mycompany.com/sugar/retailcrm is a valid URL. Keeping the application down a directory makes it easy for the Suite to be able to work with more than one Sugar deployment without requiring a seperate server for each application. Naming the directory 'sugar' gives our proxy something to refer to.
Zimbra
Zimbra Admin Username: The administrator username for the Zimbra application you intend to work within the Suite. e.g. admin
Zimbra Admin Password: The password for the Zimbra administrator
Zimbra Mailbox URL: The URL to your Zimbra mailbox server. Note that it is a full URL e.g. http://zimbra.mycompany.com
The sugar user provided here MUST be an administrator and the zimbra user MUST be a system administrator for synchronization to work correctly.
Required Sugar Listener Hooks
Additionally you must set up hooks within Sugar for contact and appointment syncing. Use the following configuration settings as a guide and utilize the instructions for installing hooks within your SugarCRM application.
To setup the Sugar listener hooks:
Open the file <sugar_root>/custom/include/DataSyncSuiteConfig.in.php
- Change the following settings to be:
'instance_name' => 'sugar', 'host' => '<your portal host>', 'port' => '8081', 'channel' => 'sugarrecordchanges', 'username' => 'mq_admin', 'password' => '<mq_admin pass>',
Refer to the 'messagequeue' section of your /opt/datasync-suite/etc/suite.yml for the mq_admin password that was generated for you.
From Sugar Admin -> Repair menu do a "Quick Repair and Rebuild"
Update Zimbra Instance
Using an LDAP browser (e.g. JXplorer), navigate to suitepy->instances->zimbra and change the ldap=ldap://localhost attribute to ldap=ldap://<portal> where portal is the name of the server the Suite is installed on.
Post Installation
Start the Suite with the following command:
/opt/datasync-suite/bin/datasyncsuite start
Logging In As Suite Admin
To login as the Suite Administrator, open your browser and enter the hostname of your DataSync Suite in the address bar.
Enter the email address you entered for the Suite Administrator email: during the installation (typically dsadmin@datasync.suite).
The default Suite Administrator password is 'dsadmin' and should be changed immediately.
Single Sign-on / LDAP Authentication
For details on how to configure DataSync Suite and the applications for single sign-on, see our Configuring Single Sign-On page.
Adding Users to DataSync Suite
After DataSync Suite has been configured and is running properly, end users can be added and synchronization enabled for each.
- Create a base .csv file. The columns should be similar to:
email,username,firstname,lastname,password,sugar.instance,zimbrauser.instance,changepassword.instance
- Identify all end users and which applications they should be given.
- For each user, add a new line to the .csv file
The email column will be their email address in Zimbra
The username column will be their user name in Sugar
For the sugar.instance column, simply enter sugar and the default instance from the installation will be used.
For the zimbrauser.instance column enter zimbra and the default instance from the installation will be used.
NOTE: If Quick Start was not used and the instances were manually created, adjust the .csv file accordingly.
For the changepassword.instance column enter changepassword to give the user the ability to change their password
Adding Users to a sync group
Once DataSync Suite is installed and users added, the next step is to enable synchronization for the end users. Each user must be added to the Sync group using the following command:
# /opt/datasync-suite/bin/syncgrpmngr update default -T zimbra:<user@example.com>
Replace user@example.com with a valid email address from the newly installed system. Multiple users can be added by separating the email addresses with commas.
Initial Sync
An initial sync must be run to to synchronize the data between applications so normal synchronization can occur after that. This is only required if there is existing data in SugarCRM. To perform an initial sync run the following commands:
# /opt/datasync-suite/bin/initsync default sugar person # /opt/datasync-suite/bin/initsync default sugar appointment
The first command will push all of the contacts from Sugar into the Company Contacts folder in Zimbra for each user in the sync group. The second command will push all meetings and calls from Sugar into each individual user's calendar in Zimbra.
See Also
Setup With Existing Users
If there are pre-existing installs of Zimbra and Sugar for which the users should be added to DataSync Suite, please follow these additional steps. Existing users can be imported by creating a .csv file.
- Create a base .csv file. The columns should be similar to:
email,username,firstname,lastname,password,sugar.instance,zimbrauser.instance
- Identify all users and which applications they have. Users will be identified by email address, and SugarCRM username.
- For each user, add a new line to the .csv file
For the email column use their email address from Zimbra
For the username column user their username from Sugar
For the sugar.instance column enter sugar if the user has access to Sugar
For the zimbrauser.instance column enter zimbra if the user has access to Zimbra
NOTE: 'sugar' and 'zimbra' are the default instance names used in the Quick Start script. If Quick Start was not used, adjust to the correct instances accordingly.
- When the .csv is complete, verification must be done within Sugar to ensure the Sugar email address is identical to the Zimbra email address. This is a requirement for synchronization to work correctly.
The users can then be added utilizing the user script with the addfile command. The user script will detect existing users and not create duplicate users in the individual applications.
Email archiving
If you would like to give users the ability to archive emails from Zimbra into Sugar they will need to have access to both Zimbra and Sugar as well as the emailarchiving extension. The Quick Start creates a default email archiving instance for you named emailarchiving.
To give users access to email archiving when you're creating them you'll need to add an additional column to the .csv file used to add users. The column header should be emailarchiving.instance and the value for each user should be emailarchiving. The headers will look like:
email,username,firstname,lastname,password,sugar.instance,zimbrauser.instance,changepassword.instance,emailarchiving.instance
CategoryDocumentation CategoryInstallation CategoryInstallationSteps