Trilio’s tenant driven backup service gives tenants control over backup policies. However, sometimes it may be too much control to tenants and the cloud admins may want to limit what policies are allowed by tenants. For example, a tenant may become overzealous and only uses full backups every 1 hr interval. If every tenant were to pursue this backup policy, it puts a severe strain on cloud infrastructure. Instead, if cloud admin can define predefined backup policies and each tenant is only limited to those policies then cloud administrators can exert better control over backup service.
Workload policy is similar to nova flavor where a tenant cannot create arbitrary instances. Instead, each tenant is only allowed to use the nova flavors published by the admin.
List and showing available Workload policies
Using Horizon
To see all available Workload policies in Horizon follow these steps:
Login to Horizon using admin user.
Click on Admin Tab.
Navigate to Backups-Admin
Navigate to Trilio
Navigate to Policy
The following information are shown in the policy tab for each available policy:
Creation time
Projects assigned
Name
Scheduling & Retention policy
Description
Using CLI
workloadmgr policy-list
workloadmgr policy-show <policy_id>
Create a policy
Using Horizon
To create a policy in Horizon follow these steps:
Login to Horizon using admin user.
Click on Admin Tab.
Navigate to Backups-Admin
Navigate to Trilio
Navigate to Policy
Click new policy
Provide a policy name on the Details tab
Provide a description on the Details tab
Provide the retention and scheduler details in the Policy tab
--policy-fields <key=key-name> Specify following key value pairs for policy fields. 'start_time' : '10:30 PM' --policy-fields start_time='10:30 PM'
--hourly Specify following key value pairs for hourly jobschedule interval= where n is no of hours within list (1,2,3,4,6,8,12,24),retention=,snapshot_type=<full|incremental> For example --hourly interval='4',retention='1',snapshot_type='incremental' If you don't specify this option, following default value 'interval' : '1' 'retention' : '30' 'snapshot_type' : 'incremental'
--daily Specify following key value pairs for daily jobschedule backup_time='1:30 12:30 00:30',retention=,snapshot_type=<full|incremental> For example --daily backup_time='01:00 02:00 11:00',retention='1',snapshot_type='incremental'
--weekly Specify following key value pairs for weekly jobschedule backup_day=[mon,tue,wed,thu,fri,sat,sun],retention=,snapshot_type=<full|incremental> For example --weekly backup_day='sun mon tue',retention='1',snapshot_type='incremental'
--monthly Specify following key value pairs for monthly jobschedule month_backup_day=<1-31|last>, 'last': last day of the month,retention=,snapshot_type=<full|incremental> For example --monthly month_backup_day='1 2 3',retention=1,snapshot_type='incremental'
--yearly Specify following key value pairs for yearly jobschedule backup_month=[jan,feb,mar,apr,may,jun,jul,aug,sep,oct,nov,dec],retention=,snapshot_type=<full|incremental> For example --yearly backup_month='jan feb',retention='1',snapshot_type='full'
--manual Specify following key value pairs for manual jobschedule retention=,retention_days_to_keep= For example --manual retention=30,retention_days_to_keep=30
--metadata <key=keyname> Specify a key value pairs to include in the workload_type metadata Specify option multiple times to include multiple keys. key=value
--policy-fields <key=key-name> Specify following key value pairs for policy fields 'start_time' : '10:30 PM' --policy-fields start_time='10:30 PM'
--hourly Specify following key value pairs for hourly jobschedule interval= where n is no of hours within list (1,2,3,4,6,8,12,24),retention=,snapshot_type=<full|incremental> For example --hourly interval='4',retention='1',snapshot_type='incremental' If you don't specify this option, following default value 'interval' : '1' 'retention' : '30' 'snapshot_type' : 'incremental'
--daily Specify following key value pairs for daily jobschedule backup_time='1:30 12:30 00:30',retention=,snapshot_type=<full|incremental> For example --daily backup_time='01:00 02:00 11:00',retention='1',snapshot_type='incremental'
--weekly Specify following key value pairs for weekly jobschedule backup_day=[mon,tue,wed,thu,fri,sat,sun],retention=,snapshot_type=<full|incremental> For example --weekly backup_day='sun mon tue',retention='1',snapshot_type='incremental'
--monthly Specify following key value pairs for monthly jobschedule month_backup_day=<1-31|last>, 'last': last day of the month,retention=,snapshot_type=<full|incremental> For example --monthly month_backup_day='1 2 3',retention=1,snapshot_type='incremental'
--yearly Specify following key value pairs for yearly jobschedule backup_month=[jan,feb,mar,apr,may,jun,jul,aug,sep,oct,nov,dec],retention=,snapshot_type=<full|incremental> For example --yearly backup_month='jan feb',retention='1',snapshot_type='full'
--manual Specify following key value pairs for manual jobschedule retention=,retention_days_to_keep= For example --manual retention=30,retention_days_to_keep=30
--metadata <key=keyname> Specify a key value pairs to include in the workload_type metadata Specify option multiple times to include multiple keys. key=value
<policy_id> ID of the policy
--add_project <project_id> ID of the project to assign policy to. Use multiple times to assign multiple projects.
--remove_project <project_id> ID of the project to remove policy from. Use multiple times to remove multiple projects.