Main FTS Pages |
---|
FtsRelease22 |
Install |
Configuration |
Administration |
Procedures |
Operations |
Development |
Previous FTSes |
FtsRelease21 |
FtsRelease21 |
All FTS Pages |
FtsWikiPages |
Last Page Update |
PaoloTedesco 2007-11-21 |
python update_channels.pyThe script will:
glite-transfer-channel-add
.
voms-proxy-init
and you must also be authorized, either as a service administrator or as a channel administrator for the given channel. Use the glite-transfer-getroles
command to see what privileges you have upon the service. Note that by default, the root account on the FTS server machine is listed in the server administrator mapfile (in fact the host cert is listed in the mapfile, which the root account uses as its user cert).
Initially, try a list to see what channels are already defined on the system (if it is a new install on a blank database, there should be none):
glite-transfer-channel-list
To see a basic view of the channel:
glite-transfer-channel-list CHANNELNAME
To see a fuller view of the channel:
glite-transfer-channel-list -x CHANNELNAME
note that man
pages are available for all commands.
list: listChannels: SOAP fault: SOAP-ENV:Client - CGSI-gSOAP: Could not open connection ! (TCP connect failed in tcp_connect())
then either the service is down, or your services.xml
file is pointing to the wrong endpoint. You can see what endpoint the client is attempting to connect to by using the version flag:
glite-transfer-channel-list -v
If you see:
list: Service discovery: No services of type org.glite.ChannelManagement were found
then either the services.xml
file is missing or not readable by the client.
If you see:
list: listChannels: SOAP fault: "http://xml.apache.org/axis/":Server.NoService - The AXIS engine could not find a target service to invoke! targetService is ChannelManagement
then either the endpoint specified in the services.xml
file is incorrect, or the service is misconfigured.
To check whether the endpoint specified in the services.xml
file is correct, connect to it directly with a web browser. e.g. connect to https://yourhostname:8443/glite-data-transfer-fts/services/FileTransferHi there, this is an AXIS service!
If you see:
list: listChannels: You are not authorised for channel management upon this service
then you are not in the manager mapfile. Look in the FTS server logs (org.glite.data
) to see how the authorisation decision was made.
-m
option.
To set a channel mychannel
to state Inactive
:
glite-transfer-channel-set -S Inactive CHANNELNAME -m "Because I can"
This will stop putting any further work on the network. Any individual file transfers that have already been started will complete, so it can take a minute or two for all activity to stop.
To set the channel to state Active
:
glite-transfer-channel-set -S Active CHANNELNAME -m "Set back to normal operations"
This will start putting work on the network if there are any jobs assigned to that channel in the Pending
state.
To change the number of concurrent transfers being put on the network for a given channel:
glite-transfer-channel-set -f 10 CHANNELNAME -m "Increase to 10 to see what happens to the rate"
This will make the agent try to maintain 10 concurrent transfers on the channel when it is Active
.
channel-set
commands are audited by the service. You can view previous operations using the comand:
glite-transfer-channel-audit CHANNELNAME
glite-transfer-channel-drop CHANNELNAME
It is a current restriction that a channel cannot be dropped if any jobs have been assigned to it (because we do not cascade constraints on the database delete). We will provide a script to do this soon. Make sure that you are happy with a channel definition before submitting work that will be assigned to it.
glite-transfer-channel-setvoshare VONAME CHANNELNAME SHARE
where the shares are all calculated relative to one another (the absolute value is not important). Note also, that in the default mode, the shares are 'elastic' in that if one VO has no jobs, the others will absorb its share until it returns.
To stop a VO transferring for a while, set the share to 0. New jobs will be queued onto the channel.
To remove a VO from a channel, set the share to "-1" (using getopts
--
feature). New jobs will be rejected from the channel.
dteam
background transfers when, in some quiet times, there were no jobs from any of the experiments - this caused dteam
to absorb the entire share of the channel which overloaded the source and destination dteam
disk pools with too man requests.
It is therefore possible to limit the maximum number of jobs for a given VO on a channel:
glite-transfer-channel-setvolimit VONAME CHANNELNAME LIMIT
where LIMIT
is the number of concurrent files.
To remove a limit, set it to "-1" (using getopts
--
feature).
glite-transfer-channel-listmanagers
To set and remove someone as a channel manager, using their quoted certificate subject name:
glite-transfer-channel-addmanager CHANNELNAME "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=mccance/CN=453200/CN=Gavin Mccance"
glite-transfer-channel-removemanager CHANNELNAME "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=mccance/CN=453200/CN=Gavin Mccance"
Waiting
. After the retry period has elapsed it will be placed back in the Ready
state, and will subsequently be picked up again by the transfer agent.
Hold
state. This state indicates that some manual intervention should be made to rescue (or cancel) the file. The channel admin should periodically check for jobs with files in Hold
state:
glite-transfer-list -c CHANNELNAME Hold
If there are any, there are two options for you. You may fix the whatever you believe the problem may be (e.g. reboot the SRM cluster) and try for one more retry.
glite-transfer-channel-signal -c CHANNELNAME Pending
All jobs on the channel in Hold
state will be dropped back onto the Pending
queue. The other option is to set all the jobs on the channel in Hold
state to Canceling
if you believe that there is nothing you can do to rescue the jobs (for example, if the filenames are invalid).
glite-transfer-channel-signal -c CHANNELNAME Cancel
You also have the option of applying the signal command to a single job, rather than all jobs on the entire channel.
glite-transfer-channel-signal -j 17cc7055-d3ac-11d9-a905-f173b72e4547 Pending
srm://castorgridsc.cern.ch:8443/srm/managerv1?SFN=/castor/cern.ch/grid/dteam/storage/transfer-test/1gig/file-001.dat
Assuming you are using delegation (as below), you do not need to load a proxy into MyProxy.
voms-proxy-init glite-transfer-submit \ srm://castorgridsc.cern.ch:8443/srm/managerv1?SFN=/castor/cern.ch/grid/dteam/storage/transfer-test/1gig/file-000.dat \ srm://srm1.tier1.sara.nl:8443/srm/managerv1?SFN=/data/dteam/testdestfile-glite-1.1.1-000.datchoose your SURLs appropriately. This will return a UUID identifier, e.g.
17cc7055-d3ac-11d9-a905-f173b72e4547
To check the status of the job, run:
glite-transfer-status --verbose 17cc7055-d3ac-11d9-a905-f173b72e4547
which should print the state and some other information. You should see the job progressing through:
Submitted
(if you're fast). The job is still to be assigned to channel.
Pending
and Ready
. The job has been assigned to a channel, and is awaiting a transfer slot.
Active
. The job is being transferred or the file is awaiting retry.
Hold
. The single file in the job failed 3 times and needs to be rescued by manual intervention.
Done
. The file has completed successfully.
Finished
. The job and its file has completed successfully.
Failed
. The job and its (all of its) file(s) failed.
Finished
. The job and (some of its) file(s) failed.
Finished
, then the test went fine.