iExec Protocol
Comment on page

Manage a workerpool

A workerpool manager is an essential actor in the iExec network. It will be in charge of proposing available computing resources (workers) to task requesters.
An iExec workerpool is orchestrated by an iExec Core Scheduler. The iExec Core Scheduler watches on-chain deals and schedules off-chain computation among available workers.
My Workerpool Dashboard

Deploy a workerpool

You can deploy your own workerpool on iExec with this repository. Be sure to check a particular release before starting your deployment.

Manage your workerpoolorders

Orders enable setting custom governance for resources.
Here you will learn how to manage your workerpool's monetization rules.

Publish a workerpool order

Initialize a workerpoolorder:
iexec order init --workerpool
Edit the workerpoolorder part in iexec.json to set the conditions to use your workerpool:
workerpool address
price to charge the requester for each execution of the app (in nRLC)
number of authorized uses, each use decreases this number
restrict usage to a specific runtime such as Scone or Gramine TEE frameworks
Order category, will define the deal workClockTimeRef and its deadlines
Trust level of the execution, impacts the number of replicates
restrict the workerpool usage to a specifig app (1)
restrict the workerpool usage to a specific dataset (1)
restrict the workerpool usage to a specific requester (1)
  1. 1.
    the restriction is disabled by default with 0x0000000000000000000000000000000000000000.
The supported tags for workerpool orders are:
Tag value
Order for the execution of a standard task
Order for the execution of a TEE task with Scone framework
Order for the execution of a TEE task with Gramine framework
  1. 1.
    Do not publish workerpool orders with a tag value out of the specified list. Such an order could produce undesirable and unpredictable behaviors. The iExec SDK implements all required preflight checks to avoid erroneous orders publishing.
  2. 2.
    Currently, TEE workflow do not support tasks replication on several workers. TEE workerpool orders must be published with trust value equal to 1.
As soon as your ẁorkerpoolorder complies to your requirements, you must sign it and you may publish it.
iexec order sign --workerpool && iexec order publish --workerpool

Remove an order from iExec Marketplace

List the published orders for your workerpool.
iexec orderbook workerpool <your workerpool address>
Copy the orderHash of the order you want to remove
Unpublish the workerpoolorder from the iExec Marketplace
iexec order unpublish --workerpool <orderHash>
An unpublished order is still valid on the blockchain, to invalidate it use the cancel command.
iexec order cancel --workerpool <orderHash>