Difference: InstallTomcat (1 vs. 23)

Revision 232017-02-08 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 52 to 52
 

Installation

First, if you have not installed any frontier rpm before, execute the following command as the root user:

Changed:
<
<
# rpm -Uvh --replacefiles http://frontier.cern.ch/dist/rpms/RPMS/noarch/frontier-release-1.0-1.noarch.rpm
>
>
# rpm -Uvh --replacefiles http://frontier.cern.ch/dist/rpms/RPMS/noarch/frontier-release-1.1-1.noarch.rpm
  (If you are not upgrading a previous installation done without the frontier-release package you may leave out --replacefiles).

Revision 222017-02-08 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 79 to 79
 The following sections begin with servlet names in square brackets. Within each section there can be settings that get translated into different pieces of the underlying tomcat system configuration, as detailed below.

servlets.conf JDBC settings
Changed:
<
<
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/<servlet>.xml where <servlet> is the servlet name.
>
>
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/<servlet>.xml where <servlet> is the servlet name. These settings are required when not using FileBaseDirectory:
 
  • tnsName: the name of an oracle database as defined by a connection string name in a tnsnames.ora file. See the useCopyOfTnsnames setting below for details about how to find the file.
Changed:
<
<
  • mysqlHost: the name of the host running a MySQL database server. One of tnsName or mysqlHost are required when not using FileBaseDirectory.
  • username: the username of the database account. Required when not using FileBaseDirectory.
  • maxDbConnections: the number of parallel connections to the database allowed for this servlet. Required when not using FileBaseDirectory.
>
>
  • mysqlHost: the name of the host running a MySQL database server. One and only one of tnsName or mysqlHost is required when not using FileBaseDirectory.
  • username: the username of the database account.
  • maxDbConnections: the number of parallel connections to the database allowed for this servlet.
 
servlets.conf Servlet settings
The following settings are directly for the frontier servlet. They are put into /usr/share/frontier-tomcat/tomcat/webapps/<servlet>/WEB-INF/classes/config.properties.
Line: 91 to 91
 
  • ShortCacheExpireSeconds (required): the number of seconds until cache expiration for the responses marked by the application to expire in a relatively "short" amount of time. Often this time is set to be the same number of seconds as LongCacheExpireSeconds.
  • ForeverCacheExpireSeconds (optional): the number of seconds until cache expiration for the responses marked by the application to never expire with the "forever" time-to-live. The default is a year of seconds.
  • ValidateLastModifiedSeconds (optional): enables "If-Modified-Since" processing and specifies the number of seconds that the frontier servlet should cache modification timestamps. A typical value is 300 for 5 minutes.
Changed:
<
<
  • LastModifiedTableName (required if ValidateLastModifiedSeconds is set): the database account and table name that stores table modification times, for example CMS_FRONTIER_MODS.LAST_MODIFIED.
>
>
  • LastModifiedTableName (required if ValidateLastModifiedSeconds is set and using oracle): the database account and table name that stores table modification times, for example CMS_FRONTIER_MODS.LAST_MODIFIED.
 
  • ExpireEmptyQueriesLikeErrors (optional): when set to true, sets the cache expiration time on empty queries (0 rows) to be as short as errors, which is the lesser of 5 minutes and ShortCacheExpireSeconds. Default is false.
Changed:
<
<
  • FileBaseDirectory (optional): path to a directory of files or an http:// prefix to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to specify JDBC settings or the ValidateLastModifiedSeconds/LastModifiedTableName settings. http:// prefixes should end in slash (/).
  • MaxFileConnections (default 5): the maximum number of simultaneous file or http connections allowed before queuing requests. Applies only when FileBaseDirectory is set.
>
>
  • FileBaseDirectory (optional): path to a directory of files or an http:// prefix to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to specify JDBC settings or the ValidateLastModifiedSeconds setting. http:// prefixes should end in slash (/).
  • MaxFileConnections (default 5): the maximum number of simultaneous file or http connections allowed before queuing requests. Applies only when FileBaseDirectory is set.
 
  • MaxThreads (default 100): the maximum number of parallel request threads that may exist (that is, the number of active connections to the back end plus the number of queued requests). If the number goes beyond this value and a connection needs to be acquired, the servlet rejects the request with a SERVICE_UNAVAILABLE code instead of queuing the request.
  • MaxDbAcquireSeconds (default 300): the maximum number of seconds that the servlet will wait to acquire a connection to the database, file, or http server. During this period the servlet will send a keepalive message every 5 seconds to keep the client from timing out.
  • MaxDbExecuteSeconds (default 10): the maximum number of seconds that the servlet will wait for the database or http server to begin to respond to a query. While waiting, the servlet will send a keepalive message every 5 seconds to keep the client from timing out. The total time allowed for the response then is this time plus the client read timeout (which is also typically 10 seconds). For http servers that do not supply a Content-Length header, this time includes reading the entire response, not just the beginning.

Revision 212017-02-08 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 13 to 13
 

Software

Changed:
<
<
The instructions below are for the latest version of the frontier-tomcat rpm on a Scientific Linux version 5 or 6 based system. The rpm includes the standard Apache Tomcat distribution, an Oracle JDBC interface library, and the Frontier servlet. Please see the Frontier servlet Release Notes and rpm Release Notes for details on what has changed in recent versions.
>
>
The instructions below are for the latest version of the frontier-tomcat rpm on a Scientific Linux version 6 based system. The rpm includes the standard Apache Tomcat distribution, an Oracle JDBC interface library, a !MySQL JDBC interface library, and the Frontier servlet. Please see the Frontier servlet Release Notes and rpm Release Notes for details on what has changed in recent versions.
 

Preparation

  1. If you want to be able to support digital signature security on the frontier responses, make sure the server has an unexpired grid host certificate and key in /etc/grid-security. If there are any DNS aliases that the server will be operating under, they will need to be listed as either the primary name in the subject of the certificate or one of the subject alternate names.
Line: 79 to 79
 The following sections begin with servlet names in square brackets. Within each section there can be settings that get translated into different pieces of the underlying tomcat system configuration, as detailed below.

servlets.conf JDBC settings
Changed:
<
<
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/<servlet>.xml where <servlet> is the servlet name. These are all required except when using FileBaseDirectory (which serves files instead of database queries).
  • tnsName: the name of the oracle database as defined by a connection string name in a tnsnames.ora file. See the useCopyOfTnsnames setting below for details about how to find the file.
  • username: the username of the database account.
  • maxDbConnections: the number of parallel connections to the database allowed for this servlet.
