Skip to content

Marketplace and offering creation

Marketplace is a central module for provisioning of Waldur resources. Marketplace contains Offerings that belong to a special type of Organizations - Service Providers. Marketplace provides common functionality for resource lifecycle management, accounting and invoicing. Specifics are implemented in the Marketplace plugins (e.g. for OpenStack, SLURM, Rancher, etc).

Diagram of concepts

Diagram of marketplace concepts

Adding a new Offering

To create a new Offering in the Marketplace, you need to:

  • Assure that categories are configured in the Marketplace.
  • Create at least one service provider.
  • Create and activate a public offering.

Creating Marketplace categories

To create a category, either use administrative interface of Waldur, hosted under `/admin (can be accessed by staff users) or use management command for loading the pre-defined categories.

  • With Docker-compose deployment:
1
  docker exec -t waldur-mastermind-worker waldur load_categories  # vpc vm storage ...
  • With Helm deployment

Open waldur-mastermind-worker shell and execute the following command:

  1. Get waldur-mastermind-worker pod name
1
2
3
  # Example:
  kubectl get pods -A | grep waldur-mastermind-worker # -->
  # default       waldur-mastermind-worker-6d98cd98bd-wps8n   1/1     Running     0          9m9s
  1. Connect to pod via shell
1
2
  # Example:
  kubectl exec -it waldur-mastermind-worker-6d98cd98bd-wps8n -- /bin/bash
  1. Execute command to see available or add a category
1
  waldur load_categories  # vpc vm storage ...

Service provider registration

In Waldur, only organizations registered as service providers can create offerings and provide the service to users.

To register organization as service provider:

  1. Open organization dashboard, click on "Edit" and select "Service provider" from the top menu. Service provider registration

  2. Click on "Register as service provider" on the right. Service provider registration

  3. Add service provider organization description. This description is visible in the Waldur marketplace under service provider list and under provider details. Service provider description

  4. Make sure that service provider organization category group is also set.

Offering creation

Waldur supports a number of different types of service providers when creating a shared offering. A common way of creating an offering is through a HomePort.

  1. Select organization, which will provide the offering.

  2. Go to Provider dashboard and click on "Marketplace" -> "Offerings" -> "Add new offering": Adding an offering

  3. Click on "Add new offering" and fill in the name for the offering, category and type: Adding details

  4. Offering details page opens, where you can add additional information: Offering details

  5. Under Endpoints section, you can add access endpoints for the offering, for example, management consoles, SSH login nodes or similar. Offering endpoints

    This configuration will display then to resource of the offering a menu for easier navigation to the corresponding services. For SSH protocol this would trigger opening of an SSH client if configured for the browser. Out of the box works on OS X and Linux, requires configuration of the default application on Windows. Resource endpoints

  6. To add accounting components, select "Accounting components" from the top menu and then "Add component" from the right side. Accounting component is a measurable unit of a resource. For example, it can be CPU hours, GPU hours, storage hours, RAM etc. Accounting components

  7. A popup opens with possibility to configure fields and select the accounting type (whether the component is billed by the usage, max limit or it has a fixed price).

    • Usage-based - billing is applied according to the actual usage of the resource during the billing period defined in the accounting plan after the submission of a usage report;
    • Limit-based - billing is applied according to the requested/updated limits of a resource, actual usage can be below the limits and it is not the basis of the billing;
    • Fixed price - billing is applied according to the exact values defined by the service provider in the accounting plan, limits and usage are not the basis for the accounting;
    • One-time - billing is applied once on resource activation;
    • One-time on plan switch - billing is applied once on resource activation and everytime a plan has changed, using pricing of a new plan.

    Accounting component details

  8. To configure accounting frequency and prices, select "Accounting plans" from the top menu and then "Add plan" from the right. Select a name for the plan and accounting frequency: Accounting frequency

  9. To define prices for the components, select "Actions" and then "Edit prices". Set new price and save. If there is a need to provide higher priority access to resources with different prices, then it is advised to create another offering for this kind of cases. Offering prices

    Offering prices

  10. If all set, click "Activate" on the top-right side to make it visible to everybody. Activate offering

Tip

For more advanced cases of management of offerings, take a look at how a SLURM offering can be managed using Ansible module.