GithubHelp home page GithubHelp logo

cdmi-eos-qos's Introduction

CDMI QoS plugin for EOS Storage Backend

Description

This is a plugin for the INDIGO-DataCloud CDMI Server. The plugin exposes the QoS interface of the EOS storage endpoint to the CDMI-Server and allows QoS interactions on EOS entries using the CDMI protocol.

The plugin facilitates two main interactions:

  • discovery of QoS capabilities
  • manipulation of QoS properties of a given entry

Build and install

Requirements

  • JDK 1.8+
  • Maven 3.1+

Dependencies

Compilation

Make sure to enable the following Maven repository: http://cdmi-qos.data.kit.edu/maven/

To compile the cdmi-eos-qos plugin, execute the following:

$ git clone https://github.com/cern-eos/cdmi-eos-qos.git
$ cd cdmi-eos-qos
$ mvn install

The final product will be the cdmi-eos-qos-<version>.jar artifact.

Installation

The plugin must be used as a component for the INDIGO-DataCloud CDMI Server. To enable this, add cdmi-eos-qos as a dependency to the server's pom.xml file and repackage the server

<dependency>
    <groupId>org.dcache.spi</groupId>
    <artifactId>cdmi-dcache-qos</artifactId>
    <version>1.0</version>
</dependency>

Configuration

The plugin will try to load the following properties:

  • eos.server
  • eos.server.port
  • eos.server.scheme

Make sure you provide these values either via a config/eos.config file accessible by the CDMI server or via command line.

Interaction

  • Query available CDMI capabilities for a given entry type
davix-http -X GET -H 'Authorization: "Bearer: $OIDC"' -H 'Accept: "application/cdmi-capability"' \
    https://cdmi-server.cern.ch:8443/cdmi_capabilities/dataobject/
  • Query description of a given CDMI capability
davix-http -X GET -H 'Authorization: "Bearer: $OIDC"' -H 'Accept: "application/cdmi-capability"' \
    https://cdmi-server.cern.ch:8443/cdmi_capabilities/dataobject/disk_replica
  • Get CDMI capability of an entry
davix-http -X GET -H 'Authorization: "Bearer: $OIDC"' -H 'Accept: "application/cdmi-object"' \
    https://cdmi-server.cern.ch:8443/<file-path>
  • Set CDMI capability of an entry
davix-http -X PUT -H 'Authorization: "Bearer: $OIDC"' -H 'Content-Type: "application/cdmi-object"' \
    --data '{"capabilitiesURI": "/cdmi_capabilities/dataobject/<capability-type"}' \
    https://cdmi-server.cern.ch:8443/<file-path>

cdmi-eos-qos's People

Contributors

mpatrascoiu avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.