|
|
Line 1: |
Line 1: |
− | === Using SUPR-Test System for projects ===
| + | #REDIRECT[[Swestore iRODS is decommissioned]] |
− | | |
− | <span style="color:#FF0000"> NOTA: THIS PAGE IS OUT OF DATE! IT WILL BE SOON DELETED. </span><br>
| |
− | | |
− | The SUPR-Test System can be accessed via
| |
− | | |
− | https://disposer.c3se.chalmers.se/supr-test
| |
− | | |
− | If its a new person, click on Register New Person Button <br>
| |
− | | |
− | One can
| |
− | | |
− | 1) Register via SWAMID
| |
− | | |
− | 2) Register without SWAMID
| |
− | | |
− | If you are a PI, login to SUPR-Test
| |
− | | |
− | 1) Click on Rounds on the left Panel and select MAX IV Swestore 2017.
| |
− | | |
− | 2) Click on Create new Proposal for MAX IV Swestore 2017 button.
| |
− | | |
− | 3) Give a project title and Create proposal.Alternatively you can clone an existing project from the dropdown.
| |
− | | |
− | 5) The directory name for the project should be simple and not contain any spaces.It would the project/directory name in irods
| |
− |
| |
− | 6) PI can add Co-Investigators to the proposal. Alternatively they can be added as members once the proposal is approved.
| |
− | | |
− | 7) Proposal is submitted and once approved a project is created.
| |
− | | |
− | 8) A Python script is run in the background which picks the project and user data and creates corresponding project and users in test-irods.
| |
− | | |
− | 9) User can follow the below instructions to access test-irods.
| |
− | | |
− | === Client setup to use the test-irods system ===
| |
− | | |
− | The iRODS system 'test-irods' is a test system we use to
| |
− | test upgrades and functionality. It a collection of
| |
− | Xen virtual machines running CentOS 6.9 and iRODS 4.1.8
| |
− | at the moment. There is one iCAT server and two iRODS
| |
− | storage server nodes.
| |
− | | |
− | To access the system it is preferable to use the same
| |
− | version of the client as the server but theoretically
| |
− | it should also work with other versions of the client as
| |
− | well.
| |
− | | |
− | Easiest and most tested is the Unix command line client.
| |
− | On a cluster like Aurora most probably this is going to
| |
− | be the one to be used.
| |
− | | |
− | | |
− | ==== Installing the iRODS iCommands client ====
| |
− | | |
− | To install the latest 4.2.1 command line client the
| |
− | instructions are on the iRODS web site at:
| |
− | https://irods.org/download/
| |
− | and
| |
− | https://packages.irods.org/
| |
− | .
| |
− | | |
− | On a CentOS Linux variant as root:
| |
− | Get the signing key.
| |
− | rpm --import https://packages.irods.org/irods-signing-key.asc
| |
− | | |
− | Get the repository description file.
| |
− | wget -qO - https://packages.irods.org/renci-irods.yum.repo >/etc/yum.repos.d/renci-irods.yum.repo
| |
− | | |
− | Install the package.
| |
− | yum install irods-icommands
| |
− | It will ask to confirm to import the iRODS package signing key
| |
− | and then ask to confirm going ahead with installing the package
| |
− | and the dependencies. The command line client executables will go
| |
− | under <code>/bin</code>.
| |
− | | |
− | The iRODS client will need to be able to talk to the iRODS iCAT server
| |
− | and the resource servers at ports 1247 and 20000..20199. (Those are
| |
− | the defaults.) Firewall / packet filtering should allow outgoing connections
| |
− | to those ports.
| |
− | | |
− | | |
− | ==== Configuring the iRODS iCommands client ====
| |
− | | |
− | To be able to use the iRODS command line client a user has to have
| |
− | a configuration file in place which describes how to access the
| |
− | iCAT server. The file has <code>json</code> format (with the latest
| |
− | versions.)
| |
− | | |
− | An example file would look like this:
| |
− | <pre>
| |
− | {
| |
− | "irods_host": "<irodshost>",
| |
− | "irods_port": <port>,
| |
− | "irods_default_resource": "<resourcename>",
| |
− | "irods_home": "/<zonename>/home/<username>",
| |
− | "irods_cwd": "/<zonename>/home/<username>",
| |
− | "irods_user_name": "<username>",
| |
− | "irods_zone_name": "<zonename>",
| |
− | "irods_client_server_negotiation": "request_server_negotiation",
| |
− | "irods_client_server_policy": "CS_NEG_REFUSE",
| |
− | "irods_encryption_key_size": 32,
| |
− | "irods_encryption_salt_size": 8,
| |
− | "irods_encryption_num_hash_rounds": 16,
| |
− | "irods_encryption_algorithm": "AES-256-CBC",
| |
− | "irods_default_hash_scheme": "SHA256",
| |
− | "irods_match_hash_policy": "compatible",
| |
− | "irods_server_control_plane_port": 1248,
| |
− | "irods_server_control_plane_key": "TEMPORARY__32byte_ctrl_plane_key",
| |
− | "irods_server_control_plane_encryption_num_hash_rounds": 16,
| |
− | "irods_server_control_plane_encryption_algorithm": "AES-256-CBC",
| |
− | "irods_maximum_size_for_single_buffer_in_megabytes": 32,
| |
− | "irods_default_number_of_transfer_threads": 4,
| |
− | "irods_transfer_buffer_size_for_parallel_transfer_in_megabytes": 4
| |
− | }
| |
− | </pre>
| |
− | Names in the angle brackets are placeholders to be replaced with the
| |
− | actual values (without the angle brackets as in the file below).
| |
− | irodshost is the fully qualified name of the irods host (with the dots).
| |
− | port is the port the iCAT server is using, the default is 1247
| |
− | resourcename is the name of the default resource to be used
| |
− | zonename is the name of the iRODS zone
| |
− | If not sure about these please ask a system administrator.
| |
− | | |
− | In out case:
| |
− | <pre>
| |
− | {
| |
− | "irods_host": "test-irods.nsc.liu.se",
| |
− | "irods_port": 1247,
| |
− | "irods_default_resource": "demoResc",
| |
− | "irods_home": "/tempZone/home/s_jonli",
| |
− | "irods_cwd": "/tempZone/home/s_jonli",
| |
− | "irods_user_name": "s_jonli",
| |
− | "irods_zone_name": "tempZone",
| |
− | "irods_client_server_negotiation": "request_server_negotiation",
| |
− | "irods_client_server_policy": "CS_NEG_REFUSE",
| |
− | "irods_encryption_key_size": 32,
| |
− | "irods_encryption_salt_size": 8,
| |
− | "irods_encryption_num_hash_rounds": 16,
| |
− | "irods_encryption_algorithm": "AES-256-CBC",
| |
− | "irods_default_hash_scheme": "SHA256",
| |
− | "irods_match_hash_policy": "compatible",
| |
− | "irods_server_control_plane_port": 1248,
| |
− | "irods_server_control_plane_key": "TEMPORARY__32byte_ctrl_plane_key",
| |
− | "irods_server_control_plane_encryption_num_hash_rounds": 16,
| |
− | "irods_server_control_plane_encryption_algorithm": "AES-256-CBC",
| |
− | "irods_maximum_size_for_single_buffer_in_megabytes": 32,
| |
− | "irods_default_number_of_transfer_threads": 4,
| |
− | "irods_transfer_buffer_size_for_parallel_transfer_in_megabytes": 4
| |
− | }
| |
− | </pre>
| |
− | To use PAM authentication (that is with the Yubikey) you will need one
| |
− | additional line:
| |
− | <pre>
| |
− | "irods_authentication_scheme": "PAM",
| |
− | </pre>
| |
− | to be inserted _before_ the line with
| |
− | <code>irods_transfer_buffer_size_for_parallel_transfer_in_megabytes</code>.
| |
− | Please note the comma at the end of the line.
| |
− | | |
− | The configuration file needs to be placed in the directory <code>.irods</code>
| |
− | under the home directory, named <code>irods_environment.json</code>.
| |
− | | |
− | To be able to use the iRODS system first the user has to be authenticated.
| |
− | This is done using the <code>iinit</code> command.
| |
− | iinit
| |
− | It will ask for a password, which should have been already sent in an e-mail.
| |
− | For the users who are given a Yubikey the device should be inserted into
| |
− | a USB port at this point and the gold plated button should be pressed
| |
− | for a few seconds. In case the authentication was successful the
| |
− | command prompt is returned.
| |
− | | |
− | From then on the iRODS iCommands should be available to use.
| |
− | | |
− | | |
− | ==== Using iCommands ====
| |
− | | |
− | All icommands give help using the command line switch <code>-h</code>.
| |
− | The most useful commands are:
| |
− | iinit
| |
− | ils
| |
− | iget
| |
− | iput
| |
− | irsync
| |
− | | |
− | | |
− | For more information see:
| |
− | https://irods.org/uploads/2016/06/irods_beginner_training_2016.pdf
| |
− | from Chapter 5.2 (page 16) in the document. This is an introduction
| |
− | on how to use iRODS.
| |
− | | |
− | There is a more detailed description at
| |
− | https://docs.irods.org/4.2.1/icommands/user/
| |