>
>
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/<servlet>.xml where <servlet> is the servlet name.
  • tnsName: the name of an oracle database as defined by a connection string name in a tnsnames.ora file. See the useCopyOfTnsnames setting below for details about how to find the file.
  • mysqlHost: the name of the host running a MySQL database server. One of tnsName or mysqlHost are required when not using FileBaseDirectory.
  • username: the username of the database account. Required when not using FileBaseDirectory.
  • maxDbConnections: the number of parallel connections to the database allowed for this servlet. Required when not using FileBaseDirectory.
 
servlets.conf Servlet settings
The following settings are directly for the frontier servlet. They are put into /usr/share/frontier-tomcat/tomcat/webapps/<servlet>/WEB-INF/classes/config.properties.
Line: 91 to 92
 
  • ForeverCacheExpireSeconds (optional): the number of seconds until cache expiration for the responses marked by the application to never expire with the "forever" time-to-live. The default is a year of seconds.
  • ValidateLastModifiedSeconds (optional): enables "If-Modified-Since" processing and specifies the number of seconds that the frontier servlet should cache modification timestamps. A typical value is 300 for 5 minutes.
  • LastModifiedTableName (required if ValidateLastModifiedSeconds is set): the database account and table name that stores table modification times, for example CMS_FRONTIER_MODS.LAST_MODIFIED.
Changed:
<
<
  • ExpireEmptyQueriesLikeErrors (optional): when set to true, sets the cache expiration time on empty queries (0 rows) to be as short as errors, which is the lesser of 5 minutes and ShortCacheExpireSeconds. Default is false.
  • FileBaseDirectory (optional): path to a directory of files or an http:// prefix to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to specify JDBC settings or the ValidateLastModifiedSeconds/LastModifiedTableName settings. http:// prefixes should end in slash (/).
>
>
  • ExpireEmptyQueriesLikeErrors (optional): when set to true, sets the cache expiration time on empty queries (0 rows) to be as short as errors, which is the lesser of 5 minutes and ShortCacheExpireSeconds. Default is false.
  • FileBaseDirectory (optional): path to a directory of files or an http:// prefix to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to specify JDBC settings or the ValidateLastModifiedSeconds/LastModifiedTableName settings. http:// prefixes should end in slash (/).
 
  • MaxFileConnections (default 5): the maximum number of simultaneous file or http connections allowed before queuing requests. Applies only when FileBaseDirectory is set.
  • MaxThreads (default 100): the maximum number of parallel request threads that may exist (that is, the number of active connections to the back end plus the number of queued requests). If the number goes beyond this value and a connection needs to be acquired, the servlet rejects the request with a SERVICE_UNAVAILABLE code instead of queuing the request.
  • MaxDbAcquireSeconds (default 300): the maximum number of seconds that the servlet will wait to acquire a connection to the database, file, or http server. During this period the servlet will send a keepalive message every 5 seconds to keep the client from timing out.

Revision 202016-10-13 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 91 to 91
 
  • ForeverCacheExpireSeconds (optional): the number of seconds until cache expiration for the responses marked by the application to never expire with the "forever" time-to-live. The default is a year of seconds.
  • ValidateLastModifiedSeconds (optional): enables "If-Modified-Since" processing and specifies the number of seconds that the frontier servlet should cache modification timestamps. A typical value is 300 for 5 minutes.
  • LastModifiedTableName (required if ValidateLastModifiedSeconds is set): the database account and table name that stores table modification times, for example CMS_FRONTIER_MODS.LAST_MODIFIED.
Added:
>
>
  • ExpireEmptyQueriesLikeErrors (optional): when set to true, sets the cache expiration time on empty queries (0 rows) to be as short as errors, which is the lesser of 5 minutes and ShortCacheExpireSeconds. Default is false.
 
  • FileBaseDirectory (optional): path to a directory of files or an http:// prefix to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to specify JDBC settings or the ValidateLastModifiedSeconds/LastModifiedTableName settings. http:// prefixes should end in slash (/).
  • MaxFileConnections (default 5): the maximum number of simultaneous file or http connections allowed before queuing requests. Applies only when FileBaseDirectory is set.
  • MaxThreads (default 100): the maximum number of parallel request threads that may exist (that is, the number of active connections to the back end plus the number of queued requests). If the number goes beyond this value and a connection needs to be acquired, the servlet rejects the request with a SERVICE_UNAVAILABLE code instead of queuing the request.

Revision 192016-07-20 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 88 to 88
 The following settings are directly for the frontier servlet. They are put into /usr/share/frontier-tomcat/tomcat/webapps/<servlet>/WEB-INF/classes/config.properties.
  • LongCacheExpireSeconds (required): the number of seconds that most responses should be cached before they expire.
  • ShortCacheExpireSeconds (required): the number of seconds until cache expiration for the responses marked by the application to expire in a relatively "short" amount of time. Often this time is set to be the same number of seconds as LongCacheExpireSeconds.
Added:
>
>
  • ForeverCacheExpireSeconds (optional): the number of seconds until cache expiration for the responses marked by the application to never expire with the "forever" time-to-live. The default is a year of seconds.
 
  • ValidateLastModifiedSeconds (optional): enables "If-Modified-Since" processing and specifies the number of seconds that the frontier servlet should cache modification timestamps. A typical value is 300 for 5 minutes.
  • LastModifiedTableName (required if ValidateLastModifiedSeconds is set): the database account and table name that stores table modification times, for example CMS_FRONTIER_MODS.LAST_MODIFIED.
  • FileBaseDirectory (optional): path to a directory of files or an http:// prefix to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to specify JDBC settings or the ValidateLastModifiedSeconds/LastModifiedTableName settings. http:// prefixes should end in slash (/).

Revision 182014-09-04 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 133 to 133
 

servlets.passwd

Changed:
<
<
Every servlet that connects to a database needs a database password. These come from /etc/tomcat/servlets.passwd and are written into the same JDBC configuration file as the servlets.conf JDBC settings described above. The file must be owned by the user id that tomcat is running under and be mode 400. The format of the file is sections beginning with a name in square brackets followed by the setting name password: followed by the password value. The name in square brackets may be either a tnsName or a username matching the servlets.conf JDBC settings. Whichever one matches first is the one selected. For example:
>
>
Every servlet that connects to a database needs a database password. These come from /etc/tomcat/servlets.passwd and are written into the same JDBC configuration file as the servlets.conf JDBC settings described above. The file must be owned by the user id that tomcat is running under and be mode 600. The format of the file is sections beginning with a name in square brackets followed by the setting name password: followed by the password value. The name in square brackets may be either a tnsName or a username matching the servlets.conf JDBC settings. Whichever one matches first is the one selected. For example:
 
