Skip to content

ow2-proactive/scheduling-abstraction-layer

Repository files navigation

Scheduling Abstraction Layer (SAL)

License: MIT Java 8 Spring Boot

Scheduling Abstraction Layer (SAL) is an abstraction layer initially developed as part of the EU project Morphemic (morphemic.cloud). Its development continued through the Nebulous EU project (nebulouscloud.eu). SAL aims to enhance the usability of ProActive Scheduler & Resource Manager by providing abstraction and additional features.

Table of Contents

Introduction

SAL is a project initially developed under the Morphemic project, part of the EU's Horizon 2020 initiative. Its development continued through the Nebulous EU project, part of Horizon Europe inititative. It offers an abstraction layer on top of the ProActive Scheduler & Resource Manager, making it easier for users to interact with the scheduler and take advantage of its features. Seamlessly supporting REST calls and direct communication with the Proactive API, SAL empowers users to harness the scheduler's capabilities. Whether you want to use SAL as a microservice or deploy it as a Docker container, this repository provides the necessary resources to get you started.

Installation

SAL can be used either as a standalone microservice or as a Docker container. Choose the approach that best suits your requirements.

As Microservice

To use SAL as a microservice, follow these steps:

  1. Clone the repository:
git clone https://github.com/ow2-proactive/scheduling-abstraction-layer.git
cd scheduling-abstraction-layer
  1. Build the microservice:
./gradlew clean build

As Docker Container

To use SAL as a Docker container, pull the public Docker image from DockerHub:

docker pull activeeon/sal

Usage

Using SAL as a Microservice

To run SAL as a microservice, execute the following command:

./gradlew bootRun

This will start the microservice allowing you to interact with it through various endpoints.

Using SAL as a Docker Container

To deploy SAL as a Docker container, run the following command:

docker run -p 8080:8080 activeeon/sal

This will start the SAL service within a Docker container, and it will be accessible on port 8080.

Configuration

Before using SAL, you need to configure the ProActive Server it will connect to. Use the following endpoints for configuration:

  • To initialize the ProActive Server, use the init endpoint:
{protocol}://{host}:{port}/sal/pagateway/init
  • To connect to the ProActive Server, use the connect endpoint:
{protocol}://{host}:{port}/sal/pagateway/connect

Endpoints

SAL provides multiple endpoints that you can use to interact with the ProActive Scheduler & Resource Manager. For detailed information on each endpoint, please refer to the project's Javadoc.

Contributing

Contributions to SAL are welcome! If you have any bug fixes, improvements, or new features to propose, please feel free to open a pull request. For major changes, it is recommended to discuss your ideas with the maintainers first.

License

Scheduling Abstraction Layer (SAL) is distributed under the MIT License. Please see the LICENSE file for more information.


Thank you for using Scheduling Abstraction Layer (SAL)! If you encounter any issues or have questions, please feel free to open an issue in the repository. We hope SAL enhances your experience with ProActive Scheduler & Resource Manager!

About

This module allows users to interact with a running ProActive Scheduler and Resource Manager in lazy mode.

Resources

License

Stars

Watchers

Forks

Packages

No packages published