Introduction

There is a need to provide admin some parameters with more granularity so that values can be customized at each granular level.

Here are some global config parameters and their proposed granularity.

Global Parameter

Description

Proposed change

Development

 

allow.public.user.templates

If false, users will not be able to create public templates.

Per Account, overrides the global, e.g. for resellers not end customers

The implementation goes like adding value in the account_details table. Whenever public template is created we need to check in the account details table and then proceed.

 

capacity.skipcounting.hours

Time (in seconds) to wait before release VM's cpu and memory when VM in stopped state

per cluster, overrides global

Need to maintain the value in cluster_details table and while updating the capacity for host the value in the cluster_details need to be checked with time since vm is stopped

 

cpu.capacity.threshold

Percentage (as a value between 0 and 1) of cpu utilization above which alerts will be sent about low cpu available.

per cluster, overrides global

This is a bit ambiguous, if we change this to cluster level then CPUCapacityDisableThreshold value also need to be changed to cluster level as they are relevant.

 

max.account.snapshots

The default maximum number of snapshots that can be created for an account

Offer additional parameter, link to sec storage capacity, per account

This is already been maintained and checked with account id, we need to take the value while creating an account.

 

max.account.templates

The default maximum number of templates that can be deployed for an account

As per snapshots, ensure it includes ISOs

This is already been maintained and checked with account id, we need to take the value while creating an account.