[cms_orcon_adg]

Revision 172014-03-29 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 144 to 144
  This will use the first password for the FrontierProd servlet in the servlets.conf example above and the second password for the FrontierPrep servlet.
Added:
>
>

Changing the port number

The port number that tomcat listens on can be changed from the default 8080 by setting FRONTIER_TOMCAT_PORT in /etc/tomcat/tomcat.conf. For example:
  export FRONTIER_TOMCAT_PORT=8000
 

Testing

Start the tomcat process as root with the command

Revision 162013-12-30 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 56 to 56
  (If you are not upgrading a previous installation done without the frontier-release package you may leave out --replacefiles).
Changed:
<
<
The frontier-tomcat package depends on java, and there are two java versions to choose from: the Sun/Oracle version and OpenJDK. Both have been used successfully in production, but the Sun/Oracle version has had more production experience. By default the openjdk version is installed, but if you choose to use the Sun/Oracle version instead first do the following command:
    # yum install java-1.6.0-sun

Install the main package with the following command:

>
>
Install frontier-tomcat and its dependencies with the following command:
 
    # yum install frontier-tomcat

Revision 152013-12-26 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 16 to 16
 The instructions below are for the latest version of the frontier-tomcat rpm on a Scientific Linux version 5 or 6 based system. The rpm includes the standard Apache Tomcat distribution, an Oracle JDBC interface library, and the Frontier servlet. Please see the Frontier servlet Release Notes and rpm Release Notes for details on what has changed in recent versions.

Preparation

Changed:
<
<
  1. Make sure the server has an unexpired grid host certificate and key in /etc/grid-security. If there are any DNS aliases that the server will be operating under, they will need to be listed as either the primary name in the subject of the certificate or one of the subject alternate names.
  2. The frontier-tomcat rpm requires that the user id the tomcat process will run under to already exist. By default it is the user id "dbfrontier". This can be changed by creating a file /etc/tomcat/tomcat.conf before installing the rpm and putting in it the following line where you can fill in whichever user id you choose:
    
    
>
>
  1. If you want to be able to support digital signature security on the frontier responses, make sure the server has an unexpired grid host certificate and key in /etc/grid-security. If there are any DNS aliases that the server will be operating under, they will need to be listed as either the primary name in the subject of the certificate or one of the subject alternate names.
  2. By default the user id that that the tomcat process will run under is "tomcat". This can be changed by creating a file /etc/tomcat/tomcat.conf before installing the frontier-tomcat rpm and putting in the following line with the user id you choose, for example:
    
    
  export FRONTIER_USER=dbfrontier
Added:
>
>
  1. It is recommended to pre-create the above user id, but if it doesn't exist the rpm will create the user id along with a matching group id.
 
  1. Make sure that email sent to the chosen user id will be forwarded to the person or people who administer the frontier software.
Changed:
<
<
  1. By default, the logs for the tomcat process go in /data/tomcat_logs because they can get quite large and might not fit in /var. If you want to change the directory that the logs will be in, add the following line to /etc/tomcat/tomcat.conf where you can set the directory to wherever you want. The directory will be created if it is missing.
        export FRONTIER_TOMCAT_LOGS=/var/log/tomcat
    
  2. The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:
        [noname]
    
    Change its owner also to the user id you chose, and change its mode to 400.
>
>
  1. By default, the logs for the tomcat process go in /var/log/tomcat. They can get quite large (CMS frontier servers typically use about 25GB) and might not fit in /var, so if /var has limited space it may be best to put them somewhere else. If you want to change the directory that the logs will be in, add the following to /etc/tomcat/tomcat.conf with the directory you want, for example:
        export FRONTIER_TOMCAT_LOGS=/data/tomcat_logs
    
    The directory will be created if it is missing but the parent directory has to exist.

