Type
This page summarizes the steps taken to create a standalone FTS server for IPv6 conpatibility testing. The steps are rather complex. They are not recommended for installation on other testbed nodes.
-
The Glite 3.2 repository is used. The EMI 1 RPM repository was checked, but it looks like most of the configuration scripts were not updated for that version yet. Add /etc/yum.repos.d/glite32-fts.repo:
[glite-FTS] name=gLite 3.2 FTS baseurl=http://glitesoft.cern.ch/EGEE/gLite/R3.2/glite-FTS_oracle/sl5/x86_64/RPMS.release/ gpgkey=http://glite.web.cern.ch/glite/glite_key_gd.asc gpgcheck=1 enabled=1 [glite-FTS_updates] name=gLite 3.2 FTS baseurl=http://glitesoft.cern.ch/EGEE/gLite/R3.2/glite-FTS_oracle/sl5/x86_64/RPMS.updates/ gpgkey=http://glite.web.cern.ch/glite/glite_key_gd.asc gpgcheck=1 enabled=1 [glite-FTS_ext] name=gLite 3.2 FTS baseurl=http://glitesoft.cern.ch/EGEE/gLite/R3.2/glite-FTS_oracle/sl5/x86_64/RPMS.externals/ gpgcheck=0 enabled=1 protect=1
-
yum install glite-FTS_oracle.x86_64
================================================================================ Package Arch Version Repository Size ================================================================================ Installing: glite-FTS_oracle x86_64 3.2.1-2.sl5 glite-FTS 4.2k Installing for dependencies: CGSI_gSOAP_2.7 x86_64 1.3.3-2.sl5 glite-FTS_updates 67k ant x86_64 1.6.5-2jpp.2 slc5-os 2.3M antlr x86_64 2.7.6-4jpp.2 slc5-os 1.1M axis x86_64 1.2.1-2jpp.6 slc5-os 3.6M bcel x86_64 5.1-8jpp.1 slc5-os 1.1M bdii noarch 5.2.5-1.el5 epel 21k bouncycastle-glite noarch 1.42-3.jdk5 glite-FTS_ext 1.3M classpathx-jaf x86_64 1.0-9jpp.1 slc5-os 111k classpathx-mail x86_64 1.1.1-4jpp.2 slc5-os 1.2M eclipse-ecj x86_64 1:3.2.1-19.el5 slc5-os 9.0M edg-mkgridmap noarch 3.0.0-1 glite-FTS 37k geronimo-specs-compat x86_64 1.0-0.M2.2jpp.12 slc5-os 5.4k gjdoc x86_64 0.7.7-12.el5 slc5-os 885k glite-data-delegation-api-c x86_64 2.0.0-7.sl5 glite-FTS_updates 283k glite-data-delegation-cli x86_64 2.0.0-7.sl5 glite-FTS_updates 47k glite-data-transfer-cli x86_64 3.7.3-3.sl5 glite-FTS_updates 1.4M glite-data-transfer-fts noarch 3.7.0-3 glite-FTS 3.6M glite-data-util-c x86_64 1.2.3-1.sl5 glite-FTS 39k glite-info-generic noarch 2.0.2-5 glite-FTS_updates 5.4k glite-info-provider-release noarch 1.0.1-1 glite-FTS_updates 3.2k glite-info-templates noarch 1.0.0-11 glite-FTS_updates 8.4k glite-security-delegation-interface noarch 2.0.0-3 glite-FTS 18k glite-security-trustmanager x86_64 2.5.5-4.el5 epel 60k glite-security-util-java x86_64 2.8.0-1.el5 epel 294k glite-security-voms-api-c x86_64 1.9.17-1.sl5 glite-FTS_updates 3.7M glite-security-voms-api-cpp x86_64 1.9.17-1.sl5 glite-FTS_updates 4.4M glite-service-discovery-api-c x86_64 2.2.2-2.sl5 glite-FTS 55k glite-service-discovery-bdii-c x86_64 2.2.2-3.sl5 glite-FTS 33k glite-service-discovery-cli x86_64 2.2.1-2.sl5 glite-FTS 15k glite-service-discovery-file-c x86_64 2.1.2-2.sl5 glite-FTS 42k glite-version noarch 3.2.2-1 glite-FTS_updates 5.0k glite-yaim-core noarch 4.0.12-1 glite-FTS_updates 123k glite-yaim-fts noarch 4.1.6-1 glite-FTS 28k glue-schema noarch 2.0.8-1.el5 epel 34k gpt x86_64 3.2autotools2004_NMI_9.0_x86_64_rhap_5-1 glite-FTS_ext 883k gridsite-shared x86_64 1.5.10.5-3.sl5 glite-FTS_updates 106k jakarta-commons-beanutils x86_64 1.7.0-5jpp.1 slc5-os 567k jakarta-commons-cli x86_64 1.0-6jpp_10.el5 epel 76k jakarta-commons-collections x86_64 3.2-2jpp.3 slc5-os 1.2M jakarta-commons-daemon x86_64 1:1.0.1-6jpp.1 slc5-os 46k jakarta-commons-dbcp x86_64 1.2.1-7jpp.1 slc5-os 278k jakarta-commons-digester x86_64 1.7-5jpp.1 slc5-os 349k jakarta-commons-discovery x86_64 1:0.3-4jpp.1 slc5-os 150k jakarta-commons-el x86_64 1.0-7jpp.1 slc5-os 269k jakarta-commons-fileupload x86_64 1:1.0-6jpp.1 slc5-os 53k jakarta-commons-httpclient x86_64 1:3.0-7jpp.1 slc5-os 595k jakarta-commons-lang x86_64 2.1-5jpp.1 slc5-os 508k jakarta-commons-launcher x86_64 0.9-6jpp.1 slc5-os 97k jakarta-commons-logging x86_64 1.0.4-6jpp.1 slc5-os 115k jakarta-commons-modeler x86_64 1.1-8jpp.3.el5 slc5-os 259k jakarta-commons-pool x86_64 1.3-5jpp.1 slc5-os 142k java-1.4.2-gcj-compat x86_64 1.4.2.0-40jpp.115 slc5-os 29k java-1.6.0-openjdk x86_64 1:1.6.0.0-1.25.1.10.6.el5_8 slc5-updates 36M java-1.6.0-openjdk-devel x86_64 1:1.6.0.0-1.25.1.10.6.el5_8 slc5-updates 12M jpackage-utils noarch 1.7.3-1jpp.2.el5 slc5-os 61k libgcj x86_64 4.1.2-52.el5 slc5-updates 18M log4j x86_64 1.2.13-3jpp.2 slc5-os 729k mx4j x86_64 1:3.0.1-6jpp.4 slc5-os 2.7M openldap-servers x86_64 2.3.43-25.el5 slc5-updates 2.2M perl-DateManip noarch 5.44-1.2.1 slc5-os 143k perl-IO-Socket-SSL noarch 1.01-1.fc6 slc5-os 49k perl-LDAP noarch 1:0.33-3.fc6 slc5-os 316k perl-Net-SSLeay x86_64 1.30-4.fc6 slc5-os 192k perl-TermReadKey x86_64 2.20-12 slc5-os 26k perl-XML-NamespaceSupport noarch 1.09-1.2.1 slc5-os 15k perl-XML-SAX noarch 0.14-11 slc5-updates 78k regexp x86_64 1.4-2jpp.2 slc5-os 102k tomcat5 x86_64 5.5.23-0jpp.22.el5_7 slc5-updates 362k tomcat5-common-lib x86_64 5.5.23-0jpp.22.el5_7 slc5-updates 225k tomcat5-jasper x86_64 5.5.23-0jpp.22.el5_7 slc5-updates 1.1M tomcat5-jsp-2.0-api x86_64 5.5.23-0jpp.22.el5_7 slc5-updates 103k tomcat5-server-lib x86_64 5.5.23-0jpp.22.el5_7 slc5-updates 4.1M tomcat5-servlet-2.4-api x86_64 5.5.23-0jpp.22.el5_7 slc5-updates 163k tzdata-java x86_64 2011l-4.el5 slc5-updates 190k vdt_globus_essentials x86_64 VDT1.10.1x86_64_rhap_5-4 glite-FTS_ext 13M vomsjapi x86_64 2.0.6-2.el5 epel 379k wsdl4j x86_64 1.5.2-4jpp.1 slc5-os 428k xalan-j2 x86_64 2.7.0-6jpp.1 slc5-os 4.6M xerces-j2 x86_64 2.7.1-7jpp.2.el5_4.2 slc5-os 3.1M xml-commons x86_64 1.3.02-0.b2.7jpp.10 slc5-os 19k xml-commons-resolver x86_64 1.1-1jpp.12 slc5-os 170k Transaction Summary ================================================================================ Install 82 Package(s) Upgrade 0 Package(s) Total size: 141 M Total download size: 30 M
-
Obtain instantclient libraries from Oracle site
oracle-instantclient11.2-basic-11.2.0.3.0-1.x86_64.rpm oracle-instantclient11.2-jdbc-11.2.0.3.0-1.x86_64.rpm
-
Add /etc/ld.so.conf.d/glite_test.conf
/opt/globus/lib /opt/lcg/lib /usr/lib/oracle/11.2/client64/lib /opt/glite/lib64
-
run ldconfig
-
Configure tomcat
ln -s /etc/glite-security-trustmanager /opt/glite/etc ln -s /opt/glite/etc/glite-security-trustmanager/trustmanager-log4j.properties /opt/glite/etc/glite-security-trustmanager/log4j-trustmanager.properties
then execute:
#!/bin/sh . /opt/glite/yaim/functions/config_tomcat function yaimlog() { echo $2 } config_tomcat mkdir /var/log/glite-security-trustmanager chgrp tomcat /var/log/glite-security-trustmanager chmod 775 /var/log/glite-security-trustmanager
Point trustmanager JARs to new location:
# ln -sf /usr/share/java/glite-security-trustmanager.jar /var/lib/tomcat5/server/lib # ln -sf /usr/share/java/glite-security-util-java.jar /var/lib/tomcat5/server/lib
Add CATALINA_OPTS=\”-Xmx1024M\” to /etc/tomcat5/tomcat5.conf
-
Add Oracle JDBC libs:
cp /usr/lib/oracle/11.2/client64/lib/ojdbc6.jar /usr/share/tomcat5/common/lib/ chown tomcat.tomcat /usr/share/tomcat5/common/lib/ojdbc6.jar
-
Try creating oracle tables for FTS.
SQL connect string: connstring='fprelz/XXX@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbvrts1019.ipv6.cern.ch)(PORT=10121))(ENABLE=BROKEN)(CONNECT_DATA=(SID=DBV6)))' fts_schema_dir="/opt/glite/etc/glite-data-transfer-fts/schema/oracle" /usr/lib/oracle/11.2/client64/bin/sqlplus $connstring @$fts_schema_dir/oracle-schema.sql Then check schema version: /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @$fts_schema_dir/oracle-get-version.sql 3.4.1 /usr/lib/oracle/11.2/client64/bin/sqlplus $connstring @/opt/glite/etc/glite-security-delegation-interface/schema/oracle/oracle-schema.sql Then check schema version: /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @/opt/glite/etc/glite-security-delegation-interface/schema/oracle/oracle-get-version.sql 1.2.0 /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @$fts_schema_dir/fts_history_pack.sql /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @$fts_schema_dir/fts_history_body_pack.sql Then check schema version: /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @$fts_schema_dir/package-get-version.sql FTS_HISTORY_PACK 1.0.0 /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @$fts_schema_dir/fts_purge_pack.sql /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @$fts_schema_dir/fts_purge_body_pack.sql Then check schema version: /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @$fts_schema_dir/package-get-version.sql FTS_PURGE_PACK 1.0.0
Resulting tables:
SQL> select * from cat; TABLE_NAME TABLE_TYPE ------------------------------ ----------- AUDIT_CHAN_ID_SEQ SEQUENCE FILE_FILE_ID_SEQ SEQUENCE SE_BAD_ID_SEQ SEQUENCE TRANSFER_EXTRA_ID_SEQ SEQUENCE T_AGENT TABLE T_AUDIT_CHANNEL TABLE T_BAD_SES TABLE T_CHANNEL TABLE T_CHANNEL_ACL TABLE T_CHANNEL_VO_SHARE TABLE T_CREDENTIAL TABLE TABLE_NAME TABLE_TYPE ------------------------------ ----------- T_CREDENTIAL_CACHE TABLE T_CREDENTIAL_VERS TABLE T_FILE TABLE T_FILE_HISTORY TABLE T_FTS_PLUGIN TABLE T_FTS_PLUGIN_SCHEMA TABLE T_HISTORY_LOG TABLE T_HISTORY_PURGE_LOG TABLE T_JOB TABLE T_JOB_HISTORY TABLE T_SCHEMA_VERS TABLE TABLE_NAME TABLE_TYPE ------------------------------ ----------- T_SITE_GROUP TABLE T_STAGE_REQ TABLE T_TRANSFER TABLE T_TRANSFER_EXTRA TABLE T_TRANSFER_HISTORY TABLE T_VO_ACL TABLE X_FILEIDS TABLE X_JOBIDS TABLE X_PURGE_FILEIDS TABLE X_PURGE_JOBIDS TABLE 32 rows selected.
-
Make context file
/etc/tomcat5/Catalina/localhost/glite-data-transfer-fts.xml
by editing/opt/glite/etc/glite-data-transfer-fts/context.template.xml
and replacing all@VAR@
variables:@DOCBASE@=/opt/glite/share/java/glite-data-transfer-fts.war @LOG4JCONFIG@=/opt/glite/etc/glite-data-transfer-fts/log4j.properties @DBCP_FACTORY@=org.apache.commons.dbcp.BasicDataSourceFactory @DBUSER@=fprelz @DBPASSWORD@=whatever @DBURL@=jdbc:oracle:thin:@dbvrts1019.ipv6.cern.ch:10121:DBV6 @SECURITY_ENABLED@=true @SUBMIT_VOMS_ATTRIBUTES@=/ipv6.hepix.org/Role=NULL/Capability=NULL @SUBMIT_MAPFILE@= @ADMIN_VOMS_ATTRIBUTES@= @ADMIN_MAPFILE@=/opt/glite/etc/glite-data-transfer-manager-mapfile @VETO_MAPFILE@=/opt/glite/etc/glite-data-transfer-veto-mapfile @HOST_ALIAS@=
-
Create map files
echo "\"/C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz\" tomcat" > /opt/glite/etc/glite-data-transfer-manager-mapfile touch /opt/glite/etc/glite-data-transfer-veto-mapfile
-
Restart tomcat
service tomcat5 restart
-
Install urlcopy FTA
yum install glite-FTA_oracle.x86_64 ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: glite-FTA_oracle x86_64 3.2.1-2.sl5 glite-FTS 4.2k Installing for dependencies: boost x86_64 1.33.1-15.el5 slc5-updates 863k glite-data-agents-common x86_64 1.1.2-2.sl5 glite-FTS_updates 4.3M glite-data-config-service x86_64 2.6.2-2.sl5 glite-FTS_updates 717k glite-data-srm-api-c x86_64 1.1.0-13.sl5 glite-FTS_updates 1.4M glite-data-srm-util-cpp x86_64 2.2.2-3.sl5 glite-FTS_updates 5.0M glite-data-srm2-api-c x86_64 2.2.0-7.sl5 glite-FTS_updates 3.7M glite-data-transfer-agents x86_64 3.4.7-3.sl5 glite-FTS 14M glite-data-transfer-proxyrenewal x86_64 1.0.0-9.sl5 glite-FTS 394k glite-data-transfer-url-copy x86_64 3.2.5-3.sl5 glite-FTS 2.4M glite-sd2cache noarch 1.0.4-1 glite-FTS 12k glite-security-proxyrenewal x86_64 1.3.11-4.sl5 glite-FTS 94k libicu x86_64 3.6-5.16.1 slc5-updates 5.2M log4cpp x86_64 1.0-9.el5 slc5-os 199k myproxy x86_64 VDT1.10.1x86_64_rhap_5-4.2 glite-FTS_ext 1.3M Transaction Summary ================================================================================ Install 15 Package(s) Upgrade 0 Package(s)
-
Create host certs for data transfer agents (user edguser was already created)
cp -f /etc/grid-security/hostcert.pem /etc/grid-security/glite-data-transfer-agents-cert.pem cp -f /etc/grid-security/hostkey.pem /etc/grid-security/glite-data-transfer-agents-key.pem chown edguser:root /etc/grid-security/glite-data-transfer-agents-cert.pem chown edguser:root /etc/grid-security/glite-data-transfer-agents-key.pem chmod 644 /etc/grid-security/glite-data-transfer-agents-cert.pem chmod 400 /etc/grid-security/glite-data-transfer-agents-key.pem
-
Configure agents: 1 ipv6.hepix.org VO agent (not python:
Py_Initialize
crashes with the default 2.4 python on SLC5) and 2 transfer agents./opt/glite/bin/glite_data_config_generator -f /opt/glite/share/config/glite-data-transfer-agents/glite-transfer-vo-agent-oracle.config.xml -o /opt/glite/etc/glite-transfer-vo-agent-IPV6.properties.xml -l /opt/glite/etc/glite-transfer-vo-agent-IPV6.log-properties Level: low (0) ConnectString = (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbvrts1019.ipv6.cern.ch)(PORT=10121))(ENABLE=BROKEN)(CONNECT_DATA=(SID=DBV6))) User = fprelz Password = XXX Name = ipv6.hepix.org Log file: default (/tmp/transfer-vo-agent.log) /opt/glite/bin/glite_data_config_generator -f /opt/glite/share/config/glite-data-transfer-agents/glite-transfer-channel-agent-urlcopy-oracle.config.xml -o /opt/glite/etc/glite-transfer-channel-agent-INFN-GARR.properties.xml -l /opt/glite/etc/glite-transfer-channel-agent-INFN-GARR.log-properties Level: low (0) ConnectString = (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbvrts1019.ipv6.cern.ch)(PORT=10121))(ENABLE=BROKEN)(CONNECT_DATA=(SID=DBV6))) User = fprelz Password = XXX Name = INFN-GARR Log file: default (/tmp/transfer-channel-agent.log) /opt/glite/bin/glite_data_config_generator -f /opt/glite/share/config/glite-data-transfer-agents/glite-transfer-channel-agent-urlcopy-oracle.config.xml -o /opt/glite/etc/glite-transfer-channel-agent-INFN-CERN.properties.xml -l /opt/glite/etc/glite-transfer-channel-agent-INFN-CERN.log-properties Level: low (0) ConnectString = (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbvrts1019.ipv6.cern.ch)(PORT=10121))(ENABLE=BROKEN)(CONNECT_DATA=(SID=DBV6))) User = fprelz Password = XXX Name = INFN-CERN Log file: default (/tmp/transfer-channel-agent.log) chown edguser /opt/glite/etc/*transfer*agent*prop* chmod 640 /opt/glite/etc/*transfer*agent*prop* ---> For the init.d script. mv /opt/glite/etc/*transfer*agent*prop* /opt/glite/etc/glite-data-transfer-agents.d cp /opt/glite/etc/init.d/glite-data-transfer-agents /etc/init.d/transfer-agents Add to init.d script, to make chkconfig happy: # description: Processes to steer FTS data transfer. # processname: glite_data_transfer_agent # config: /opt/glite/etc/glite-data-transfer-agents.d
-
Rebuild
libglite_data_agents_common_dao_oracle.so
,libglite_data_transfer_agent_dao_oracle.so
,libglite_data_transfer_agent_dao_oracle_dumper.so
to work with the Oracle 11.2 instantclient.Install oracle-instantclient11.2-devel-11.2.0.3.0-1.x86_64.rpm yum install boost-devel.x86_64 yum install log4cpp-devel.x86_64
Then rebuild and replace the three libraries:
/opt/glite/lib64/libglite_data_agents_common_dao_oracle.so.1.1.2.ORIG /opt/glite/lib64/libglite_data_transfer_agent_dao_oracle_dumper.so.3.4.7.ORIG /opt/glite/lib64/libglite_data_transfer_agent_dao_oracle.so.3.4.7.ORIG
-
Start the transfer agents
ldconfig /sbin/chkconfig --add transfer-agents /sbin/chkconfig transfer-agents on /etc/init.d/transfer-agents start
-
Install FTM
yum install glite-FTM.x86_64 ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: glite-FTM x86_64 3.2.1-2.sl5 glite-FTS 3.6k Installing for dependencies: cx_Oracle x86_64 5.0.3-1 glite-FTS_ext 234k glite-transfer-monitor-gridview noarch 1.0.3-1 glite-FTS 12k glite-transfer-monitor-report noarch 1.0.1-2 glite-FTS 132k glite-transfer-monitor-schema noarch 1.0.0-1 glite-FTS 5.2k Transaction Summary ================================================================================ Install 5 Package(s) Upgrade 0 Package(s)
-
Create table and procedures for FTM:
/usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @/opt/glite/share/transfer-monitor-schema/fts_filestats_schema.sql /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @/opt/glite/share/transfer-monitor-schema/fts_filestats_pack.sql /usr/lib/oracle/11.2/client64/bin/sqlplus -S -L $connstring @/opt/glite/share/transfer-monitor-schema/fts_filestats_pack_body.sql
-
Configure /opt/glite/etc/transfer-monitor-report.conf
DB_CONNECT_STR="(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbvrts1019.ipv6.cern.ch)(PORT=10121))(ENABLE=BROKEN)(CONNECT_DATA=(SID=DBV6)))" DB_USER="fprelz" DB_PASSWORD="XXX" REPORTS_FTS_INSTANCE="seipersei.mi.infn.it" ORACLE_LOCATION=/usr/lib/oracle/11.2
/etc/init.d/transfer-monitor-report-daily stop /etc/init.d/transfer-monitor-report-hourly stop /etc/init.d/transfer-monitor-report-weekly stop /etc/init.d/transfer-monitor-report-daily start /etc/init.d/transfer-monitor-report-hourly start /etc/init.d/transfer-monitor-report-weekly start
-
Create transfer channels via the CLI:
$ glite-transfer-channel-add -f 2 -b 10 -c Francesco.Prelz@mi.infn.it -t 8 -T 3 -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement INFN-CERN mi.infn.it cern.ch $ glite-transfer-channel-add -f 2 -b 10 -c Francesco.Prelz@mi.infn.it -t 8 -T 3 -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement INFN-GARR mi.infn.it garr.it $ glite-transfer-channel-setvoshare INFN-CERN ipv6.hepix.org 100 -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement $ glite-transfer-channel-setvoshare INFN-GARR ipv6.hepix.org 100 -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement $ glite-transfer-channel-addmanager -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement INFN-GARR '/C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz' $ glite-transfer-channel-addmanager -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement INFN-CERN '/C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz' $ glite-transfer-addvomanager -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/FileTransfer ipv6.hepix.org '/C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz'
so that:
$ glite-transfer-channel-list https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement INFN-CERN # Using endpoint # https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement # Service version: 3.7.0-3 # Interface version: 3.7.0 # Schema version: 3.4.1 # Service features: glite-data-fts-service-3.7.0-3 # Client version: 3.6.2 # Client interface version: 3.6.0 Channel: INFN-CERN Between: MI.INFN.IT and CERN.CH State: Active Contact: Francesco.Prelz@mi.infn.it Bandwidth: 10 Nominal throughput: 8 Number of files: 2, streams: 3 Number of VO shares: 1 VO 'ipv6.hepix.org' share is: 100 $ glite-transfer-channel-list -v -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement INFN-GARR # Using endpoint # https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement # Service version: 3.7.0-3 # Interface version: 3.7.0 # Schema version: 3.4.1 # Service features: glite-data-fts-service-3.7.0-3 # Client version: 3.6.2 # Client interface version: 3.6.0 Channel: INFN-GARR Between: MI.INFN.IT and GARR.IT State: Active Contact: Francesco.Prelz@mi.infn.it Bandwidth: 10 Nominal throughput: 8 Number of files: 2, streams: 3 Number of VO shares: 1 VO 'ipv6.hepix.org' share is: 100 $ glite-transfer-getroles -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/FileTransfer Your current clientDN is: /C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz You are authorised as Service Admin because your cert contains the following principal: /C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz You are authorised to submit to this service because your cert contains the following principal: /ipv6.hepix.org/Role=NULL/Capability=NULL You are VO manager for 1 VOs. You are VO manager for VO <ipv6.hepix.org> because your cert contains the following principal: /C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz You are channel manager for 2 channels. You are channel manager for channel <INFN-CERN> because your cert contains the following principal: /C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz You are channel manager for channel <INFN-GARR> because your cert contains the following principal: /C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz
-
Create ‘service discovery’ file fallback /opt/glite/etc/services.xml:
<services> <service name='EGEEfts'> <parameters> <endpoint>https://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/FileTransfer</endpoint> <type>org.glite.FileTransfer</type> <version>3.3.0</version> </parameters> </service> <service name='EGEEchannel'> <parameters> <endpoint>https://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement</endpoint> <type>org.glite.ChannelManagement</type> <version>3.3.0</version> </parameters> </service> <service name='EGEEdelegation'> <parameters> <endpoint>https://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/gridsite-delegation</endpoint> <type>org.glite.Delegation</type> <version>3.3.0</version> </parameters> </service> <service name='INFNIPV6gridftp'> <parameters> <type>gsiftp</type> <site>mi.infn.it</site> <endpoint>gsiftp://seipersei.mi.infn.it</endpoint> <version>6.5</version> </parameters> </service> <service name='CERNIPV6gridftp'> <parameters> <type>gsiftp</type> <site>cern.ch</site> <endpoint>gsiftp://lx5v6hepix01.cern.ch</endpoint> <version>6.5</version> </parameters> </service> <service name='GARRIPV6gridftp'> <parameters> <type>gsiftp</type> <site>garr.it</site> <endpoint>gsiftp://hepix-ui.dir.garr.it</endpoint> <version>6.5</version> </parameters> </service> </services>
-
Start FTS agents:
/etc/init.d/transfer-agents start
-
Now the client tools can be tested. The GSI-SOAP communications work on IPv6 only from CGSI-gSOAP version 1.3.3-2 on. Version 1.3.3-1 (found on a production UI) was still compiled with no IPv6 support in SOAP.
Gsoap supports IPv6 on TCP since version 2.5 (2005), and on UDP since version 2.7.2 (2005), but WITH_IPV6 was apparently left undefined when compiling the gsoap stubs:#0 0x00000038356d4d70 in connect () from /lib64/libc.so.6 #1 0x0000003835705e6a in open_socket () from /lib64/libc.so.6 #2 0x000000383570626f in get_mapping () from /lib64/libc.so.6 #3 0x00000038357065f8 in __nscd_get_map_ref () from /lib64/libc.so.6 #4 0x0000003835704bb6 in nscd_gethst_r () from /lib64/libc.so.6 #5 0x000000383570545a in __nscd_gethostbyname_r () from /lib64/libc.so.6 #6 0x00000038356eaa81 in gethostbyname_r@@GLIBC_2.2.5 () from /lib64/libc.so.6 #7 0x00002b4fb675ffd3 in tcp_gethost (soap=0xc3fb600, addr=0xc412830 "seipersei.mi.infn.it", inaddr=0xc414a80) at stdsoap2.c:3060 #8 0x00002b4fb675fd06 in tcp_connect (soap=0xc3fb600, endpoint=0xc414aa1 "ttps://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement", host=0xc412830 "seipersei.mi.infn.it", port=8443) at stdsoap2.c:3229 #9 0x00002b4fb6bf1c20 in client_cgsi_plugin_open (soap=0xc3fb600, endpoint=0xc414aa0 "https://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement", hostname=0xc412830 "seipersei.mi.infn.it", port=8443) at /home/condor/execute/dir_4197/userdir/org.glite.security.cgsi-gsoap-2.7/src/cgsi_plugin.c:630 #10 0x00002b4fb676070a in soap_connect_command (soap=0xc3fb600, http_command=2000, endpoint=0xc414aa0 "https://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement", action=0x2b4fb67a3171 "") at stdsoap2.c:12028
With IPv6 enabled (on the same version of SOAP):
#0 0x00000030d80d5260 in connect () from /lib64/libc.so.6 #1 0x00000030d810643a in open_socket () from /lib64/libc.so.6 #2 0x00000030d810683f in get_mapping () from /lib64/libc.so.6 #3 0x00000030d8106bc8 in __nscd_get_map_ref () from /lib64/libc.so.6 #4 0x00000030d8105ab3 in __nscd_getai () from /lib64/libc.so.6 #5 0x00000030d80bc477 in gaih_inet () from /lib64/libc.so.6 #6 0x00000030d80be2aa in getaddrinfo () from /lib64/libc.so.6 #7 0x00002aaaaaf10881 in tcp_connect (soap=0x6056a0, endpoint=0x61ebb1 "ttps://seipersei-v6.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement", host=0x61c8d0 "seipersei-v6.mi.infn.it", port=8443) at stdsoap2.c:3137 #8 0x00002aaaab16bc20 in client_cgsi_plugin_open (soap=0x6056a0, endpoint=0x61ebb0 "https://seipersei-v6.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement", hostname=0x61c8d0 "seipersei-v6.mi.infn.it", port=8443) at /home/condor/execute/dir_24523/userdir/org.glite.security.cgsi-gsoap-2.7/src/cgsi_plugin.c:630 #9 0x00002aaaaaf1120a in soap_connect_command (soap=0x6056a0, http_command=2000, endpoint=0x61ebb0 "https://seipersei-v6.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement", action=0x2aaaaaf54311 "") at stdsoap2.c:12028
With dual-stack UI and server, IPv4-only clients work OK via IPv4:
$ glite-transfer-submit -s https://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/FileTransfer gsiftp://seipersei.mi.infn.it/etc/motd gsiftp://lx5v6hepix01.cern.ch/tmp/fts_test_1.txt 7a6c73e3-6d29-11e1-b43e-e002d5af454f $ glite-transfer-status -s https://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/FileTransfer 7a6c73e3-6d29-11e1-b43e-e002d5af454f Finished
-
To add a new transfer channel:
-
- Create database entries:
$ glite-transfer-channel-add -f 2 -b 10 -c Francesco.Prelz@mi.infn.it -t 8 -T 3 -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement INFN-DESY mi.infn.it desy.de $ glite-transfer-channel-setvoshare INFN-DESY ipv6.hepix.org 100 -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement $ glite-transfer-channel-addmanager -s https://seipersei-v4.mi.infn.it:8443/glite-data-transfer-fts/services/ChannelManagement INFN-DESY '/C=IT/O=INFN/OU=Personal Certificate/L=Milano/CN=Francesco Prelz'
-
- Create transfer channel agent:
/opt/glite/bin/glite_data_config_generator -f /opt/glite/share/config/glite-data-transfer-agents/glite-transfer-channel-agent-urlcopy-oracle.config.xml -o /opt/glite/etc/glite-data-transfer-agents.d/glite-transfer-channel-agent-INFN-DESY.properties.xml -l /opt/glite/etc/glite-data-transfer-agents.d/glite-transfer-channel-agent-INFN-DESY.log-properties Level: low (0) ConnectString = (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbvrts1019.ipv6.cern.ch)(PORT=10121))(ENABLE=BROKEN)(CONNECT_DATA=(SID=DBV6))) User = fprelz Password = XXX Name = INFN-DESY Log file: default (/tmp/transfer-channel-agent.log) chown edguser /opt/glite/etc/glite-data-transfer-agents.d/*
-
- Add the following to /opt/glite/etc/services.xml:
<service name='DESYIPV6gridftp'> <parameters> <type>gsiftp</type> <site>desy.de</site> <endpoint>gsiftp://hepix01.desy.de</endpoint> <version>6.5</version> </parameters> </service>
-
- Start the new agent:
/etc/init.d/transfer-agents start
-
- Test the new agent:
glite-transfer-submit -s https://seipersei.mi.infn.it:8443/glite-data-transfer-fts/services/FileTransfer gsiftp://seipersei.mi.infn.it/etc/motd gsiftp://hepix01.desy.de/tmp/fts_test_1.txt
-
-
To allow FTS url-copy endpoints to be resolved as IPv6 addresses (the equivalent of the
-ipv6
switch toglobus-url-copy
), at least this patch needs to be applied tolibglite_data_transfer_url_copy.so.0.0.0
.
- Log in to post comments