This chapter describes how to install and configure Oracle Communications Instant Messaging Server.
Before installing Instant Messaging Server, read these chapters:
The instructions in this chapter assume:
You are deploying Instant Messaging Server on a single host, or multiple hosts or Solaris zones.
A Directory Server host is already installed.
The tasks to install Instant Messaging Server are as follows:
Download the Instant Messaging Server software for your operating system from the Oracle software delivery website, located at:
Copy the Instant Messaging Server ZIP file to a temporary directory on your Instant Messaging Server hosts and extract the files.
To prepare Directory Server:
On your Directory Server hosts, install and run the comm_dssetup.pl script.
For more information, see the topic on Directory Server Setup Script in Unified Communications Suite Installation and Configuration Guide.
Note:
You can use either LDAP Schema 2 or Schema 1.(Optional) Provision users in the Directory Server.
If Directory Server is already installed at your site, users have already been provisioned. If you have just installed Directory Server at your site, then you need to provision users. For more information about provisioning users and schema, see Unified Communications Suite Schema Reference.
To install the Instant Messaging Server software:
Go to the directory where you extracted the Instant Messaging Server files.
Run the Installer.
./commpkg install
For more information about running the installer, see the topic on commpkg install in Unified Communications Suite Installation and Configuration Guide.
Select Instant Messaging Server and proceed with the installation.
You must configure Instant Messaging Server to complete the installation. You use the Instant Messaging Server configuration command-line script, configure, to perform this initial runtime configuration.
System users run specific server processes. Certain privileges need to be designated for these users to ensure they have appropriate permissions for the processes they run. Normally, the configure utility creates the following users and groups:
User: inetuser
Group: inetgroup
If the configure utility does not create a UNIX user and group for Instant Messaging Server, you need to create them manually as described in this section. After you create the user and group, set permissions appropriately for the directories and files owned by that user.
Do not choose root as a server user ID.
To create the appropriate UNIX user and group:
Log in as superuser (root).
Create a group to which your system user belongs. For example, to create a group named imgroup on an Oracle Solaris platform, enter the following command:
groupadd imgroup
Create the system user and associate it with the group you just created. In addition, set the password for that user. For example, to create a user named imuser and associate it with the group imgroup on an Oracle Solaris platform, enter the following command:
useradd -g imgroup imuser
For more information on adding users and groups, refer to your operating system documentation.
Examine the /etc/groups file to ensure that the user and group were added.
After you install Instant Messaging Server, use the configure utility to configure the software and to generate the configuration files.
This section contains the following topics:
Change to the InstantMessaging_home/sbin directory. By default, the InstantMessaging_home directory is /opt/sun/comms/im.
Use one of the following options to run the configure utility.
Command-line:
configure --nodisplay
From a state file:
configure --silent statefile
where statefile is the path to the state file you want to use. If you are configuring by using a state file and using the --silent option, you are not be prompted for configuration information. Instead, the values from the state file are used to configure the software. See "Performing a Silent Instant Messaging Server Configuration" for information on generating a state file. If you are not performing a silent installation, a series of prompts appears, requesting information that sets up the initial configuration for Instant Messaging Server. The prompts that appear vary depending on the components you installed. Fill in the requested information using the values from your Instant Messaging Server checklist. See "Configuring Instant Messaging Server."
Note:
Do not select the Disable Server option.To use the XMPP/HTTP Gateway, modify the location of the default log file for the XMPP/HTTP Gateway in the httpbind_log4j.conf file.
You need to do this on Linux, however, you only need to do this on Oracle Solaris if you chose to use a location for logs other than the default.
To do this:
Open the httpbind_log4j.conf file. This file is stored at the location you specified in the httpbind.conf file as the value for the httpbind.log4j.config parameter. By default the file is stored in the following directory under the default Instant Messaging Server instance: InstantMessaging_cfg_home/httpbind_log4j.conf.
Set the value of the log4.appender.appender_ID.file parameter to the location where log files are stored. By default, on Red Hat Linux and Oracle Linux, this value is /var/opt/sun/im/default/log. If you chose another location for log files when you ran configure, enter that path as the value for the parameter.
Configure client systems to support Instant Messaging Server.
Note:
If httpbind and im are configured to run on different hosts, you must explicitly add the c2s protocol to the s2s listener by using the imconfutil command to set the set-listener-prop property. This is common for all components, and not just httpbind. If httpbind or any other component is enabled on the same machine during im configuration, this step is not required, as it is automatically carried out by the configure utility.To run a silent configuration, you first complete a false configuration to create a state file. During this false configuration session, your responses to the configure utility are captured in the state file, but no software is modified. In the state file, your responses are retained as a list of parameters, each representing a single prompt or field.
You can then run the configure utility on many hosts by using the state file as input. This process enables you to quickly propagate one configuration across multiple hosts in your enterprise. See "Instant Messaging Server Configuration Script" for information on using the state file to configure a new instance of Instant Messaging Server.
To generate a state file:
Log in as superuser (root).
Change to the InstantMessaging_home/sbin directory. By default, the InstantMessaging_home directory is /opt/sun/comms/im.
Run the configure utility by entering the following:
configure --no --nodisplay --saveState statefile
Where statefile is the name you want to use for the state file. To use the state file to configure a different installation of Instant Messaging Server, use the following command:
configure --nodisplay --silent statefile
As you proceed through the configure utility, your answers are captured in the state file. When you complete the configuration, the state file is available in the location that you specified.
This section provides configure utility examples.
To configure and save the inputs that you provide in the state file:
./configure --nodisplay --savestate /tmp/imstate
To configure and use the values from the state file:
./configure --nodisplay --state /tmp/imsilent
To configure through the silent mode and use the values from the state file:
./configure --silent statefile
To configure and use the values from the state file:
./configure --nodisplay --state /tmp/imsilent --savestate /tmp/imstate --no
The command saves a state file. It does not perform the actual configuration as the --no option is used.
The following shows a sample configuration in response to prompts presented by the configure utility. The configuration uses default values for all options.
Component Selection
Select all components you wish to configure.
1. [X] Server components
2. [X] Web components
Service Runtime Options
Runtime User ID : [inetuser]
Runtime Group ID: [inetgroup]
Runtime Directory [/var/opt/sun/comms/im]
Network Access Points
Domain Name example.com
XMPP Port [5222] Multiplexed XMPP Port [45222]
Gateway Connector Port [55222]
XMPP Server Port [5269]
Disable Server (enable only multiplexor) [no]
Enable SSL [yes]:
Server keystore file:
Server password file:
If you decide to enable SSL, the respective server configuration is mandatorily set to TLS for all communication. To disable mandating TLS, set iim_server.requiressl=false by using the imconfutil command.
LDAP Configuration
LDAP Host Name [imhost.siroe.com]
LDAP Port Number [389]
SSL Enabled [no]
Base DN [dc=siroe,dc=com]
Base DN cn=Directory Manager
Base Password
Mail Server Options
Enable Email Integration [yes]
SMTP Server [smtphost]
Enable Email Archiving [yes]
HTTP Gateway Deployment Configuration
Deploy IM HTTP Gateway [yes]
Context Root [http://imhost:80/httpbind]
Web Container Path [Web container base directory]
Web Administrator URL [ ]
Web Administrator User ID [admin]
Web Administrator Password
Calendar Agent configuration
Enable Calendar Agent [no]
Enable local component [no]
SMS Gateway Configuration
Enable SMS Gateway [no]
Enable local component [no]
Instant Messaging Server Services Startup
Start Services After Successful Configuration [yes]
Start Services When System starts [yes]
You can create multiple instances of Instant Messaging Server on a single host from one installation. You might want to do this to create a secure version of Instant Messaging Server, or to support multiple directory namespaces. A namespace is a node in the directory under which each UID is unique. All instances of Instant Messaging Server on a single host share binaries but have unique versions of runtime and configuration files.
This procedure assumes that you have used default installation and configuration values for the InstantMessaging_home and InstantMessaging_runtime directories. If you installed using default values, the original runtime directory for Oracle Solaris is:
/var/opt/sun/comms/im/default
For Red Hat Linux and Oracle Linux, the original runtime directory is:
/var/opt/sun/im/default
If you used paths other than the defaults, substitute your paths for the paths used in this procedure.
Create a runtime directory for the new instance. For example, to create runtime directory xyz on Oracle Solaris, type:
mkdir /var/opt/sun/comms/im/xyz
On Red Hat Linux and Oracle Linux, type:
mkdir /var/opt/sun/im/xyz
Create a log directory for the new instance. For example, to create log directory xyz, on Oracle Solaris, type:
mkdir /var/opt/sun/comms/im/xyz/log
On Red Hat Linux and Oracle Linux, type:
mkdir /var/opt/sun/im/xyz/log
If you are using a file-based property store for user data, you need to create a database directory (InstantMessaging_database) for the new instance. For example, to create database directory xyz, on Oracle Solaris, type:
mkdir /var/opt/sun/comms/im/xyz/db
On Red Hat Linux and Oracle Linux, type:
mkdir /var/opt/sun/im/xyz/db
Copy the contents of the InstantMessaging_home directory and all of its subdirectories into the newly created directories: For example, on Oracle Solaris, type:
cp -r /etc/opt/sun/comms/im/default /etc/opt/sun/comms/im/xyz
On Red Hat Linux and Oracle Linux, type:
cp -r /etc/opt/sun/im/default /etc/opt/sun/im/xyz
Open the new instance's imadmin command in a text editor. By default, this command is stored under the InstantMessaging_home directory you just created for the new instance. For Oracle Solaris, the location is:
/etc/opt/sun/comms/im/xyz/imadmin
For Red Hat Linux and Oracle Linux, the location is:
/etc/opt/sun/im/xyz/imadmin
In the imadmin command, change the configuration file path to the path for the new configuration file for the new instance. For example, on Oracle Solaris, change
/etc/opt/sun/comms/im/default/config/iim.conf
to:
/etc/opt/sun/comms/im/xyz/config/iim.conf
On Red Hat Linux and Oracle Linux, change
/etc/opt/sun/im/default/config/iim.conf
to:
/etc/opt/sun/im/xyz/config/iim.conf
The .xml suffix is not required for the iim.conf file and the imadmin command automatically adds the .xml suffix.
Save and close the imadmin command.
Use the imconfutil command to set configuration properties for the new instance. By default, the iim.conf.xml file is stored in the InstantMessaging_cfg directory you created for the new instance. For Oracle Solaris, the location is:
/etc/opt/sun/comms/im/xyz/config/iim.conf.xml
For Red Hat Linux and Oracle Linux, the location is:
/etc/opt/sun/im/xyz/config/iim.conf.xml
The configuration properties you need to set are:
iim_server.port (default=5269)
iim_mux.listenport (default=5222)
iim_mux.serverport (default=45222)
iim.instancedir
Set to the runtime directory for the new instance, for example, on Oracle Solaris, change
/var/opt/sun/comms/im/default
to:
/var/opt/sun/comms/im/xyz
On Red Hat Linux and Oracle Linux, change
/var/opt/sun/im/default
to:
/var/opt/sun/im/xyz
Ensure that file and directory ownership and permissions are the same for all instances.
Start the new instance.
On Solaris OS:
/etc/opt/sun/comms/im/xyz/imadmin start
On Red Hat Linux and Oracle Linux:
/etc/opt/sun/im/xyz/imadmin start