If you are going to be configuring frontier-tomcat to read from an Oracle database, do these additional steps of preparation:

 
  1. Make sure that the Oracle database descriptor(s) are available at /etc/tnsnames.ora and make sure that all the descriptors that will be used by Frontier servlets include the option (ENABLE=BROKEN). Without this option the Frontier servlet will not always be able to recover from database node failures. Here's an example of a complete tnsnames.ora entry:
    cms_orcon_adg=(
            DESCRIPTION=
    
    
Line: 52 to 52
 

Installation

First, if you have not installed any frontier rpm before, execute the following command as the root user:

Changed:
<
<
# rpm -Uvh --replacefiles http://frontier.cern.ch/dist/rpms/debug/RPMS/noarch/frontier-release-1.0-1.noarch.rpm
>
>
# rpm -Uvh --replacefiles http://frontier.cern.ch/dist/rpms/RPMS/noarch/frontier-release-1.0-1.noarch.rpm
  (If you are not upgrading a previous installation done without the frontier-release package you may leave out --replacefiles).

Revision 142013-10-23 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 95 to 95
 
  • ShortCacheExpireSeconds (required): the number of seconds until cache expiration for the responses marked by the application to expire in a relatively "short" amount of time. Often this time is set to be the same number of seconds as LongCacheExpireSeconds.
  • ValidateLastModifiedSeconds (optional): enables "If-Modified-Since" processing and specifies the number of seconds that the frontier servlet should cache modification timestamps. A typical value is 300 for 5 minutes.
  • LastModifiedTableName (required if ValidateLastModifiedSeconds is set): the database account and table name that stores table modification times, for example CMS_FRONTIER_MODS.LAST_MODIFIED.
Changed:
<
<
  • MaxThreads (default 100): the maximum number of parallel request threads that may exist. If the number goes beyond this value and the database needs to be contacted, the servlet rejects the request with a SERVICE_UNAVAILABLE code instead of queuing the request.
  • MaxDbAcquireSeconds (default 300): the maximum number of seconds that the servlet will wait to acquire a database connection. During this period the servlet will send a keepalive message every 5 seconds to keep the client from timing out.
  • MaxDbExecuteSeconds (default 10): the maximum number of seconds that the servlet will wait for the database to begin to respond to a query. While waiting the servlet will send a keepalive message every 5 seconds to keep the client from timing out. The total time allowed for the database query to respond then is this time plus the client read timeout (which is also typically 10 seconds).
  • FileBaseDirectory (optional): path to a directory of files to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to also specify settings related to databases.
>
>
  • FileBaseDirectory (optional): path to a directory of files or an http:// prefix to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to specify JDBC settings or the ValidateLastModifiedSeconds/LastModifiedTableName settings. http:// prefixes should end in slash (/).
  • MaxFileConnections (default 5): the maximum number of simultaneous file or http connections allowed before queuing requests. Applies only when FileBaseDirectory is set.
  • MaxThreads (default 100): the maximum number of parallel request threads that may exist (that is, the number of active connections to the back end plus the number of queued requests). If the number goes beyond this value and a connection needs to be acquired, the servlet rejects the request with a SERVICE_UNAVAILABLE code instead of queuing the request.
  • MaxDbAcquireSeconds (default 300): the maximum number of seconds that the servlet will wait to acquire a connection to the database, file, or http server. During this period the servlet will send a keepalive message every 5 seconds to keep the client from timing out.
  • MaxDbExecuteSeconds (default 10): the maximum number of seconds that the servlet will wait for the database or http server to begin to respond to a query. While waiting, the servlet will send a keepalive message every 5 seconds to keep the client from timing out. The total time allowed for the response then is this time plus the client read timeout (which is also typically 10 seconds). For http servers that do not supply a Content-Length header, this time includes reading the entire response, not just the beginning.
 
  • CertFileName (optional): path to the host certificate readable by the frontier user. If this is not set, the default is to copy it from /etc/grid-security/hostcert.pem to /etc/tomcat/hostcert.pem at start time, make the copy owned by the frontier user, and set this parameter to /etc/tomcat/hostcert.pem.
  • KeyFileName (optional): path to the host key readable by the frontier user. If this is not set, the default is to copy it from /etc/grid-security/hostkey.pem to /etc/tomcat/hostcert.pem at start time, make the copy owned by the frontier user, and set this parameter to /etc/tomcat/hostkey.pem.

Revision 132013-06-30 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 16 to 16
 The instructions below are for the latest version of the frontier-tomcat rpm on a Scientific Linux version 5 or 6 based system. The rpm includes the standard Apache Tomcat distribution, an Oracle JDBC interface library, and the Frontier servlet. Please see the Frontier servlet Release Notes and rpm Release Notes for details on what has changed in recent versions.

Preparation

Added:
>
>
  1. Make sure the server has an unexpired grid host certificate and key in /etc/grid-security. If there are any DNS aliases that the server will be operating under, they will need to be listed as either the primary name in the subject of the certificate or one of the subject alternate names.
 
  1. The frontier-tomcat rpm requires that the user id the tomcat process will run under to already exist. By default it is the user id "dbfrontier". This can be changed by creating a file /etc/tomcat/tomcat.conf before installing the rpm and putting in it the following line where you can fill in whichever user id you choose:
        export FRONTIER_USER=dbfrontier
    
Line: 65 to 66
  # yum install frontier-tomcat
Changed:
<
<
Because the configuration isn't set up yet, this will result in some nasty-looking messages starting with "ERROR: failed to start frontier-tomcat. Dangling installation." and ending with "scriptlet failed, exit status 1" but that's OK at this point.
>
>
Enable starting automatically at boot time:
    # chkconfig frontier-tomcat on
 

Configuration

The two configuration files that still need to be set up are /etc/tomcat/servlets.conf and /etc/tomcat/servlets.passwd.
Line: 95 to 99
 
  • MaxDbAcquireSeconds (default 300): the maximum number of seconds that the servlet will wait to acquire a database connection. During this period the servlet will send a keepalive message every 5 seconds to keep the client from timing out.
  • MaxDbExecuteSeconds (default 10): the maximum number of seconds that the servlet will wait for the database to begin to respond to a query. While waiting the servlet will send a keepalive message every 5 seconds to keep the client from timing out. The total time allowed for the database query to respond then is this time plus the client read timeout (which is also typically 10 seconds).
  • FileBaseDirectory (optional): path to a directory of files to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to also specify settings related to databases.
Added:
>
>
  • CertFileName (optional): path to the host certificate readable by the frontier user. If this is not set, the default is to copy it from /etc/grid-security/hostcert.pem to /etc/tomcat/hostcert.pem at start time, make the copy owned by the frontier user, and set this parameter to /etc/tomcat/hostcert.pem.
  • KeyFileName (optional): path to the host key readable by the frontier user. If this is not set, the default is to copy it from /etc/grid-security/hostkey.pem to /etc/tomcat/hostcert.pem at start time, make the copy owned by the frontier user, and set this parameter to /etc/tomcat/hostkey.pem.
 
servlets.conf Other setting
The following setting can only be in the [defaults] section:

Revision 122012-12-26 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 51 to 51
 

Installation

First, if you have not installed any frontier rpm before, execute the following command as the root user:

Changed:
<
<
# wget -O /etc/yum.repos.d/cern-frontier.repo http://frontier.cern.ch/dist/rpms/cern-frontier.repo
>
>
# rpm -Uvh --replacefiles http://frontier.cern.ch/dist/rpms/debug/RPMS/noarch/frontier-release-1.0-1.noarch.rpm
 
Added:
>
>
(If you are not upgrading a previous installation done without the frontier-release package you may leave out --replacefiles).
  The frontier-tomcat package depends on java, and there are two java versions to choose from: the Sun/Oracle version and OpenJDK. Both have been used successfully in production, but the Sun/Oracle version has had more production experience. By default the openjdk version is installed, but if you choose to use the Sun/Oracle version instead first do the following command:

Line: 64 to 65
  # yum install frontier-tomcat
Deleted:
<
<
The first time you use yum to install any frontier package it will prompt you to import the GPG key; answer 'y'.
 Because the configuration isn't set up yet, this will result in some nasty-looking messages starting with "ERROR: failed to start frontier-tomcat. Dangling installation." and ending with "scriptlet failed, exit status 1" but that's OK at this point.

Configuration

Revision 112012-12-14 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 16 to 16
 The instructions below are for the latest version of the frontier-tomcat rpm on a Scientific Linux version 5 or 6 based system. The rpm includes the standard Apache Tomcat distribution, an Oracle JDBC interface library, and the Frontier servlet. Please see the Frontier servlet Release Notes and rpm Release Notes for details on what has changed in recent versions.

Preparation

Changed:
<
<
The frontier-tomcat rpm requires that the user id the tomcat process will run under to already exist. By default it is the user id "dbfrontier". This can be changed by creating a file /etc/tomcat/tomcat.conf before installing the rpm and putting in it the following line:

>
>
  1. The frontier-tomcat rpm requires that the user id the tomcat process will run under to already exist. By default it is the user id "dbfrontier". This can be changed by creating a file /etc/tomcat/tomcat.conf before installing the rpm and putting in it the following line where you can fill in whichever user id you choose:
    
    
  export FRONTIER_USER=dbfrontier
Changed:
<
<
where you can fill in whichever user id you choose.

Make sure that email sent to this user id will be forwarded to the person or people who administer the frontier software.

By default, the logs for the tomcat process go in /data/tomcat_logs because they can get quite large and might not fit in /var. If you want to change the directory that the logs will be in, add the following line to /etc/tomcat/tomcat.conf:


>
>
  1. Make sure that email sent to the chosen user id will be forwarded to the person or people who administer the frontier software.
  2. By default, the logs for the tomcat process go in /data/tomcat_logs because they can get quite large and might not fit in /var. If you want to change the directory that the logs will be in, add the following line to /etc/tomcat/tomcat.conf where you can set the directory to wherever you want. The directory will be created if it is missing.
    
    
  export FRONTIER_TOMCAT_LOGS=/var/log/tomcat
Changed:
<
<
where you can set the directory to wherever you want. The directory will be created if it is missing.

The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:


>
>
  1. The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:
    
    
  [noname]
Changed:
<
<
Change its owner also to the user id you chose, and change its mode to 400.

Finally, make sure that the Oracle database descriptor(s) are available at /etc/tnsnames.ora and make sure that all the descriptors that will be used by Frontier servlets include the option (ENABLE=BROKEN). Without this option the Frontier servlet will not always be able to recover from database node failures. Here's an example of a complete tnsnames.ora entry:


>
>
Change its owner also to the user id you chose, and change its mode to 400.
  1. Make sure that the Oracle database descriptor(s) are available at /etc/tnsnames.ora and make sure that all the descriptors that will be used by Frontier servlets include the option (ENABLE=BROKEN). Without this option the Frontier servlet will not always be able to recover from database node failures. Here's an example of a complete tnsnames.ora entry:
    
    
 cms_orcon_adg=( DESCRIPTION= (ADDRESS=(PROTOCOL=TCP)(HOST=cmsonradg1-s.cern.ch) (PORT=10121))
Line: 49 to 38
  ) )
