FTS_
. Any variable with this prefix that the script does not understand will cause it to fail (to catch spelling mis-types).
There is only one parameter which MUST be set: FTS_DBURL
, which specifies the JDBC Oracle connection string. This is usually similar to the agents' FTA_GLOBAL_DB_CONNECTSTRING
parameter, but not in every case, so it must be specified explicitly. It can be provided by your database administrator.
In case the FTS web service and the agents are configured in the same file, as is usually the case, it is not necessary to provide the DB username and password, since these are taken from the Agents parameters.
The database connection parameters may be overriden if desired (for example if the web-service is using a different DB role from the agents).
Parameter name | Default (corresponding agent parameter) |
---|---|
FTS_DB_TYPE |
Value of FTA_GLOBAL_DBTYPE |
FTS_DB_USER |
Value of FTA_GLOBAL_DB_USER |
FTS_DB_PASSWORD |
Value of FTS_GLOBAL_DB_PASSWORD |
FTS_DB_TYPE=ORACLE FTS_DB_USER=lcg_fts_prod_ws_w FTS_DB_PASSWORD=yyyyyyyyBy default, the web-service will publish its endpoint in BDII using its hostname. If instead, you wish to publish this using a DNS alias, set the parameter FTS_HOST_ALIAS.
# Node names [...] FTS_HOST=%FTS_WS_HOSTNAME%.$MY_DOMAIN [...] # BDII/GIP specific settings [...] BDII_FTS_URL="ldap://$FTS_HOST:2170/mds-vo-name=resource,o=grid" [...] # FTS config file for web-service FTS_DBURL=... # The JDBC url for connecting to the DB FTS_HOST_ALIAS=prod-fts-ws.cern.chWHAT IS FTS_HOST ???
FTA_MACHINES
:
FTA_MACHINES="ONE TWO"Then, for each of the machines defined, specify the host name using the variable
FTA_AGENTS_${MACHINE}_HOSTNAME
and the list of agents that will run on that machine using the variable FTA_AGENTS_${MACHINE}
:
FTA_AGENTS_ONE_HOSTNAME="fts001.cern.ch" FTA_AGENTS_ONE="CERN-CERN DTEAM" FTA_AGENTS_TWO_HOSTNAME="fts002.cern.ch" FTA_AGENTS_TWO="CERN-RAL CERN-IN2P3"
[A-Z]*-[A-Z]*
.
FTA_CERN_CERN="URLCOPY" FTA_DTEAM="VOAGENT" FTA_CERN_RAL="URLCOPY" FTA_CERN_IN2P3="SRMCOPY"
# All agents: FTA_GLOBAL_LOG_PRIORITY="INFO" # All URLCOPY channel agents: FTA_TYPEDEFAULT_URLCOPY_LOG_PRIOIRITY="DEBUG" # the named CERN-RAL agent (note the '-' converted to '_') FTA_CERN_RAL_LOG_PRIORITY="INFO"Please note that DB connection parameters have no defaults, and should be specified at global level:
FTA_GLOBAL_DB_CONNECTSTRING="(DESCRIPTION=(LOAD_BALANCE=no)(ADDRESS=(PROTOCOL=TCP)(HOST=lcgtestdb1.cern.ch)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=lcgtestdb2.cern.ch)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=lcg_fts.cern.ch)))" FTA_GLOBAL_DB_USER=lcg_fts_prod_w FTA_GLOBAL_DB_PASSWORD=xxxxxxxx
ORACLE_LOCATION
variable for Oracle InstantClient. For example, for the recommended 10.2.0.3 InstantClient:
ORACLE_LOCATION=/usr/lib/oracle/10.2.0.3
glite-transfer-channel-set
that should be used to set the value.
Parameter name | Database field | glite-transfer-channel-set flag |
---|---|---|
GUC_TRANSFERTIMEOUT | urlcopy_tx_to (urlcopy channels) srmcopy_to (srmcopy channels) |
--urlcopy-tx-to --srmcopy-to |
GUC_HTTPTIMEOUT | http_to | --http-timeout |
GUC_STREAMS | nostreams | -T |
GUC_TCPBUFFERSIZE | tcp_buffer_size | -u |
GUC_TCPBLOCKSIZE | blocksize | --block-size |
GUC_SRMPUTTIMEOUT | urlcopy_put_to | --urlcopy-put-to |
GUC_SRMGETTIMEOUT | urlcopy_get_to | --urlcopy-get-to |
GUC_SRMPUTDONETIMEOUT | urlcopy_putdone_to | --urlcopy-putdone-to |
GUC_SRMGETDONETIMEOUT | urlcopy_getdone_to | --urlcopy-getdone-to |
GUC_TRANSFERMARKERSTIMEOUT | urlcopy_txmarks_to | --urlcopy-tx-marks-to |
GUC_SRMCOPYDIRECTION | srmcopy_direction | --srmcopy-direction |
GUC_LOGLEVEL | tx_loglevel | --tx-log-level |
GUC_SRMSTATUSTIMEOUT | srmcopy_refresh_to | --srmcopy-refresh-to |
update_channels.py
script copies in the database the parameters defined in the channel agents configuration files. It is located under the same directory as the agents' configuration files, ${GLITE_LOCATION}/etc/glite-data-transfer-agents.d
.
In FTS 2.1 it was not yet possible to set all channel parameters properly through the command line interface, so this script was run by YAIM whenever a channel was updated. With FTS 2.2 this is no longer necessary since the CLI allows setting all channel parameters, and YAIM will produce an error in case one of the obsolete parameters is set.
Your database should be synchronized with the agents' configuration files if you are upgrading from FTS 2.1, and running this script should not be necessary, but it is still provided in case you want to run it manually before upgrading.
The script requires no parameters. You can run it simply with: python update_channels.py
The script will: FTA_%AGENT%_AGENT_NAME
.
cd /opt/glite/share/config/glite-data-transfer-agents/yaim xsltproc -stringparam Param timeout find-param.xsl ../glite-transfer-channel-agent-urlcopy-oracle.config.xml xsltproc -stringparam Prefix FTA_GLOBAL -stringparam Param timeout find-param.xsl ../glite-transfer-channel-agent-urlcopy-oracle.config.xmlwhere
"timeout"
is the string to search for. The variable names and descriptions are searched.
The Prefix
option allows you to get the full yaim variable with the appropriate scope prefix.