Specifying a Schedule for Offloading Data

Explains how to create a schedule for automatic offloading of data, using the Control System, the CLI and the REST API.

About this task

You can create a schedule using the Control System, the CLI, and REST API. After creating a schedule, you can associate it with the tiering-enabled volume when you create or modify the volume. If a schedule for offloading data is associated with the volume, data is offloaded automatically as scheduled based on the rules associated with the volume for offloading data. You can also manually trigger the maprcli command to offload data.

The following schedules are available out-of-the-box for offloading data:

Schedule Name Schedule ID
Critical data 1
Important data 2
Normal data 3
Automatic Tiering Scheduler 4*

* The Automatic Tiering Scheduler ID might be different on different clusters. To retrieve the correct ID, run the schedule list command.

For volumes enabled for warm tiering, the Automatic Tiering Scheduler is used by default for offloading data if you do not explicitly assign a schedule. The frequency of the Automatic Tiering Scheduler run is based on two the following:

time
The frequency. The cldb.auto.offload.frequency.minutes property stores the default value of 24 * 60 minutes. This can be configured using the config save command. The value for this property must be in minutes.
size
The amount of data (that has not yet been offloaded) in the volume. The cldb.auto.offload.threshold.gb property stores the global value for the size threshold. The default value for this property is 1024GB, which cannot be modified. However, you can override the global value at the volume-level using the autooffloadthresholdgb parameter with the Creating a Volume and volume modify commands.

The Automatic Tiering Scheduler run is based on the time setting. However, it runs sooner if the size of the volume in the hot tier reaches or exceeds the size threshold.

For volumes enabled for cold tiering, you must assign a schedule to automatically offload data; if you do not assign a schedule, data is not offloaded automatically and you must manually run the offload command to offload data. You can associate the Automatic Tiering Scheduler with the cold-tier enabled volume or create a custom schedule and associate it with the volume to automatically offload data.

To:

Specifying a Schedule Using the Control System

About this task

You can associate a schedule with a tiering-enabled volume when you are:
  • Creating a volume by clicking Create Volume button in the Data > Volumes page.
  • Editing the tiering-enabled volume by clicking Edit Volume button in the volume information page.

Specifying a Schedule Using the CLI and REST API

About this task

You can associate a schedule with a tiering-enabled volume by specifying the offloadschedule parameter with the volume create or volume modify command.
Run a command similar to the following to associate a schedule when:
  • Creating a volume:
    maprcli volume create -name <volName> -path <mountPath> -tieringenable true -tiername <tierName> -offloadschedule <scheduleID> -json
    For the list of all other required and optional parameters, see volume create.
  • Editing the volume:
    maprcli volume modify -name <volName> -offloadschedule <scheduleID> -json
    For the list of all other required and optional parameters, see volume modify.
Send a request of type POST. For example, to associate a schedule when:
  • Creating a volume:
    curl -X POST 'https://<host>:8443/rest/volume/create?name=<volName>&path=<mountPath>&tieringenable=true&tiername=<tierName>&offloadschedule=<scheduleID>' --user <username>:<password>
    For the list of all other required and optional parameters, see volume create.
  • Editing the volume:
    curl -k -X POST 'https://<host>:8443/rest/volume/modify?name=<volName>&offloadschedule=<scheduleID>' --user mapr:mapr
    For the list of all other required and optional parameters, see volume modify.
To disable automatic schedule-based offload of data, set the value for the offloadschedule parameter to 0.