Added:
>
>
  1. In order to avoid using up all the shared memory over time, a PL/SQL script like the following needs to be run in the Oracle database for each username used by frontier:
    create or replace trigger cursor_sharing_USERNAME
    AFTER LOGON ON USERNAME.SCHEMA
    BEGIN
            execute immediate 'alter session set "cursor_sharing"=FORCE';
    END;
    /
    
    Replace both occurrences of USERNAME with the specific username.
  2. In order to efficiently support caching, Frontier needs to have table modification times stored in a special table. Have your database administrator ask phydb.support@cernNOSPAMPLEASE.ch for the details.
 

Installation

First, if you have not installed any frontier rpm before, execute the following command as the root user:

Revision 102012-12-13 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 36 to 36
  Change its owner also to the user id you chose, and change its mode to 400.
Changed:
<
<
Finally, make sure that the Oracle database descriptor(s) are available at /etc/tnsnames.ora and make sure that all the descriptors that will be used by Frontier servlets include the option (ENABLE=BROKEN). Without this option the Frontier servlet will not always be able to recover from database node failures.
>
>
Finally, make sure that the Oracle database descriptor(s) are available at /etc/tnsnames.ora and make sure that all the descriptors that will be used by Frontier servlets include the option (ENABLE=BROKEN). Without this option the Frontier servlet will not always be able to recover from database node failures. Here's an example of a complete tnsnames.ora entry:
cms_orcon_adg=(
        DESCRIPTION=
        (ADDRESS=(PROTOCOL=TCP)(HOST=cmsonradg1-s.cern.ch) (PORT=10121))
        (ADDRESS=(PROTOCOL=TCP)(HOST=cmsonradg2-s.cern.ch) (PORT=10121))
        (ENABLE=BROKEN)
        (CONNECT_DATA=
                (SERVER=DEDICATED)
                (SERVICE_NAME=cms_orcon_adg.cern.ch)
        )
)
 

Installation

First, if you have not installed any frontier rpm before, execute the following command as the root user:

Revision 92012-12-11 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 37 to 37
 Change its owner also to the user id you chose, and change its mode to 400.

Finally, make sure that the Oracle database descriptor(s) are available at /etc/tnsnames.ora and make sure that all the descriptors that will be used by Frontier servlets include the option (ENABLE=BROKEN). Without this option the Frontier servlet will not always be able to recover from database node failures.

Deleted:
<
<

Installation

 
Added:
>
>

Installation

 First, if you have not installed any frontier rpm before, execute the following command as the root user:
    # wget -O /etc/yum.repos.d/cern-frontier.repo http://frontier.cern.ch/dist/rpms/cern-frontier.repo

Line: 72 to 72
 
servlets.conf JDBC settings
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/<servlet>.xml where <servlet> is the servlet name. These are all required except when using FileBaseDirectory (which serves files instead of database queries).
Changed:
<
<
  • tnsName: the name of the oracle database as defined in a tnsnames.ora file. See the useCopyOfTnsnames setting below for details about how to find the file.
>
>
  • tnsName: the name of the oracle database as defined by a connection string name in a tnsnames.ora file. See the useCopyOfTnsnames setting below for details about how to find the file.
 
  • username: the username of the database account.
  • maxDbConnections: the number of parallel connections to the database allowed for this servlet.
Line: 144 to 140
 

Test it using a similar procedure as the frontier-squid test procedure except don't set http_proxy, change cmsfrontier.cern.ch to the name of your server, change 8000 to 8080, and change FrontierProd to the name(s) you chose for your servlet(s).

Added:
>
>

Debugging

A lot of debugging information is written to the log file catalina.out in the log file directory. The default log directory is /data/tomcat_logs unless you changed it as described in the Preparation section above.

Revision 82012-12-06 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"

