332 lines
11 KiB
YAML
332 lines
11 KiB
YAML
attributes:
|
|
metadata:
|
|
# Settings group can be one of "general", "security", "compute", "network",
|
|
# "storage", "logging", "openstack_services" and "other".
|
|
group: 'storage'
|
|
|
|
existing_cluster:
|
|
type: "checkbox"
|
|
value: false
|
|
label: "Use existing ScaleIO."
|
|
description: "Do not deploy ScaleIO cluster, just use existing cluster."
|
|
weight: 10
|
|
|
|
gateway_ip:
|
|
type: "text"
|
|
value: ""
|
|
label: "Gateway IP address"
|
|
description: "Cinder and Nova use it for requests to ScaleIO."
|
|
weight: 20
|
|
regex:
|
|
source: '^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$'
|
|
error: "Gateway address is requried parameter"
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == false"
|
|
action: hide
|
|
|
|
gateway_port:
|
|
type: "text"
|
|
value: "4443"
|
|
label: "Gateway port"
|
|
description: "Cinder and Nova use it for requests to ScaleIO."
|
|
weight: 25
|
|
regex:
|
|
source: '^[0-9]+$'
|
|
error: "Gateway port is required parameter"
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == false"
|
|
action: hide
|
|
|
|
gateway_user:
|
|
type: "text"
|
|
value: "admin"
|
|
label: "Gateway user"
|
|
description: "Type a user name for the gateway"
|
|
weight: 30
|
|
regex:
|
|
source: '^\w+$'
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == false"
|
|
action: hide
|
|
|
|
password:
|
|
type: "password"
|
|
weight: 40
|
|
value: ""
|
|
label: "Admin password"
|
|
description: "Type ScaleIO Admin password"
|
|
regex:
|
|
source: '^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,15}$'
|
|
error: "You must provide a password with between 8 and 15 characters, one uppercase, and one number"
|
|
|
|
protection_domain:
|
|
type: "text"
|
|
value: "default"
|
|
label: "Protection domain"
|
|
description:
|
|
Name of first protection domain. In case of auto-scaling next domains will get names like default_2, default_3.
|
|
Auto-scaling works if the Use Existing Cluster option is disabled. Next domain is created
|
|
if number of SDS-es reaches the limit in the setting Maximum number of nodes in one protection domain.
|
|
weight: 70
|
|
regex:
|
|
source: '^(\w+){1}((,){1}(?=\w+))*'
|
|
error: "Can contain characters, numbers and underlines"
|
|
|
|
protection_domain_nodes:
|
|
type: "text"
|
|
value: "100"
|
|
label: "Maximum number of nodes in one protection domain"
|
|
description:
|
|
If number of nodes gets larger than this threshold then new protection domain will be created.
|
|
Note, in that case it is needed to add at least 3 new nodes to make new domain operationable.
|
|
In case of hyper-converged deployment they should be compute nodes, otherwise - the ScaleIO nodes.
|
|
weight: 75
|
|
regex:
|
|
source: '^[1-9]{1}[0-9]*$'
|
|
error: "Should be number that equal or larger than 1"
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
enable_sds_role:
|
|
type: "checkbox"
|
|
value: false
|
|
label: "Experimental role-based deployment"
|
|
description: "Hidden option to disable experimental feature"
|
|
weight: 5
|
|
restrictions:
|
|
- condition: "true"
|
|
action: hide
|
|
|
|
storage_pools:
|
|
type: "text"
|
|
value: "default"
|
|
label: "Storage pools"
|
|
description:
|
|
Comma separated list for splitting devices between them.
|
|
It could be just one element if all devices are belong to the one pool.
|
|
weight: 80
|
|
regex:
|
|
source: '^(\w+){1}((,){1}(?=\w+))*'
|
|
error: "Can contain characters, numbers and underlines"
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true or settings:scaleio.enable_sds_role.value == true"
|
|
action: hide
|
|
|
|
existing_storage_pools:
|
|
type: "text"
|
|
value: "default"
|
|
label: "Storage pools"
|
|
description: "Storage pools which are allowed to be used in new Cloud."
|
|
weight: 90
|
|
regex:
|
|
source: '^(\w+){1}((,){1}(?=\w+))*'
|
|
error: "Can contain characters, numbers and underlines"
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == false"
|
|
action: hide
|
|
|
|
device_paths:
|
|
type: "text"
|
|
value: ""
|
|
label: "Storage devices"
|
|
description: "Comma separated list of devices, e.g. /dev/sdb,/dev/sdc."
|
|
weight: 100
|
|
regex:
|
|
source: '^(/[a-zA-Z0-9:-_]+)+(,(/[a-zA-Z0-9:-_]+)+)*$'
|
|
error: 'List of path is incorrect. It is comma separated list aka /dev/sdb,/dev/sdc'
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true or settings:scaleio.enable_sds_role.value == true"
|
|
action: hide
|
|
|
|
hyper_converged_deployment:
|
|
type: "checkbox"
|
|
value: true
|
|
label: "Hyper-converged deployment"
|
|
description:
|
|
Deploy SDS component on all compute nodes automatically and optionally on controller nodes.
|
|
If the option disabled then SDS will be deployed only on the nodes with the ScaleIO role.
|
|
weight: 103
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
sds_on_controller:
|
|
type: "checkbox"
|
|
value: true
|
|
label: "Controller as Storage"
|
|
description: "Setup SDS-es on controller nodes."
|
|
weight: 105
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true or settings:scaleio.hyper_converged_deployment.value == false or settings:scaleio.enable_sds_role.value == true"
|
|
action: hide
|
|
|
|
provisioning_type:
|
|
type: "radio"
|
|
value: "thin"
|
|
label: "Provisioning type"
|
|
description: "Thin/Thick provisioning for ephemeral and persistent volumes."
|
|
weight: 110
|
|
values:
|
|
- data: 'thin'
|
|
label: 'Thin provisioning'
|
|
description: "Thin provisioning for ephemeral and persistent volumes."
|
|
- data: 'thick'
|
|
label: 'Thick provisioning'
|
|
description: "Thick provisioning for ephemeral and persistent volumes."
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
checksum_mode:
|
|
type: "checkbox"
|
|
value: false
|
|
label: "Checksum mode"
|
|
description:
|
|
Checksum protection. ScaleIO protects data in-flight by calculating and validating the checksum value for the payload at both ends.
|
|
Note, the checksum feature may have a minor effect on performance.
|
|
ScaleIO utilizes hardware capabilities for this feature, where possible.
|
|
weight: 120
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
spare_policy:
|
|
type: "text"
|
|
value: '10'
|
|
label: "Spare policy"
|
|
description: "% out of total space"
|
|
weight: 130
|
|
regex:
|
|
source: '^[0-9]{1,2}$'
|
|
error: "Value could be between 0 and 99"
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
zero_padding:
|
|
type: "checkbox"
|
|
value: true
|
|
label: "Enable Zero Padding for Storage Pools"
|
|
description: "New volumes will be zeroed if the option enabled."
|
|
weight: 140
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
scanner_mode:
|
|
type: "checkbox"
|
|
value: false
|
|
label: "Background device scanner"
|
|
description: "This options enables the background device scanner on the devices in device only mode."
|
|
weight: 150
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
rmcache_usage:
|
|
type: "checkbox"
|
|
value: false
|
|
label: "Use RAM cache (RMCache)"
|
|
description: "SDS Server RAM is reserved for caching storage devices in a Storage Pool."
|
|
weight: 155
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
rmcache_passthrough_pools:
|
|
type: "text"
|
|
value: ""
|
|
label: "Passthrough RMCache storage pools"
|
|
description: "List of Storage pools which should be cached in RAM in passthrough mode (writes to storage only)."
|
|
weight: 157
|
|
regex:
|
|
source: '^(\w+)*((,){1}(?=\w+))*'
|
|
error: 'List of storage pools incorrect. It could be either empty or the comma separated list e.g. pool1,pool2'
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true or settings:scaleio.rmcache_usage.value == false"
|
|
action: hide
|
|
|
|
rmcache_cached_pools:
|
|
type: "text"
|
|
value: ""
|
|
label: "Cached RMCache storage pools"
|
|
description: "List of Storage pools which should be cached in RAM in cached mode (writes both to cache and to storage)."
|
|
weight: 158
|
|
regex:
|
|
source: '^(\w+)*((,){1}(?=\w+))*'
|
|
error: 'List of storage pools incorrect. It could be either empty or the comma separated list e.g. pool1,pool2'
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true or settings:scaleio.rmcache_usage.value == false"
|
|
action: hide
|
|
|
|
rfcache_devices:
|
|
type: "text"
|
|
value: ""
|
|
label: "XtremCache devices"
|
|
description: "List of SDS devices for SSD caching. Cache is disabled if list empty."
|
|
weight: 160
|
|
regex:
|
|
source: '^(/[a-zA-Z0-9:-_]+)*(,(/[a-zA-Z0-9:-_]+)+)*$'
|
|
error: 'List of path is incorrect. It could be either empty or the comma separated list e.g. /dev/sdb,/dev/sdc'
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true or settings:scaleio.enable_sds_role.value == true"
|
|
action: hide
|
|
|
|
cached_storage_pools:
|
|
type: "text"
|
|
value: ""
|
|
label: "XtremCache storage pools"
|
|
description: "List of storage pools which should be cached with XtremCache."
|
|
weight: 170
|
|
regex:
|
|
source: '^(\w+)*((,){1}(?=\w+))*'
|
|
error: 'List of storage pools incorrect. It could be either empty or the comma separated list e.g. pool1,pool2'
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true or settings:scaleio.enable_sds_role.value == true"
|
|
action: hide
|
|
|
|
capacity_high_alert_threshold:
|
|
type: "text"
|
|
value: '80'
|
|
label: "Capacity high priority alert"
|
|
description: "Threshold of the non-spare capacity of the Storage Pool that will trigger a high-priority alert, in percentage format"
|
|
weight: 180
|
|
regex:
|
|
source: '^[0-9]{1,2}$'
|
|
error: "Value could be between 0 and 99"
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
capacity_critical_alert_threshold:
|
|
type: "text"
|
|
value: '90'
|
|
label: "Capacity critical priority alert"
|
|
description: "Threshold of the non-spare capacity of the Storage Pool that will trigger a critical-priority alert, in percentage format"
|
|
weight: 190
|
|
regex:
|
|
source: '^[0-9]{1,2}$'
|
|
error: "Value could be between 0 and 99"
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true"
|
|
action: hide
|
|
|
|
use_scaleio_for_glance:
|
|
type: "checkbox"
|
|
value: false
|
|
label: "Glance images on ScaleIO"
|
|
description: "Glance uses ScaleIO as a backend for images if the option enabled. It uses cinder backend in Glance to store images on ScaleIO."
|
|
weight: 195
|
|
restrictions:
|
|
- condition: "settings:scaleio.existing_cluster.value == true or cluster:fuel_version == '6.1' or cluster:fuel_version == '7.0' or cluster:fuel_version == '8.0'"
|
|
action: hide
|
|
|
|
pkg_ftp:
|
|
type: "text"
|
|
value: "ftp://QNzgdxXix:Aw3wFAwAq3@ftp.emc.com/Ubuntu/2.0.7536.0"
|
|
label: "FTP server with ScaleIO packages"
|
|
description: "In case of no internet connection set this option to a local FTP server with appropriate folder structure."
|
|
weight: 200
|
|
|