iRODS With Wasabi
    • 19 Jun 2024
    • 1 Minute to read
    • PDF

    iRODS With Wasabi

    • PDF

    Article summary

    How to use iRODS with Wasabi?

    Wasabi has been validated with Integrated Rule-Oriented Data System (iRODS) which is a policy based open source data management software designed to manage data sets that are big, important, and complex used by research, commercial, and governmental organizations worldwide.

    1. Prerequisites

    2. Reference Architecture

    Single iRODS Zone with two servers configured to connect to Wasabi

    Reference_Architecture.jpg

    3. Configuration

    3.1 Install the latest version of the iRODS S3 Plugin on all iRODS servers by performing the following command:

    sudo apt-get install irods-resource-plugin-s3

    3.2 Save your Wasabi access key and secret access key (obtained from wasabi) into a file accessible by the iRODS server.  The file should contain the access key and secret access key, one on each of two separate lines, respectively. 

    For the example below, the access key and secret access keys are saved to: /var/lib/irods/wasabi.keypair.

    3.2 Create an iRODS S3 resource that connects to the Wasabi backend.

    Creating a resource uses the following pattern:

    iadmin mkresc  s3 :/ 

    The example below creates an iRODS resource named wasabiresc1.  It assumes the target bucket is named mybucket, the connection will use the secure https protocol to connect with s3.wasabisys.com in the us-east-1 region, and that the keypair is stored in /var/lib/irods/wasabi.keypair:

    iadmin mkresc wasabiresc1 s3 `hostname`:/mybucket “S3_DEFAULT_HOSTNAME=s3.wasabisys.com;S3_AUTH_FILE=/var/lib/irods/wasabi.keypair;S3_REGIONNAME=us-east-1;S3_RETRY_COUNT=2;S3_WAIT_TIME_SECONDS=3;S3_PROTO=HTTPS;HOST_MODE=cacheless_attached;S3_SIGNATURE_VERSION=4;S3_ENABLE_MPU=1;S3_MPU_THREADS=30”

    Note: This example discusses the use of Wasabi's us-east-1 storage region. To use other Wasabi storage regions, please use the appropriate Wasabi service URL as described in our Wasabi Service URLs.

    3.3 Test put/get of a file into the iRODS resource wasabiresc1.

    $ echo 'this is a test' > test.txt 
    
    $ iput –R wasabiresc1 test.txt 
    
    $ iget test.txt - 
    
    this is a test

    Assuming you were in the rods home collection in iRODS, the file should be visible in Wasabi at /mybucket/home/rods/test.txt.