3Configuring the System Architecture
Configuring the System Architecture
This chapter provides an overview of configuring the Siebel Server and its components, modifying Siebel Server parameters, and reinstalling the Siebel Gateway and Siebel Servers, if necessary. This chapter includes the following topics:
About Configuring the Siebel Server and Its Components
Before starting the Siebel Server, you might want to modify how it has been configured. You must enable component groups on the Siebel Server. This topic describes some of the configuration-related tasks that you must perform to maintain or administer your Siebel CRM installation.
For more information about configuring Siebel Servers and server components by using the Server Manager GUI, see Configuring Siebel Servers. For more information about configuring Siebel Servers and server components by using the Server Manager command-line interface, see Using the Siebel Server Manager Command-Line Interface.
Before starting the Siebel Server, you might want to add site-specific parameter values or overrides of existing values by using the Server Manager GUI.
You can configure a Siebel Server by modifying the parameters at the Siebel Server, component, or task level for the given Siebel Server. Changes to parameters at the Siebel Server level are inherited at the component and task levels. Changes to parameters at the component level are inherited at the task level. You can also modify parameters at the Siebel Enterprise Server level. Siebel Servers, components, or tasks within the Siebel Enterprise Server inherit the values for modified parameters unless you have explicitly modified (overridden) these parameters at these levels (Siebel Server, component, or task level). For more information, see About Siebel System Parameters.
For information about configuration tasks using Siebel Management Console, see the Siebel Installation Guide for the operating system you are using.
About System Environment Variables
Environment variables are variables configured for a particular computer hosting an aspect of a Siebel CRM deployment. These Siebel-specific environment variables configure interactions with the computer's operating system and various functions of Siebel CRM applications. Configure environment variables through the operating system of the individual computer. For information about configuring these variables, see Configuring System Environment Variables.
Environment variables configure a wide range of functionality and are covered in context-specific areas of the Siebel Bookshelf. The Siebel Bookshelf is available on Oracle Technology Network (OTN) and Oracle Software Delivery Cloud. It might also be installed locally on your intranet or on a network location.
The following table provides a partial listing of environment variables for Siebel CRM or that affect the Siebel CRM applications, and it indicates one or more locations where each variable is documented. This list is not comprehensive. Some environment variables are set automatically. In general, you set environment variables explicitly only as you are instructed by documentation for Siebel CRM.
Table Partial Listing of Siebel Environment Variables
Environment Variable |
Where Documented |
---|---|
NLS_LANG |
Siebel Installation Guide for the operating system you are using |
NLS_SORT |
Siebel Installation Guide for the operating system you are using |
ORACLE_HOME |
Siebel Installation Guide for the operating system you are using |
PATH |
Siebel Installation Guide for the operating system you are using |
SIEBEL_CODEPAGE |
Siebel Installation Guide for the operating system you are using |
TEMP |
Siebel Installation Guide for the operating system you are using |
TMP |
Siebel Installation Guide for the operating system you are using |
LD_LIBRARY_PATH (Linux and Oracle Solaris) |
Siebel Installation Guide for UNIX |
JAVA_HOME |
Siebel Installation Guide for UNIX |
LANG |
Siebel Installation Guide for UNIX |
LC_ALL |
Siebel Installation Guide for UNIX |
LIBPATH (AIX) |
Siebel Installation Guide for UNIX |
NLS_DATE_FORMAT |
Siebel Installation Guide for UNIX |
ODBCINI |
Siebel Installation Guide for UNIX |
SHLIB_PATH (HP-UX) |
Siebel Installation Guide for UNIX |
SIEBEL_HOME |
Siebel Installation Guide for UNIX |
SIEBEL_GATEWAY_ROOT |
Siebel Installation Guide for UNIX |
SIEBEL_SERVER_ROOT |
Siebel Installation Guide for UNIX |
SIEBEL_ROOT |
Siebel Installation Guide for UNIX |
SIEBEL_ENTERPRISE |
Siebel Installation Guide for UNIX |
SIEBEL_UNIXUNICODE_DB |
Siebel Installation Guide for UNIX |
TNS_ADMIN |
Siebel Installation Guide for UNIX |
SIEBEL_ASSERT_MODE |
Siebel Performance Tuning Guide
|
SIEBEL_OSD_LATCH |
Siebel Performance Tuning Guide |
SIEBEL_OSD_MAXLIMITS |
Siebel Performance Tuning Guide |
SIEBEL_OSD_NLATCH |
Siebel Performance Tuning Guide |
SIEBEL_OSD_PTHREAD_STACK_SIZE |
Siebel Performance Tuning Guide 2007183.1 (Article ID) on My Oracle Support Note: This environment variable applies only to supported versions of UNIX or Linux operating systems. |
SIEBEL_SARMBufferSize |
Siebel Performance Tuning Guide |
SIEBEL_SARMFileSize |
Siebel Performance Tuning Guide |
SIEBEL_SARMLevel |
Siebel Performance Tuning Guide |
SIEBEL_SARMMaxFiles |
Siebel Performance Tuning Guide |
SIEBEL_SARMPeriod |
Siebel Performance Tuning Guide |
SIEBEL_CRASH_HANDLER |
Siebel System Monitoring and Diagnostics Guide |
SIEBEL_DIAG_STORE |
Siebel System Monitoring and Diagnostics Guide |
SIEBEL_LOG_ARCHIVES |
Siebel System Monitoring and Diagnostics Guide |
SIEBEL_LOG_DIR |
Siebel System Monitoring and Diagnostics Guide |
SIEBEL_LOG_EVENTS |
Siebel System Monitoring and Diagnostics Guide |
SIEBEL_SESSMGR_TRACE |
Siebel System Monitoring and Diagnostics Guide |
SIEBEL_SISNAPI_TRACE |
Siebel System Monitoring and Diagnostics Guide |
SIEBEL_STDERROUT |
Siebel System Monitoring and Diagnostics Guide |
SIEBEL_DATA_SOURCE |
Using Siebel Tools |
SIEBEL_TABLE_OWNER |
Using Siebel Tools |
SIEBEL_FILE_ENCODING |
Siebel Marketing User Guide |
SPELLCHECKLEVEL1 |
Set to True when using the spell check feature with outbound email messages. For more information about this feature, see Siebel Email Administration Guide. |
RESOLV_MULTI |
1435205.1 (Article ID) on My Oracle Support Note: This environment variable applies only to supported versions of Oracle Enterprise Linux. |
Configuring System Environment Variables
This topic describes how to configure system environment variables on Windows and on UNIX. For more information about Siebel environment variables, see About System Environment Variables.
This topic contains the following information:
Configuring an Environment Variable on Windows
This procedure describes how to configure an environment variable on Windows.
To configure an environment variable on Windows
Choose Start, Settings, Control Panel, and then double-click System.
Click the Advanced tab, then click Environment Variables.
In the System Variables section, click New to create a new environment variable.
For a partial list of Siebel environment variables, see About System Environment Variables.
Set the Variable Name field to the name of a Siebel environment variable.
Set the Variable Value field to the value for the Siebel environment variable.
Restart the computer for the environment variables to take effect.
Configuring an Environment Variable on UNIX
This procedure describes how to configure an environment variable on UNIX.
To configure an environment variable on UNIX
Log in as the Siebel Service owner user.
Run the siebenv.sh or siebenv.csh script to set Siebel environment variables. For more information about these scripts, see Siebel Installation Guide for UNIX.
Depending on the type of UNIX operating system that you use, enter a command like the following to set the environment variable.
For Korn shell:
export Siebel_Environment_Variable=Variable_Value
For C shell:
setenv Siebel_Environment_Variable Variable_Value
where:
Siebel_Environment_Variable is a Siebel-specific environment variable.
Variable_Value is the setting for the environment variable.
For example, enter the following command for C shell:
setenv SIEBEL_SARMLevel 1
Restart the computer for the environment variables to take effect.
Configuring Siebel Server Load Balancing
Siebel Server load balancing distributes the workload across multiple Siebel Servers. For background information and information about initially configuring your Siebel CRM server environment, see Siebel Deployment Planning Guide and the Siebel Installation Guide for the operating system you are using.
This topic contains the following information:
About Rebalancing Siebel Server Loads
Server loads can become unevenly distributed for several reasons:
You have just added a new Siebel Server to the network. It will have a low workload compared to other Siebel Servers.
You have just enabled an Application Object Manager on a Siebel Server. It will have a lower workload than other Application Object Managers on different Siebel Servers.
There was a server configuration or request routing problem that prevented even distribution of workloads. When this problem is corrected, one or more Siebel Servers will have low workloads.
Siebel native load balancing distributes workloads based on logins. Users must terminate existing sessions and log in to the new sessions to cause workloads to be redistributed. For example, you have 1000 concurrent user sessions running on three Siebel Servers. You then add a fourth Siebel Server. Until all of the users end their sessions and log in again, the load is not evenly distributed between all four servers.
Whenever possible, let normal user login behavior rebalance Siebel Server workloads. Intervene only when absolutely necessary. To rebalance server workloads, stop SCBroker on a Siebel Server. Doing so directs workload away from that server, but does not affect existing user sessions. However, session reconnect does not work for this server. If the connection times out, and user requests come through a Siebel Application Interface other than the one used for login, then the session is lost.
Troubleshooting Siebel Native Load Balancing
This topic provides guidelines for resolving problems with Siebel native load balancing. To resolve a problem, look for it in the list of symptoms or error messages in the following table. Some problem solutions in the table require changing the function of server components.
Table Resolving Siebel Native Load Balancing Problems
Problem |
Cause |
Solution |
---|---|---|
Users do not get a login page. The browser might display |
Verify TCP port access for Siebel Servers, Siebel Gateway, and Siebel Application Interface. |
|
Increase the Siebel Application Interface logging level. |
To turn on detailed Siebel Application Interface logging, increase the log level for Siebel Application Interface. For more information, see the information about configuring the Siebel Application Interface in the Siebel Installation Guide for the operating system you are using. The logs for this module are located in |
|
Users can connect but loads are not balanced evenly between Siebel Servers |
Unequal loads might be caused by characteristics of users and jobs. |
Because jobs are distributed in a round-robin fashion, it is normal for a snapshot of the servers to show somewhat unequal loads. Unequal loads can be caused by several things, including the nature of the jobs and the rate at which users log in and log out on different servers. Over a longer period, the number of sessions handled by each server evens out. |
Siebel Servers do not have equal access to computing resources. |
Verify that all of the Siebel Servers have equal access to computing resources such as CPU and memory. |
|
A Siebel Server has recently been added or has been restarted. |
Load balancing is based on user logins. During the process in which current sessions are terminated and new sessions are started, the new Siebel Server is included in the load sharing. |
|
A Siebel Application Interface cannot route requests to one or more Siebel Servers. |
Check for connectivity problems between the Siebel Application Interface and the Siebel Server with the low workload, as described earlier in this table. |
|
A Siebel Server is rejecting an unusual number of user requests. |
Check the Siebel Application Interface log files for
|
|
A Siebel Server has functional or configuration problems. |
Enable server diagnostics. Look for problems with components. Verify that the basic configuration is correct. For more information about monitoring and diagnosing server problems, see Siebel System Monitoring and Diagnostics Guide. |
Verifying Load Balancing Port Access on Siebel Servers
This topic describes how to verify access to the load balancing port (that is, the port on which the SCBroker component listens) on your Siebel Servers.
To verify load balancing port access on your Siebel Servers
On the computer where Siebel Application Interface is running, telnet to the SCBroker port (such as 2321) on each Siebel Server.
For example, if a Siebel Server has the host name SiebSrvr1, then use the following command:
telnet SiebSrvr1 2321
If the connection succeeds, then there is load balancing port access. The connection times out after 500 ms.
If the connection fails, with the message
Could not open connection to server
, then complete the remaining steps that follow.Verify that the Siebel CRM applications that you want are running on each Siebel Server.
On each Siebel Server, verify that SCBroker is running and is configured to listen on port 2321.
Verify that the operating system is not blocking access to the SCBroker port.
Check that no other networking device, such as a firewall, is blocking access to the SCBroker port.
Related Topics
Configuring the Session Manager
The Session Manager is a layer within the Siebel Application Interface and Application Object Manager that manages TCP/IP (SISNAPI) connections between clients and Application Object Managers. The Session Manager primarily manages communications between the Siebel Application Interface and the Siebel Server. It is not a stand-alone component, but it is embedded in Siebel Application Interface and in an Object Manager component that is directly accessed through an external interface, such as Component Object Model (COM).
The Session Manager is primarily responsible for establishing and managing connections from the client to the Application Object Manager. A connection is established for each new session request, and is kept open or terminated based on connection multiplexing settings. The Session Manager allows multiple client sessions to share the same pool of connections, thereby minimizing resource usage and maximizing overall performance.
When a client requests a new session, the Siebel Application Interface receives the HTTP request, translates the request into SISNAPI messaging format, and invokes the Session Manager, which is embedded in the Siebel Application Interface, to obtain a physical connection to the Siebel Server. The Session Manager creates a new, temporary connection, which is load-balanced to an available Siebel Server.
After this temporary connection is made to a Siebel Server, Session Manager checks to see whether there are enough connections to the target process. If there are enough TCP connections, then the temporary connection is dropped and the existing connection is used for this new user session. If a connection is not available, then the temporary connection is retained. For more information about this process, see Siebel Performance Tuning Guide, which describes the use of the parameter Number of Sessions for each SISNAPI Connection (alias SessPerSisnConn).
After Session Manager opens a connection to the Siebel Server, it closes connections based on the time the connection remains idle. The parameter SISNAPI Connection Maximum Idle Time (alias ConnIdleTime) controls this feature. After reaching the configured idle period, the connection is disconnected by the Application Object Manager process.
A benefit of the ConnIdleTime parameter is to manage connections that pass through a firewall placed between the Siebel Application Interface and the Siebel Server. Because firewalls block idle connections, the ConnIdleTime parameter can be configured to disconnect idle connections before they are blocked by the firewall. This setting avoids future connection problems between the Siebel Application Interface and the Siebel Server.
For more information about communication between the client and the Siebel application, see Siebel Performance Tuning Guide.
Parameters that modify Session Manager and SISNAPI connections are available for each component at the component level. For more information about these and other parameters, see Siebel Enterprise, Server, and Component Parameters.
Reinstalling the Siebel Gateway and Siebel Server
In some cases, you might have to reinstall the Siebel Gateway and Siebel Servers. These cases include scenarios when you want to:
Rename the computer on which the Siebel Gateway, Siebel Servers, or both are running.
Make structural changes to the directory where the Siebel Gateway, Siebel Servers, or both are installed.
Move the Siebel Gateway, Siebel Servers, or both to another computer.
Each of the listed operations requires you to uninstall and reinstall both the Siebel Gateway and Siebel Servers. Uninstalling also requires that you first perform the necessary tasks to remove associated configuration data. For more information about installing and uninstalling Siebel Servers and the Siebel Gateway and about tasks for configuring and for removing configuration data, see the Siebel Installation Guide for the operating system you are using.
You uninstall and reinstall Siebel Servers and the Siebel Gateway in the following sequence.
To uninstall and reinstall server entities
Uninstall each Siebel Server.
Uninstall the Siebel Gateway.
Reinstall the Siebel Gateway.
Reinstall each Siebel Server.
After installation and initial configuration, you perform any additional necessary Siebel Server configuration tasks, such as to define new components, enable or disable components and component groups, assign component groups to Siebel Server, and so on. You must also reextract all of the Mobile Web Clients. For information about extracting Mobile Web Client databases, see Siebel Remote and Replication Manager Administration Guide.