Installing frontier-tomcat

Line: 36 to 36
  Change its owner also to the user id you chose, and change its mode to 400.
Added:
>
>
Finally, make sure that the Oracle database descriptor(s) are available at /etc/tnsnames.ora and make sure that all the descriptors that will be used by Frontier servlets include the option (ENABLE=BROKEN). Without this option the Frontier servlet will not always be able to recover from database node failures.
 

Installation

First, if you have not installed any frontier rpm before, execute the following command as the root user:

Revision 72012-11-14 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"
Deleted:
<
<
THIS PAGE IS UNDER CONSTRUCTION
 

Installing frontier-tomcat

The frontier-tomcat package is intended for use on a central Frontier "launchpad" server. This page has instructions for installing it.

Line: 26 to 24
  Make sure that email sent to this user id will be forwarded to the person or people who administer the frontier software.
Added:
>
>
By default, the logs for the tomcat process go in /data/tomcat_logs because they can get quite large and might not fit in /var. If you want to change the directory that the logs will be in, add the following line to /etc/tomcat/tomcat.conf:
    export FRONTIER_TOMCAT_LOGS=/var/log/tomcat
where you can set the directory to wherever you want. The directory will be created if it is missing.
 The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:
    [noname]

Line: 120 to 124
 

servlets.passwd

Changed:
<
<
Every servlet that connects to a database needs a database password. These come from /etc/tomcat/servlets.passwd and are written into the same JDBC configuration file as servlets.conf JDBC settings section above. The file must be owned by the user id that tomcat is running under and be mode 400. The format of the file is sections beginning with a name in square brackets followed by the setting name password: followed by the password value. The name in square brackets may be either a tnsName or a username matching the servlets.conf JDBC settings. Whichever one matches first is the one selected. For example:
>
>
Every servlet that connects to a database needs a database password. These come from /etc/tomcat/servlets.passwd and are written into the same JDBC configuration file as the servlets.conf JDBC settings described above. The file must be owned by the user id that tomcat is running under and be mode 400. The format of the file is sections beginning with a name in square brackets followed by the setting name password: followed by the password value. The name in square brackets may be either a tnsName or a username matching the servlets.conf JDBC settings. Whichever one matches first is the one selected. For example:
 
[cms_orcon_adg]

Line: 129 to 133
 password: a_harder_to_guess_password
Changed:
<
<
This will use the first password for the FrontierProd servlet in the servlets.conf example above and the second password for the FrontierPrep servlet.
>
>
This will use the first password for the FrontierProd servlet in the servlets.conf example above and the second password for the FrontierPrep servlet.
 

Testing

Line: 138 to 142
  # service frontier-tomcat start
Changed:
<
<
Test it using a similar procedure as the frontier-squid test procedure except don't set http_proxy, change 8000 to 8080, and change FrontierProd to the name(s) you chose for your servlet(s).
>
>
Test it using a similar procedure as the frontier-squid test procedure except don't set http_proxy, change cmsfrontier.cern.ch to the name of your server, change 8000 to 8080, and change FrontierProd to the name(s) you chose for your servlet(s).

Revision 62012-11-13 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"
THIS PAGE IS UNDER CONSTRUCTION
Line: 18 to 18
 The instructions below are for the latest version of the frontier-tomcat rpm on a Scientific Linux version 5 or 6 based system. The rpm includes the standard Apache Tomcat distribution, an Oracle JDBC interface library, and the Frontier servlet. Please see the Frontier servlet Release Notes and rpm Release Notes for details on what has changed in recent versions.

Preparation

Changed:
<
<
The frontier-tomcat rpm requires that the user id the tomcat process will run under to already exist. By default it is the user "dbfrontier". This can be changed by creating a file /etc/tomcat/tomcat.conf before installing the rpm and putting in it the following line:
>
>
The frontier-tomcat rpm requires that the user id the tomcat process will run under to already exist. By default it is the user id "dbfrontier". This can be changed by creating a file /etc/tomcat/tomcat.conf before installing the rpm and putting in it the following line:
 
    export FRONTIER_USER=dbfrontier
Line: 28 to 28
  The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:

Changed:
<
<
[default]
>
>
[noname]
 
Changed:
<
<
Change its ownership also to the user id you chose, and change its mode to 400.
>
>
Change its owner also to the user id you chose, and change its mode to 400.
 

Installation

Line: 39 to 39
  # wget -O /etc/yum.repos.d/cern-frontier.repo http://frontier.cern.ch/dist/rpms/cern-frontier.repo
Changed:
<
<
The frontier-tomcat package depends on java, and there are two java versions to choose from: the Sun/Oracle version and OpenJDK. Both have been used successfully in production, but the Sun/Oracle version has had more production experience. By default the openjdk version is installed, but if you choose to use the Sun/Oracle version instead first do the following command:
>
>
The frontier-tomcat package depends on java, and there are two java versions to choose from: the Sun/Oracle version and OpenJDK. Both have been used successfully in production, but the Sun/Oracle version has had more production experience. By default the openjdk version is installed, but if you choose to use the Sun/Oracle version instead first do the following command:
 
    # yum install java-1.6.0-sun
Line: 61 to 61
 
    [defaults]
Changed:
<
<
and it contains the default settings that apply to each servlet if they're not overridden in the specific servlet's section. The following sections begin with servlet names in square brackets. Within each section there can be settings that get translated into different pieces of the underlying tomcat system configuration, as detailed below.
>
>
and it contains the default settings that apply to each servlet if they're not overridden in the specific servlet's section. Lines beginning with '#' and blank lines are ignored.
 
Changed:
<
<
JDBC settings
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/.xml where is the servlet name. These are all required except when using FileBaseDirectory (which serves files instead of database queries).
  • tnsName: the name of the oracle database as defined in a tnsnames.ora file. See the *useCopyOfTnsnames* setting below for details about how to find the file.
>
>
The following sections begin with servlet names in square brackets. Within each section there can be settings that get translated into different pieces of the underlying tomcat system configuration, as detailed below.

servlets.conf JDBC settings
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/<servlet>.xml where <servlet> is the servlet name. These are all required except when using FileBaseDirectory (which serves files instead of database queries).
  • tnsName: the name of the oracle database as defined in a tnsnames.ora file. See the useCopyOfTnsnames setting below for details about how to find the file.
 
  • username: the username of the database account.
Changed:
<
<
  • maxDbConnections: the number of parallel connections to the database to allow for this servlet.
