December 24 - AppLogic 2.4.7 is now available and is the latest production release!
SugarCRM: a scalable CRM application
Functional Overview
This application is a fully featured, scalable, CRM implementation. The application functionality is provided by SugarCRM's Sugar Open Source 4.0.1 (
http://www.sugarcrm.com/crm/). The scalable infrastructure is built using AppLogic and AppLogic's
catalog appliances.
Sugar Open Source enables sales, marketing, and support organizations to manage their customer interactions more efficiently and profitably and is intended for both large and small companies.
For administration and user guides please see the SugarCRM website or follow the links below.
http://www.sugarforge.org/frs/download.php/1011/Sugar_Open_Source_User_Admin_Guide_v40.pdf
http://www.sugarforge.org/frs/download.php/1108/Sugar_Open_Source_Release_Notes_v401e.pdf
The SugarCRM application is packaged as an appliance. All required configuration is exposed on the boundary of the application, so that the application can be configured as a single appliance (using the
Application Configuration property sheet in the editor).
Boundary
Properties
These are the
only settings that you must configure in order to start a new copy of the application. Note that certain settings are automatically distributed to multiple appliances (such as the DNS servers, the admin e-mail, etc.). You don't need to understand the internal structure of the application in order to be able to configure it.
| Property Name | Type | Description |
usr_ip | IP | This is the IP address at which the application provides services to users. This property is mandatory |
admin_ip | IP | This is the IP address at which the application administrator can access the logs. This property is mandatory |
out_ip | IP | This is the IP address that the mail gateway is going to use to send e-mail from. This property is mandatory. In the future, we may provide auto assignment of IP addresses to output gateways. |
netmask | IP | Netmask for the network on which usr_ip, admin_ip and out_ip reside. Default: 255.255.255.0 |
gateway | IP | Address of IP gateway to be used to route traffic. This property must be specified in order to access the SugarCRM application from hosts outside of the IP network on which SugarCRM is running (i.e., most cases). Use 0.0.0.0 to disable. This property is mandatory. |
dns1 | IP | IP address of a DNS server for host name resolutions. Used to resolve the mail server name. Default: 0.0.0.0 |
dns2 | IP | IP address of a backup DNS server for host name resolutions. Used to resolve the mail server name. Default: 0.0.0.0 |
mail_server | String | Host name of the SMTP mail server through which SugarCRM should send e-mail notifications of bug changes. The mail server can be specified as a host name (e.g., mail.3tera.com) or as an IP address (e.g., 12.34.56.78). Default: 0.0.0.0 (mail is disabled). |
allowed_hosts | String | List of hosts and/or subnets allowed to connect. Separate multiple entries with spaces or commas. Supported format example: 192.168.1.2 192.168.1.0/24 192.168.2.0/255.255.255.0. Default: 0.0.0.0/0 (all allowed) |
denied_hosts | String | List of hosts and/or subnets to be denied connection. The format is the same as for allowed_hosts. Default: (empty) (none denied) |
admin_email | String | E-mail address of the application administrator. This address is used in web pages generated by the servers on error. Default: root@localhost.com |
usr_hostname | String | Host name under which the application is accessible. This is the name that users point their browsers at: http://usr_hostname/. This name should resolve to the IP address specified in usr_ip. Default: localhost |
admin_user | String | This is the user name of the administrator. This name is required in order to access the logs. Default: admin |
admin_password | String | This is the password of the administrator, required to access the logs. Default: 3tSugar Please change the admin password before running the application. |

The IP addresses configured in the
usr_ip,
admin_ip and
out_ip properties must be IP addresses available on your AppLogic grid. You can find them, together with the netmask, gateway and dns servers on the dashboard of your grid.
We are working to make it possible for AppLogic to provide these addresses automatically
Resources
User Volumes
The application itself uses several volumes, described
below. They are part of the application and are already configured into the appliance instances. There are no volumes that need to be configured on the application boundary.
Operation
Administrator Login Information
Initally the only account setup on the application is the administrator. The administrator must log in and create any needed user accounts.
User Login Information
Users of the SugarCRM application can access it at the address defined by the
usr_ip address.
There are no predefined users built into the application. User accounts can be created by logging in with the Administrator account listed above.
IT Administrator Login Information
The IT administrator of the SugarCRM application can access the logs using a browser. The logs are accessible at the address defined by the
admin_ip.
To gain access to the logs, the administrator needs to authenticate using the user name and password defined in the
admin_user and
admin_password properties, respectively.
Implementation details
Application Architecture
This is a reference design for a scalable CRM application.
It has the following components:
- two firewalled input gateways -- one for user access, one for admin access to the application
- a load-balanced web tier -- a load balancer and two web servers
- a shared database
- a centralized log, collecting the logs of both web servers and the database
- a centralized configuration file storage
- a firewalled output gateway to e-mail server
The application infrastructure is shown below:
Application Volumes
The SugarCRM application has the following volumes:
| Volume | Description |
code | SugarCRM scripts (code) volume. This volume is configured as the content volume of the srv1 and srv2 web servers. It is read-only for both servers. |
data | Database volume holding the SugarCRM database. This volume is configured as the data volume of the dbase MySQL appliance. |
config | Shared file system holding SugarCRM configuration and cache data. This volume is configured as the data volume of the config NAS appliance. |
logs | Logs volume, holding the web server and database logs. This volume is configured as the data volume of the logs NAS appliance. |
Notes
If you intend to use this application in a production environment you may want to increase the size of the
data volume by creating new application volume of a larger size (more users require more disk space) and copying the data volume onto it. Then simply assign the new volume to the dbase appliance and restart the app.
Questions and Comments

To post questions and comments for this application, visit our
forum.
--
JessieSmart - 14 Mar 2006