This chapter provides an overview of Sun Java System Calendar Server, the business reasoning behind deploying Calendar Server, and the deployment process itself.
This chapter contains the following sections:
Sun Java System Calendar Server is a high-performance, Internet standards-based calendar server designed with the scalability to meet the needs of customers ranging from medium- and large-sized enterprises to even the largest telecommunication and Internet service providers. Through a Web browser interface or connectors to other calendar clients, including Microsoft Outlook, Calendar Server provides group scheduling and personal calendaring to consumers at home or at work, while enabling them to share calendar information with others over the Internet.
Calendar Server provides one of the industry’s most open, interoperable, and high-performance time and resource management solutions. Through its scalability, performance, and reliability, it provides the features you require at a lower total cost of ownership than alternative solutions. Native support for iCalendar standards enables users to schedule events in a format that is easily shared across the Internet. Calendar Server employs standards and protocols such as:
Internet Calendaring (iCalendar)
iCalendar Transport-Independent Interoperability Protocol (iTIP)
iCalendar Message-based Interoperability Protocol (iMIP)
eXtensible Markup Language (XML)
Lightweight Directory Access Protocol (LDAP)
HyperText Transport Protocol (HTTP)
The Calendar Server architecture is flexible, extensible, and scalable both vertically (by increasing the number of CPUs per system) and horizontally (by introducing additional servers into the network). As a result, Calendar Server can be thought of as a system of servers that can be configured to fit a variety of needs. It can remain in isolation as a standalone calendar server, or it can be configured with many instances, having the various services duplicated or split between them.
Calendar Server makes use of plugins to obtain external services. Calendar Server also supports both LDAP- and identity-based deployments, and integrates with Sun Java System Access Manager, Sun Java System Portal Server, and Sun Java System Instant Messaging to provide additional functionality.
Group scheduling, free-busy lookup, and corporate directory lookup
Support for standards-based event and calendar data feeds published in XML or iCalendar formats, which improves communication and can offer new revenue opportunities through commerce links and banner ads
Native LDAP support, with an API for other directory services
Support for the Connector to Microsoft Outlook
Support for hosted domains including command-line and GUI tools to manage these domains
Simplified system management, online backup and restore, and entire database backup and restore
Support for multiple calendars, such as work, family, friends, and more
Support for public and private calendars, as well as public, private, and confidential individual events
Automatic email notification of appointments, invitations, and reminders sent to selected recipients; integrates with Sun Java System Instant Messaging to provide automatic pop-up reminders
Support for multiple owners of each calendar, to facilitate communication and productivity with project teams and community groups
Ability to delegate calendar ownership to others who may act on behalf of the primary owner
Support for daily, weekly, monthly, and yearly views of a calendar
Supports hundreds of thousands of users through a scalable, networked, server-to-server, client- server architecture
Supports Secure Sockets Layer (SSL) encryption, LDAP authentication, authentication plugins, and identity-enabled single sign-on (SSO) through Access Manager
Integrated personal address book and email functionality
Support for layered calendar views, enabling users to combine two or more calendars into a single view for improved communications and productivity
Support for attachments in events and tasks
Support for LDAP groups including static, nested, and dynamic groups
For more information on Calendar Server concepts, see the Sun Java System Calendar Server 6.3 Administration Guide.
The deployment process consists of the following general phases, referred to as the Solution Life Cycle:
Analyzing business requirements
Analyzing technical requirements
Designing the logical architecture
Designing the deployment architecture
Implementing the deployment
Operating the deployment
The deployment phases are not rigid: the deployment process is iterative in nature.
Before you begin your Calendar Server deployment planning, a good question to ask is:
Why is my organization deploying Calendar Server?
Several reasons to consider are:
Cost savings. The total cost of ownership per user is lower than using other calendar products on the market.
Increased productivity. Your calendar users can manage their events and tasks as well as schedule meetings and appointments with others in the organization. Your users can also manage calendar groups and resources such as meeting rooms and equipment. They can also synchronize their calendars with mobile devices and Microsoft Outlook.
Improved scalability and availability. Calendar Server scales both horizontally and vertically. If your organization grows, you can easily upgrade your configuration by upgrading a server or add more servers.
High availability (HA) configuration. Integration with Sun Cluster software enables you to configure Calendar Server as a highly available service. If you experience a software or hardware failure, Calendar Server fails over to a secondary server.
Deploying Calendar Server usually involves a number of people, each with different roles and responsibilities. In a small organization, one person might perform several roles. Some of the roles to consider are:
Program Manager oversees the overall Calendar Server deployment and is responsible for its success or failure.
Calendar Server Administrator performs day-to-day administrative tasks to manage Calendar Server and might also be responsible for installing and upgrading Calendar Server.
Performance Engineer tests and monitors the Calendar Server performance for the trial and production deployments to see if the deployment criteria is met.
Development Engineering writes Calendar Server applications or plugins, or customizes the Calendar Server user interface (UI), if required.
Documentation Specialist writes any customized documentation for administrators and end users.
Education/Training develops training classes and material.
Support Specialists, who support both the trial and production deployments.
End users can connect to Calendar Server by using the Communications Express web client, or Sun Java System Connector for Microsoft Outlook.
Questions about end users at your site include:
How many total Calendar Server end users will your site have?
How many geographic locations are involved? Are your end users all in the same or different time zones?
Will your end users log into Calendar Server at the same time each day?
How many active end users will your deployment have during peak use?
How fast will your end user base grow?
What are your specific performance requirements for Calendar Server end users?
What are your single sign-on (SSO) requirements?
Are any of your users migrating from an earlier version of Calendar Server?
Does your site plan to use a proxy server?
What are your specific performance requirements for your end users? For example:
What end user response times are acceptable?
Can you tolerate a possible degradation in performance during peak load times?
What configuration do you plan to use for your deployment? Calendar Server configuration scenarios include:
Single Calendar Server instance
Single front-end server with single back-end database server
Multiple front-end/back-end servers using LDAP CLD plugin
High Availability (HA) configuration
If you plan to configure multiple front-end servers, how do you plan to distribute your end users?
If you plan to configure multiple back-end database servers, how do you plan to distribute your database? For example, you could distribute servers geographically.
What plans do you have for growth? For both front-end and back-end servers?