>
>
  • maxDbConnections: the number of parallel connections to the database allowed for this servlet.
 
Changed:
<
<
Servlet settings
The following settings are directly for the frontier servlet. They are put into /usr/share/frontier-tomcat/tomcat/webapps//WEB-INF/classes/config.properties.
>
>
servlets.conf Servlet settings
The following settings are directly for the frontier servlet. They are put into /usr/share/frontier-tomcat/tomcat/webapps/<servlet>/WEB-INF/classes/config.properties.
 
  • LongCacheExpireSeconds (required): the number of seconds that most responses should be cached before they expire.
  • ShortCacheExpireSeconds (required): the number of seconds until cache expiration for the responses marked by the application to expire in a relatively "short" amount of time. Often this time is set to be the same number of seconds as LongCacheExpireSeconds.
  • ValidateLastModifiedSeconds (optional): enables "If-Modified-Since" processing and specifies the number of seconds that the frontier servlet should cache modification timestamps. A typical value is 300 for 5 minutes.
  • LastModifiedTableName (required if ValidateLastModifiedSeconds is set): the database account and table name that stores table modification times, for example CMS_FRONTIER_MODS.LAST_MODIFIED.
Changed:
<
<
  • MaxThreads
  • MaxDbAcquireSeconds
  • MaxDbExecuteSeconds
  • FileBaseDirectory
>
>
  • MaxThreads (default 100): the maximum number of parallel request threads that may exist. If the number goes beyond this value and the database needs to be contacted, the servlet rejects the request with a SERVICE_UNAVAILABLE code instead of queuing the request.
  • MaxDbAcquireSeconds (default 300): the maximum number of seconds that the servlet will wait to acquire a database connection. During this period the servlet will send a keepalive message every 5 seconds to keep the client from timing out.
  • MaxDbExecuteSeconds (default 10): the maximum number of seconds that the servlet will wait for the database to begin to respond to a query. While waiting the servlet will send a keepalive message every 5 seconds to keep the client from timing out. The total time allowed for the database query to respond then is this time plus the client read timeout (which is also typically 10 seconds).
  • FileBaseDirectory (optional): path to a directory of files to serve through the servlet instead of serving database queries. If this is set, it doesn't make sense to also specify settings related to databases.

servlets.conf Other setting
 
Deleted:
<
<
Other setting
 The following setting can only be in the [defaults] section:
  • useCopyOfTnsnames (optional): By default the Oracle database description file that frontier-tomcat uses is in /etc/tnsnames.ora. If that is a file that can be updated without the intervention of the frontier software administrator, set this option to a value of "1". This will make a copy of /etc/tnsames.ora in /etc/tomcat/tnsnames.ora, tell frontier-tomcat to read from that file instead, and install a daily cron job to compare the two. If there is a difference between the two files, the cron job will email a warning to the user id that frontier-tomcat runs under.
Added:
>
>
servlets.conf Example

Here is an example servlets.conf:

[defaults]
useCopyOfTnsnames: 1
username: CMS_COND_FRONTIER_R
maxDbConnections: 2
LastModifiedTableName: CMS_FRONTIER_MODS.LAST_MODIFIED

[FrontierPrep]
tnsName: CMS_ORCOFF_PREP
ValidateLastModifiedSeconds: 300
LongCacheExpireSeconds: 1200
ShortCacheExpireSeconds: 300

[FrontierProd]
tnsName: cms_orcon_adg
maxDbConnections: 5
ValidateLastModifiedSeconds: 300
MaxDbExecuteSeconds: 30
MaxThreads: 200
LongCacheExpireSeconds: 21000
ShortCacheExpireSeconds: 21000

[smallfiles]
FileBaseDirectory: /data/fileserve/smallfiles
LongCacheExpireSeconds: 21600
ShortCacheExpireSeconds: 21600
 

servlets.passwd

Added:
>
>
Every servlet that connects to a database needs a database password. These come from /etc/tomcat/servlets.passwd and are written into the same JDBC configuration file as servlets.conf JDBC settings section above. The file must be owned by the user id that tomcat is running under and be mode 400. The format of the file is sections beginning with a name in square brackets followed by the setting name password: followed by the password value. The name in square brackets may be either a tnsName or a username matching the servlets.conf JDBC settings. Whichever one matches first is the one selected. For example:

[cms_orcon_adg]
password: a_hard_to_guess_password
[CMS_COND_FRONTIER_R]
password: a_harder_to_guess_password

This will use the first password for the FrontierProd servlet in the servlets.conf example above and the second password for the FrontierPrep servlet.

Testing

Start the tomcat process as root with the command

    # service frontier-tomcat start

Test it using a similar procedure as the frontier-squid test procedure except don't set http_proxy, change 8000 to 8080, and change FrontierProd to the name(s) you chose for your servlet(s).

Revision 52012-11-13 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"
THIS PAGE IS UNDER CONSTRUCTION
Line: 24 to 24
  where you can fill in whichever user id you choose.
Added:
>
>
Make sure that email sent to this user id will be forwarded to the person or people who administer the frontier software.
 The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:
    [default]

Line: 62 to 64
 and it contains the default settings that apply to each servlet if they're not overridden in the specific servlet's section. The following sections begin with servlet names in square brackets. Within each section there can be settings that get translated into different pieces of the underlying tomcat system configuration, as detailed below.

JDBC settings
Changed:
<
<
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/.xml where is the servlet name.
  • tnsName (required): the name of the oracle database as defined in a tnsnames.ora file. The default location of that file is assumed to be /etc/tnsnames.ora but see the useCopyOfTnsnames setting below.
  • username (required): the username of the database account.
  • maxDbConnections (required): the number of parallel connections to the database to allow for this servlet.
>
>
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/.xml where is the servlet name. These are all required except when using FileBaseDirectory (which serves files instead of database queries).
  • tnsName: the name of the oracle database as defined in a tnsnames.ora file. See the *useCopyOfTnsnames* setting below for details about how to find the file.
  • username: the username of the database account.
  • maxDbConnections: the number of parallel connections to the database to allow for this servlet.
 
