Service scheduling
The Compression/Encryption, Content Verification, Disposition, Duplicate Elimination, Garbage Collection, Geo-distributed Erasure Coding, Protection, HCP S Series Balancing, Scavenging, and Storage Tiering services run according to a weekly schedule. The schedule controls when during the week each service runs and the performance level at which it runs.
Within a time period, each scheduled service has a performance level of low, medium, or high. The performance level determines the load the service puts on the HCP system. The higher the performance level, the greater the load.
The Replication service also runs according to a schedule, but this service has its own scheduling interface.
HCP comes with a predefined service schedule named HCP Default Schedule. This schedule cannot be modified or deleted.
HCP SAIN systems with spindown storage come with an additional predefined schedule named HCP Spindown Schedule. This schedule is optimized for Storage Tiering service activity against spindown storage. The HCP Spindown Schedule is modifiable.
You can create as many other schedules as you want. However, only one schedule can be active at a time. At any time, you can change which schedule is active. For example, you could create two schedules: one that puts a very light load on the system, and one that puts a heavier load on the system. During periods of high system usage, you could activate the first schedule. During periods of low system usage, you could activate the second schedule.
After creating a service schedule, you can modify or delete it. You can modify a schedule regardless of whether it is active. You can delete a schedule only while it is inactive.
How scheduled services work
The Compression/Encryption, Content Verification, Disposition, Duplicate Elimination, Garbage Collection, Geo-distributed Erasure Coding, Protection, HCP S Series Balancing, Scavenging, and Storage Tiering services each examine objects one at a time, determine whether any action needs to be taken with the object, and if so, take the applicable action. These services, except Scavenging, start with the primary metadata and use that to find the object data. The Scavenging service starts with the secondary metadata, which is stored with the object data.
If the HCP system does not include any spindown storage, the services look at the object data for each object regardless of where the data is stored.
If the HCP system does include spindown storage, on most days, all scheduled services, except Duplicate Elimination, look at the object data on only a subset of the system nodes. Each day, these scheduled services look at the data on a different set of nodes. This prevents spindown volumes that are spun down from being spun up frequently or for long periods of time. Periodically, however, to address cases where the data for an object spans nodes in different sets, the services do not restrict the nodes they look at on a given day.
The Duplicate Elimination service always looks at object data regardless of which node the data is stored on because the service needs to correlate data from all locations. This can result in all spindown volumes being spun up at the same time. You should keep this in mind when scheduling the Duplicate Elimination service.
The length of time required for a service to examine every object in the repository depends on several factors, including the number of objects in the repository, how much time the service is scheduled to run each week, and the performance level at which the service runs.
If the HCP system includes spindown storage, services scheduled to run on only one day a week take a minimum of three-to-five weeks to examine all objects, depending on the number of system nodes. You can shorten this time by scheduling the services to run on more than one day a week.
About the Services Schedule page
You use the Services Schedule page in the HCP System Management Console to create, view, modify, activate, and delete service schedules, as well as view log messages about service activity.
The Service Schedule page has a service legend, a schedule grid, and a list of service events. On the schedule grid, each time period in which at least one service is scheduled to run is represented by a rectangle. These rectangles are numbered in the upper-left corner for ease of reference.
Services legend
The top part of the Services page has a legend that associates each service with an icon. These icons are used to identify services in the schedule grid.
The icons are:
- Compression/Encryption service
- Content Verification service
- Disposition service
- Duplicate Elimination service
- Garbage collection service
- Geo-distributed erasure coding service
- Protection service
- Scavenging service
- Storage Tiering service
- HCP S Series Balancing service
When you hover over a time period in the schedule grid:
- The legend heading shows the period reference number and the start and end times for the period
- The services scheduled in the time period are highlighted in the legend
Schedule grid
The schedule grid on the Schedule page shows the weekdays from Sunday through Saturday with each day each broken out into 24 hours. The time periods for a schedule are laid out on this grid.
The heading for each time period shows the period reference number and the start and end times for the period, if they fit in the width of the rectangle. Within each rectangle, either of these is displayed, depending on the size of the rectangle:
- For each scheduled service, the service icon with a bar under it indicating the performance level for the service:
- Low:
- Medium:
- High:
- Low:
- The number of services scheduled to run during the time period.
If a service in one time block conflicts with a service in an overlapping time block, the background color of the rectangle containing the service that does not take precedence is pink (). When you hover over the rectangle, the service that does not take precedence is highlighted in red in the service legend. Text below the legend tells you which service in the overlapping time block is involved in the conflict.
By default, when you open the Schedule page, the schedule grid shows the active schedule. To display a different schedule, select the schedule you want in the field on the left above the schedule grid.
If the displayed schedule is active, the word Active is displayed on a green background to the right of the schedule selection field.
By default, the schedule grid shows all scheduled services in the time periods for the displayed schedule. You can choose to show only a selected service in the scheduled time periods. To do this, select the service you want in the field on the right above the schedule grid.
To show all services again, select All services in the same field.
Service log messages
HCP writes messages about service activity to the system log. These messages are displayed in the Service Events section on the Schedule page as well as in other displays of the log.
The messages displayed depend on the selection in the field on the right above the schedule grid. If All services is selected, the list of messages includes all service-related messages. If a specific service is selected, the list includes only the messages related to that service.
Service schedule considerations
Before creating or modifying a service schedule, it is important to understand service schedule behavior.
These considerations apply to service schedules:
- You cannot modify or delete the service schedule named HCP Default Schedule.
- You cannot activate a service schedule that does not include the Garbage Collection service. Likewise, you cannot completely remove the Garbage Collection service from the currently active service schedule.
- If the HCP system includes spindown storage but the currently active service schedule does not include the Storage Tiering service, the Overview page in the System Management Console displays an alert indicating that this situation exists.
- If the HCP system is in an erasure coding topology but the currently active service schedule does not include the Geo-distributed Erasure Coding service, the Overview page in the System Management Console displays an alert indicating that this situation exists.
While the Geo-distributed Erasure Coding service is not running, full copies of the data for objects that are subject to erasure coding are not reduced to chunks. These copies continue to occupy the full amount of storage required for the object data. How fast the amount of used storage on the system increases depends on:
- The object ingest rate
- The size of the objects being ingested
- The Replication service schedule
- Whether the erasure coding topology is configured for full-copy or chunk distribution.
- The minimum amount of time for a time period is two hours.
- Time periods can overlap. For example, on a given day, you can have a five-hour time period that starts at 1:00 a.m., a six-hour time period that starts at 1:00 a.m., and a three-hour time period that starts at 3:00 a.m.
- Overlapping time periods cannot include the same service.
- A service that is scheduled in contiguous time periods stops at the end of the first time period and restarts at the beginning of the next one.
- Time periods cannot span days. That is, you cannot create a single time period that starts before midnight on one day and continues after midnight on the next day. However, you can schedule the same service to run in one time period that ends at midnight and another that starts at the beginning of the next day.
- The recommended maximum number of services to schedule in a time period is half the number of hours in the time period, rounded down.
- The more services you schedule to run at the same time, the more the services compete for system resources.
- Each time a service runs, it picks up from where it left off the last time it ran.
- After a service completes a full run (that is, after it has examined every object in the repository), it does not start again for at least 24 hours regardless of the service schedule.
- When a service requires spindown volumes to be spun up, it waits while the volumes spin up. This uses up a small amount of time in the time period in which the service is running.
- When a service in one time period preempts a service in another time period, the preempted service stops. If the preempting service stops before the end of the time period containing the preempted service, the preempted service restarts only if at least ten minutes remain in the time period after HCP recognizes that the preempting service has stopped. HCP can take up to five minutes to recognize the stop.
- When you modify the active schedule, any service that is currently running stops. The service restarts only if the current time is in a time period in which the service is scheduled to run and only if at least ten minutes remain in that time period.
Creating a service schedule
You can create new service schedules from existing schedules. In this case, the new schedule is initially the same as the schedule from which you created it. After creating the schedule, you can modify it in any way you want.
Alternatively, you can create a new schedule by starting with a blank schedule grid.
Optionally, if you’re creating the new schedule from an existing schedule, in the field on the left above the schedule grid, select the existing schedule.
Click Create New Schedule.
In the Create New Schedule window, type a name for the new schedule. Schedule names must be from one through 64 characters long, can contain only alphanumeric characters, hyphens (-), underscores (_), periods (.), commas (,), and spaces, and are not case-sensitive.
You cannot use the name HCP Default Schedule or HCP Spindown Schedule for a schedule you create.
Select either From currently loaded schedule to create the schedule from the existing schedule you selected or From blank schedule to start with a blank schedule grid.
Click Save.
The schedule grid shows the new schedule. This schedule is not active.
Modifying a service schedule
Before you begin
Procedure
In the field on the left above the schedule grid, select the service schedule you want to modify.
Add, modify, or delete time periods in the schedule as needed.
Click Update Schedule.
Adding a time period
To add a time period to a service schedule:
- In the field on the left above the schedule grid, select the service schedule to which you want to add the time period.
- Take one of these actions in the schedule grid:
- Click in the hour at which you want the time period to start. By default, this defines a two-hour time period. You can change the start and end times before saving the time period.
- Click and drag from one hour (the start time) to another (the end time) in the same day. You can change the start and end times before saving the time period.
- Click an existing time period.
- Click the name of a weekday. This defines a 24-hour time period for that day. When you save this time period, all other time periods that are scheduled for that day are deleted.
- Click All. This defines seven 24-hour time periods — one for each day of the week. When you save these time periods, all other time periods in the schedule are deleted.
An Edit window appears. For a time period other than a weekday or all, the top of this window shows the number of hours in the time period and the start and end times.
The Edit window lists the schedulable services. For each service, the window contains a Level field. The window also indicates the status of the service:
Service not scheduled
The service is not scheduled in the time period you’re editing or in any time period that overlaps the time period you’re editing. The performance level is Off.
Service scheduled
The service is scheduled in the time period you’re editing. The performance level is Low, Medium, or High.
Service already scheduled
The service is scheduled in a time period that overlaps the time period you’re editing. No performance level is shown.
Conflict with service-name service
The service cannot run at the same time as the named service, which is already scheduled to run in the time period you’re editing. No performance level is shown.
- Optionally, for a time period other than a weekday or all, select a different start time in the From field.
- Optionally, for a time period other than a weekday or all, select a different end time in the To field.
- For each service you want to run during the time period, select a performance level of Low, Medium, or High in the Level field. At least one service must be scheduled to run in the time period.
For each service you don’t want to run during the time period, select Off.
- Take either of these actions:
- If you started by clicking the grid, dragging, clicking a weekday, or clicking All, click Update Schedule.
- If you started by clicking an existing time period, click Create New Period. This creates a new time period only if you scheduled a service that was not scheduled in the original time period.
Modifying a time period
Before you begin
Procedure
In the field on the left above the schedule grid, select the service schedule in which you want to modify the time period.
In the schedule grid, click the time period you want to modify.
In the Edit window, make the changes you want.
Click Update Schedule.
Deleting a time period
To delete an existing time period:
- In the field on the left above the schedule grid, select the service schedule from which you want to delete the time period.
- In the schedule grid, click the time period you want to delete.
- In the Edit window, take either of these actions:
- Click Delete Period.
- Set the performance level for all services to Off. Then click Update Schedule.
Setting the active service schedule
Before you begin
Procedure
In the field on the left above the schedule grid, select the service schedule you want to make active.
In the dropdown list for this field, the currently active service schedule is marked with an asterisk (*).Click Activate Schedule.
The Activate Schedule button is present only if the displayed schedule is not active.
Deleting a service schedule
Before you begin
Procedure
In the field on the left above the schedule grid, select the service schedule you want to delete.
You cannot delete the active schedule. If the schedule you want to delete is currently active, activate a different schedule before you display the one you want to delete.
Click Delete Schedule.
In response to the confirming message, click Delete Schedule.
HCP deletes the schedule, and the schedule grid displays the active schedule.