Servlet settings
Added:
>
>
The following settings are directly for the frontier servlet. They are put into /usr/share/frontier-tomcat/tomcat/webapps//WEB-INF/classes/config.properties.
  • LongCacheExpireSeconds (required): the number of seconds that most responses should be cached before they expire.
  • ShortCacheExpireSeconds (required): the number of seconds until cache expiration for the responses marked by the application to expire in a relatively "short" amount of time. Often this time is set to be the same number of seconds as LongCacheExpireSeconds.
  • ValidateLastModifiedSeconds (optional): enables "If-Modified-Since" processing and specifies the number of seconds that the frontier servlet should cache modification timestamps. A typical value is 300 for 5 minutes.
  • LastModifiedTableName (required if ValidateLastModifiedSeconds is set): the database account and table name that stores table modification times, for example CMS_FRONTIER_MODS.LAST_MODIFIED.
  • MaxThreads
  • MaxDbAcquireSeconds
  • MaxDbExecuteSeconds
  • FileBaseDirectory
 
Other setting
The following setting can only be in the [defaults] section:
Changed:
<
<
  • useCopyOfTnsnames (optional):
>
>
  • useCopyOfTnsnames (optional): By default the Oracle database description file that frontier-tomcat uses is in /etc/tnsnames.ora. If that is a file that can be updated without the intervention of the frontier software administrator, set this option to a value of "1". This will make a copy of /etc/tnsames.ora in /etc/tomcat/tnsnames.ora, tell frontier-tomcat to read from that file instead, and install a daily cron job to compare the two. If there is a difference between the two files, the cron job will email a warning to the user id that frontier-tomcat runs under.

servlets.passwd

Revision 42012-11-10 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"
THIS PAGE IS UNDER CONSTRUCTION
Line: 24 to 24
  where you can fill in whichever user id you choose.
Changed:
<
<
The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:
>
>
The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:
 
    [default]
Line: 52 to 52
 Because the configuration isn't set up yet, this will result in some nasty-looking messages starting with "ERROR: failed to start frontier-tomcat. Dangling installation." and ending with "scriptlet failed, exit status 1" but that's OK at this point.

Configuration

\ No newline at end of file
Added:
>
>
The two configuration files that still need to be set up are /etc/tomcat/servlets.conf and /etc/tomcat/servlets.passwd.

servlets.conf

The main configuration file is /etc/tomcat/servlets.conf. This consists of several sections that each begin with a name in square brackets. The first section is
    [defaults]
and it contains the default settings that apply to each servlet if they're not overridden in the specific servlet's section. The following sections begin with servlet names in square brackets. Within each section there can be settings that get translated into different pieces of the underlying tomcat system configuration, as detailed below.

JDBC settings
The following settings become part of the JDBC (which stands for Java DataBase Connectivity) configuration for each servlet. These are put into /usr/share/frontier-tomcat/tomcat/conf/Catalina/localhost/.xml where is the servlet name.
  • tnsName (required): the name of the oracle database as defined in a tnsnames.ora file. The default location of that file is assumed to be /etc/tnsnames.ora but see the useCopyOfTnsnames setting below.
  • username (required): the username of the database account.
  • maxDbConnections (required): the number of parallel connections to the database to allow for this servlet.

Servlet settings

Other setting
The following setting can only be in the [defaults] section:
  • useCopyOfTnsnames (optional):

Revision 32012-11-06 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"
THIS PAGE IS UNDER CONSTRUCTION
Line: 49 to 49
  The first time you use yum to install any frontier package it will prompt you to import the GPG key; answer 'y'.
Added:
>
>
Because the configuration isn't set up yet, this will result in some nasty-looking messages starting with "ERROR: failed to start frontier-tomcat. Dangling installation." and ending with "scriptlet failed, exit status 1" but that's OK at this point.
 

Configuration

\ No newline at end of file

Revision 22012-11-06 - DaveDykstra

Line: 1 to 1
 
META TOPICPARENT name="InstallLaunchpad"
THIS PAGE IS UNDER CONSTRUCTION
Line: 24 to 24
  where you can fill in whichever user id you choose.
Added:
>
>
The current version of the rpm requires the file /etc/tomcat/servlets.passwd to exist and be non-empty at install time. Make the /etc/tomcat directory writable by the user id you chose, and create /etc/tomcat/servlets.passwd with this content for now:
    [default]
Change its ownership also to the user id you chose, and change its mode to 400.
 

Installation

First, if you have not installed any frontier rpm before, execute the following command as the root user:

Line: 31 to 37
  # wget -O /etc/yum.repos.d/cern-frontier.repo http://frontier.cern.ch/dist/rpms/cern-frontier.repo
Changed:
<
<
Install the package with the following command:
>
>
The frontier-tomcat package depends on java, and there are two java versions to choose from: the Sun/Oracle version and OpenJDK. Both have been used successfully in production, but the Sun/Oracle version has had more production experience. By default the openjdk version is installed, but if you choose to use the Sun/Oracle version instead first do the following command:
    # yum install java-1.6.0-sun

Install the main package with the following command:

 
    # yum install frontier-tomcat

Revision 12012-11-02 - DaveDykstra

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="InstallLaunchpad"
THIS PAGE IS UNDER CONSTRUCTION

Installing frontier-tomcat

The frontier-tomcat package is intended for use on a central Frontier "launchpad" server. This page has instructions for installing it.

This is what is on this page:

Hardware

The hardware requirements depend on the application. In general, a typical 2-core virtual machine is sufficient for an LHC Conditions data server. However, if there are many clients that request different database queries at around the same time, more cores may be needed in order to keep up. The bottleneck tends to be the CPU, not the network or memory. Very little disk access is done.

Software

The instructions below are for the latest version of the frontier-tomcat rpm on a Scientific Linux version 5 or 6 based system. The rpm includes the standard Apache Tomcat distribution, an Oracle JDBC interface library, and the Frontier servlet. Please see the Frontier servlet Release Notes and rpm Release Notes for details on what has changed in recent versions.

Preparation

The frontier-tomcat rpm requires that the user id the tomcat process will run under to already exist. By default it is the user "dbfrontier". This can be changed by creating a file /etc/tomcat/tomcat.conf before installing the rpm and putting in it the following line:
    export FRONTIER_USER=dbfrontier
where you can fill in whichever user id you choose.

Installation

First, if you have not installed any frontier rpm before, execute the following command as the root user:

    # wget -O /etc/yum.repos.d/cern-frontier.repo http://frontier.cern.ch/dist/rpms/cern-frontier.repo

Install the package with the following command:

    # yum install frontier-tomcat

The first time you use yum to install any frontier package it will prompt you to import the GPG key; answer 'y'.

Configuration

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback