Add support for reserved percentage options

Each backend support a few options to determine the capacity percentage
which should be reserved for certain operations. This adds support
for these options.

Change-Id: Ia259871cb6759eb2f8768cb5989846dd121d0d70
This commit is contained in:
Takashi Kajinami
2023-10-07 19:09:24 +09:00
parent f965957d17
commit 063b4b5a8c
13 changed files with 495 additions and 245 deletions

View File

@@ -73,22 +73,39 @@
# filesystems in the cluster.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
define manila::backend::cephfs (
$driver_handles_share_servers = false,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$cephfs_conf_path = '$state_path/ceph.conf',
$cephfs_auth_id = 'manila',
$cephfs_cluster_name = 'ceph',
$cephfs_ganesha_server_ip = $facts['os_service_default'],
$cephfs_ganesha_export_ips = $facts['os_service_default'],
$cephfs_ganesha_server_is_remote = $facts['os_service_default'],
$cephfs_ganesha_server_username = $facts['os_service_default'],
$cephfs_ganesha_server_password = $facts['os_service_default'],
$cephfs_ganesha_path_to_private_key = $facts['os_service_default'],
$cephfs_volume_mode = $facts['os_service_default'],
$cephfs_protocol_helper_type = 'CEPHFS',
$cephfs_filesystem_name = $facts['os_service_default'],
$driver_handles_share_servers = false,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$cephfs_conf_path = '$state_path/ceph.conf',
$cephfs_auth_id = 'manila',
$cephfs_cluster_name = 'ceph',
$cephfs_ganesha_server_ip = $facts['os_service_default'],
$cephfs_ganesha_export_ips = $facts['os_service_default'],
$cephfs_ganesha_server_is_remote = $facts['os_service_default'],
$cephfs_ganesha_server_username = $facts['os_service_default'],
$cephfs_ganesha_server_password = $facts['os_service_default'],
$cephfs_ganesha_path_to_private_key = $facts['os_service_default'],
$cephfs_volume_mode = $facts['os_service_default'],
$cephfs_protocol_helper_type = 'CEPHFS',
$cephfs_filesystem_name = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
) {
include manila::deps
@@ -96,21 +113,24 @@ define manila::backend::cephfs (
$share_driver = 'manila.share.drivers.cephfs.driver.CephFSDriver'
manila_config {
"${name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${name}/share_backend_name": value => $share_backend_name;
"${name}/backend_availability_zone": value => $backend_availability_zone;
"${name}/share_driver": value => $share_driver;
"${name}/cephfs_conf_path": value => $cephfs_conf_path;
"${name}/cephfs_auth_id": value => $cephfs_auth_id;
"${name}/cephfs_cluster_name": value => $cephfs_cluster_name;
"${name}/cephfs_ganesha_server_ip": value => $cephfs_ganesha_server_ip;
"${name}/cephfs_ganesha_export_ips": value => join(any2array($cephfs_ganesha_export_ips), ',');
"${name}/cephfs_ganesha_server_is_remote": value => $cephfs_ganesha_server_is_remote;
"${name}/cephfs_ganesha_server_username": value => $cephfs_ganesha_server_username;
"${name}/cephfs_ganesha_server_password": value => $cephfs_ganesha_server_password, secret => true;
"${name}/cephfs_ganesha_path_to_private_key": value => $cephfs_ganesha_path_to_private_key;
"${name}/cephfs_volume_mode": value => $cephfs_volume_mode;
"${name}/cephfs_protocol_helper_type": value => $cephfs_protocol_helper_type;
"${name}/cephfs_filesystem_name": value => $cephfs_filesystem_name;
"${name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${name}/share_backend_name": value => $share_backend_name;
"${name}/backend_availability_zone": value => $backend_availability_zone;
"${name}/share_driver": value => $share_driver;
"${name}/cephfs_conf_path": value => $cephfs_conf_path;
"${name}/cephfs_auth_id": value => $cephfs_auth_id;
"${name}/cephfs_cluster_name": value => $cephfs_cluster_name;
"${name}/cephfs_ganesha_server_ip": value => $cephfs_ganesha_server_ip;
"${name}/cephfs_ganesha_export_ips": value => join(any2array($cephfs_ganesha_export_ips), ',');
"${name}/cephfs_ganesha_server_is_remote": value => $cephfs_ganesha_server_is_remote;
"${name}/cephfs_ganesha_server_username": value => $cephfs_ganesha_server_username;
"${name}/cephfs_ganesha_server_password": value => $cephfs_ganesha_server_password, secret => true;
"${name}/cephfs_ganesha_path_to_private_key": value => $cephfs_ganesha_path_to_private_key;
"${name}/cephfs_volume_mode": value => $cephfs_volume_mode;
"${name}/cephfs_protocol_helper_type": value => $cephfs_protocol_helper_type;
"${name}/cephfs_filesystem_name": value => $cephfs_filesystem_name;
"${name}/reserved_share_percentage": value => $reserved_share_percentage;
"${name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
}

View File

@@ -58,6 +58,20 @@
# (optional) Verify SSL certificates
# Defaults to $facts['os_service_default']
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
@@ -73,16 +87,19 @@ define manila::backend::dellemc_powermax (
String[1] $emc_nas_login,
String[1] $emc_nas_password,
String[1] $emc_nas_server,
$emc_share_backend = 'powermax',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$powermax_server_container = $facts['os_service_default'],
$powermax_share_data_pools = $facts['os_service_default'],
$powermax_ethernet_ports = $facts['os_service_default'],
$emc_nas_server_secure = $facts['os_service_default'],
$emc_ssl_cert_path = $facts['os_service_default'],
$emc_ssl_cert_verify = $facts['os_service_default'],
$package_ensure = 'present',
$emc_share_backend = 'powermax',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$powermax_server_container = $facts['os_service_default'],
$powermax_share_data_pools = $facts['os_service_default'],
$powermax_ethernet_ports = $facts['os_service_default'],
$emc_nas_server_secure = $facts['os_service_default'],
$emc_ssl_cert_path = $facts['os_service_default'],
$emc_ssl_cert_verify = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
$package_ensure = 'present',
) {
include manila::deps
@@ -91,20 +108,23 @@ define manila::backend::dellemc_powermax (
$powermax_share_driver = 'manila.share.drivers.dell_emc.driver.EMCShareDriver'
manila_config {
"${share_backend_name}/share_driver": value => $powermax_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => true;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/emc_share_backend": value => $emc_share_backend;
"${share_backend_name}/powermax_server_container": value => $powermax_server_container;
"${share_backend_name}/powermax_share_data_pools": value => join(any2array($powermax_share_data_pools), ',');
"${share_backend_name}/powermax_ethernet_ports": value => join(any2array($powermax_ethernet_ports), ',');
"${share_backend_name}/emc_nas_server_secure": value => $emc_nas_server_secure;
"${share_backend_name}/emc_ssl_cert_path": value => $emc_ssl_cert_path;
"${share_backend_name}/emc_ssl_cert_verify": value => $emc_ssl_cert_verify;
"${share_backend_name}/share_driver": value => $powermax_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => true;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/emc_share_backend": value => $emc_share_backend;
"${share_backend_name}/powermax_server_container": value => $powermax_server_container;
"${share_backend_name}/powermax_share_data_pools": value => join(any2array($powermax_share_data_pools), ',');
"${share_backend_name}/powermax_ethernet_ports": value => join(any2array($powermax_ethernet_ports), ',');
"${share_backend_name}/emc_nas_server_secure": value => $emc_nas_server_secure;
"${share_backend_name}/emc_ssl_cert_path": value => $emc_ssl_cert_path;
"${share_backend_name}/emc_ssl_cert_verify": value => $emc_ssl_cert_verify;
"${share_backend_name}/reserved_share_percentage": value => $reserved_share_percentage;
"${share_backend_name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${share_backend_name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
ensure_packages('nfs-client', {

View File

@@ -78,6 +78,20 @@
# CAs, which will be used to validate the backend.
# Defaults to $facts['os_service_default']
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
@@ -97,17 +111,20 @@ define manila::backend::dellemc_unity (
String[1] $emc_nas_password,
String[1] $emc_nas_server,
String[1] $unity_server_meta_pool,
$emc_share_backend = 'unity',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$unity_share_data_pools = $facts['os_service_default'],
$unity_ethernet_ports = $facts['os_service_default'],
$unity_share_server = $facts['os_service_default'],
$report_default_filter_function = $facts['os_service_default'],
$network_plugin_ipv6_enabled = true,
$emc_ssl_cert_verify = $facts['os_service_default'],
$emc_ssl_cert_path = $facts['os_service_default'],
$package_ensure = 'present',
$emc_share_backend = 'unity',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$unity_share_data_pools = $facts['os_service_default'],
$unity_ethernet_ports = $facts['os_service_default'],
$unity_share_server = $facts['os_service_default'],
$report_default_filter_function = $facts['os_service_default'],
$network_plugin_ipv6_enabled = true,
$emc_ssl_cert_verify = $facts['os_service_default'],
$emc_ssl_cert_path = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
$package_ensure = 'present',
) {
include manila::deps
@@ -116,22 +133,25 @@ define manila::backend::dellemc_unity (
$unity_share_driver = 'manila.share.drivers.dell_emc.driver.EMCShareDriver'
manila_config {
"${share_backend_name}/share_driver": value => $unity_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/emc_share_backend": value => $emc_share_backend;
"${share_backend_name}/unity_server_meta_pool": value => $unity_server_meta_pool;
"${share_backend_name}/unity_share_data_pools": value => join(any2array($unity_share_data_pools), ',');
"${share_backend_name}/unity_ethernet_ports": value => join(any2array($unity_ethernet_ports), ',');
"${share_backend_name}/unity_share_server": value => $unity_share_server;
"${share_backend_name}/report_default_filter_function": value => $report_default_filter_function;
"${share_backend_name}/network_plugin_ipv6_enabled": value => $network_plugin_ipv6_enabled;
"${share_backend_name}/emc_ssl_cert_verify": value => $emc_ssl_cert_verify;
"${share_backend_name}/emc_ssl_cert_path": value => $emc_ssl_cert_path;
"${share_backend_name}/share_driver": value => $unity_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/emc_share_backend": value => $emc_share_backend;
"${share_backend_name}/unity_server_meta_pool": value => $unity_server_meta_pool;
"${share_backend_name}/unity_share_data_pools": value => join(any2array($unity_share_data_pools), ',');
"${share_backend_name}/unity_ethernet_ports": value => join(any2array($unity_ethernet_ports), ',');
"${share_backend_name}/unity_share_server": value => $unity_share_server;
"${share_backend_name}/report_default_filter_function": value => $report_default_filter_function;
"${share_backend_name}/network_plugin_ipv6_enabled": value => $network_plugin_ipv6_enabled;
"${share_backend_name}/emc_ssl_cert_verify": value => $emc_ssl_cert_verify;
"${share_backend_name}/emc_ssl_cert_path": value => $emc_ssl_cert_path;
"${share_backend_name}/reserved_share_percentage": value => $reserved_share_percentage;
"${share_backend_name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${share_backend_name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
ensure_packages('nfs-client', {

View File

@@ -63,6 +63,20 @@
# CAs, which will be used to validate the backend.
# Defaults to $facts['os_service_default']
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
@@ -87,17 +101,21 @@ define manila::backend::dellemc_vnx (
String[1] $emc_nas_login,
String[1] $emc_nas_password,
String[1] $emc_nas_server,
$emc_share_backend = 'vnx',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$vnx_server_container = $facts['os_service_default'],
$vnx_share_data_pools = $facts['os_service_default'],
$vnx_ethernet_ports = $facts['os_service_default'],
$network_plugin_ipv6_enabled = true,
$emc_ssl_cert_verify = $facts['os_service_default'],
$emc_ssl_cert_path = $facts['os_service_default'],
$package_ensure = 'present',
$driver_handles_share_servers = undef,
$emc_share_backend = 'vnx',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$vnx_server_container = $facts['os_service_default'],
$vnx_share_data_pools = $facts['os_service_default'],
$vnx_ethernet_ports = $facts['os_service_default'],
$network_plugin_ipv6_enabled = true,
$emc_ssl_cert_verify = $facts['os_service_default'],
$emc_ssl_cert_path = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
$package_ensure = 'present',
# DEPRECATED PARAMETERS
$driver_handles_share_servers = undef,
) {
include manila::deps
@@ -110,20 +128,23 @@ define manila::backend::dellemc_vnx (
$vnx_share_driver = 'manila.share.drivers.dell_emc.driver.EMCShareDriver'
manila_config {
"${share_backend_name}/share_driver": value => $vnx_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => true;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/emc_share_backend": value => $emc_share_backend;
"${share_backend_name}/vnx_server_container": value => $vnx_server_container;
"${share_backend_name}/vnx_share_data_pools": value => join(any2array($vnx_share_data_pools), ',');
"${share_backend_name}/vnx_ethernet_ports": value => join(any2array($vnx_ethernet_ports), ',');
"${share_backend_name}/network_plugin_ipv6_enabled": value => $network_plugin_ipv6_enabled;
"${share_backend_name}/emc_ssl_cert_verify": value => $emc_ssl_cert_verify;
"${share_backend_name}/emc_ssl_cert_path": value => $emc_ssl_cert_path;
"${share_backend_name}/share_driver": value => $vnx_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => true;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/emc_share_backend": value => $emc_share_backend;
"${share_backend_name}/vnx_server_container": value => $vnx_server_container;
"${share_backend_name}/vnx_share_data_pools": value => join(any2array($vnx_share_data_pools), ',');
"${share_backend_name}/vnx_ethernet_ports": value => join(any2array($vnx_ethernet_ports), ',');
"${share_backend_name}/network_plugin_ipv6_enabled": value => $network_plugin_ipv6_enabled;
"${share_backend_name}/emc_ssl_cert_verify": value => $emc_ssl_cert_verify;
"${share_backend_name}/emc_ssl_cert_path": value => $emc_ssl_cert_path;
"${share_backend_name}/reserved_share_percentage": value => $reserved_share_percentage;
"${share_backend_name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${share_backend_name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
ensure_packages('nfs-client', {

View File

@@ -28,6 +28,20 @@
# (optional) Fully eradicate deleted shares and snapshots.
# Defaults to True
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
@@ -43,10 +57,13 @@ define manila::backend::flashblade (
String[1] $flashblade_api,
String[1] $flashblade_data_vip,
String[1] $flashblade_mgmt_vip,
$flashblade_eradicate = true,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$package_ensure = 'present',
$flashblade_eradicate = true,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
$package_ensure = 'present',
) {
include manila::deps
@@ -55,14 +72,17 @@ define manila::backend::flashblade (
$flashblade_share_driver = 'manila.share.drivers.purestorage.flashblade.FlashBladeShareDriver'
manila_config {
"${share_backend_name}/share_driver": value => $flashblade_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => false;
"${share_backend_name}/flashblade_eradicate": value => $flashblade_eradicate;
"${share_backend_name}/flashblade_api": value => $flashblade_api, secret => true;
"${share_backend_name}/flashblade_mgmt_vip": value => $flashblade_mgmt_vip;
"${share_backend_name}/flashblade_data_vip": value => $flashblade_data_vip;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/share_driver": value => $flashblade_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => false;
"${share_backend_name}/flashblade_eradicate": value => $flashblade_eradicate;
"${share_backend_name}/flashblade_api": value => $flashblade_api, secret => true;
"${share_backend_name}/flashblade_mgmt_vip": value => $flashblade_mgmt_vip;
"${share_backend_name}/flashblade_data_vip": value => $flashblade_data_vip;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/reserved_share_percentage": value => $reserved_share_percentage;
"${share_backend_name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${share_backend_name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
ensure_packages('nfs-client', {

View File

@@ -75,24 +75,42 @@
# of share servers will be disabled.
# Defaults to: True
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
define manila::backend::generic (
$driver_handles_share_servers,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$smb_template_config_path = '$state_path/smb.conf',
$volume_name_template = 'manila-share-%s',
$volume_snapshot_name_template = 'manila-snapshot-%s',
$share_mount_path = '/shares',
$max_time_to_create_volume = 180,
$max_time_to_attach = 120,
$service_instance_smb_config_path = '$share_mount_path/smb.conf',
$share_volume_fstype = 'ext4',
$share_helpers = ['CIFS=manila.share.drivers.helpers.CIFSHelperIPAccess',
'NFS=manila.share.drivers.helpers.NFSHelper'],
$cinder_volume_type = undef,
$delete_share_server_with_last_share = 'False',
$unmanage_remove_access_rules = 'False',
$automatic_share_server_cleanup = 'True',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$smb_template_config_path = '$state_path/smb.conf',
$volume_name_template = 'manila-share-%s',
$volume_snapshot_name_template = 'manila-snapshot-%s',
$share_mount_path = '/shares',
$max_time_to_create_volume = 180,
$max_time_to_attach = 120,
$service_instance_smb_config_path = '$share_mount_path/smb.conf',
$share_volume_fstype = 'ext4',
$share_helpers = [
'CIFS=manila.share.drivers.helpers.CIFSHelperIPAccess',
'NFS=manila.share.drivers.helpers.NFSHelper'],
$cinder_volume_type = undef,
$delete_share_server_with_last_share = 'False',
$unmanage_remove_access_rules = 'False',
$automatic_share_server_cleanup = 'True',
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
) {
include manila::deps
@@ -100,22 +118,25 @@ define manila::backend::generic (
$share_driver = 'manila.share.drivers.generic.GenericShareDriver'
manila_config {
"${name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${name}/share_backend_name": value => $share_backend_name;
"${name}/backend_availability_zone": value => $backend_availability_zone;
"${name}/share_driver": value => $share_driver;
"${name}/smb_template_config_path": value => $smb_template_config_path;
"${name}/volume_name_template": value => $volume_name_template;
"${name}/volume_snapshot_name_template": value => $volume_snapshot_name_template;
"${name}/share_mount_path": value => $share_mount_path;
"${name}/max_time_to_create_volume": value => $max_time_to_create_volume;
"${name}/max_time_to_attach": value => $max_time_to_attach;
"${name}/service_instance_smb_config_path": value => $service_instance_smb_config_path;
"${name}/share_volume_fstype": value => $share_volume_fstype;
"${name}/share_helpers": value => join($share_helpers, ',');
"${name}/cinder_volume_type": value => $cinder_volume_type;
"${name}/delete_share_server_with_last_share": value => $delete_share_server_with_last_share;
"${name}/unmanage_remove_access_rules": value => $unmanage_remove_access_rules;
"${name}/automatic_share_server_cleanup": value => $automatic_share_server_cleanup;
"${name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${name}/share_backend_name": value => $share_backend_name;
"${name}/backend_availability_zone": value => $backend_availability_zone;
"${name}/share_driver": value => $share_driver;
"${name}/smb_template_config_path": value => $smb_template_config_path;
"${name}/volume_name_template": value => $volume_name_template;
"${name}/volume_snapshot_name_template": value => $volume_snapshot_name_template;
"${name}/share_mount_path": value => $share_mount_path;
"${name}/max_time_to_create_volume": value => $max_time_to_create_volume;
"${name}/max_time_to_attach": value => $max_time_to_attach;
"${name}/service_instance_smb_config_path": value => $service_instance_smb_config_path;
"${name}/share_volume_fstype": value => $share_volume_fstype;
"${name}/share_helpers": value => join($share_helpers, ',');
"${name}/cinder_volume_type": value => $cinder_volume_type;
"${name}/delete_share_server_with_last_share": value => $delete_share_server_with_last_share;
"${name}/unmanage_remove_access_rules": value => $unmanage_remove_access_rules;
"${name}/automatic_share_server_cleanup": value => $automatic_share_server_cleanup;
"${name}/reserved_share_percentage": value => $reserved_share_percentage;
"${name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
}

View File

@@ -23,26 +23,46 @@
# (optional) Base dir containing mount points for Gluster volumes.
# Defaults to: $state_path/mnt
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# === Examples
# manila::backend::glusterfs { 'myGluster':
# glusterfs_shares = ['192.168.1.1:/shares'],
# }
#
define manila::backend::glusterfs (
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$glusterfs_volumes_config = '/etc/manila/glusterfs_volumes',
$glusterfs_mount_point_base = '$state_path/mnt',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$glusterfs_volumes_config = '/etc/manila/glusterfs_volumes',
$glusterfs_mount_point_base = '$state_path/mnt',
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
) {
include manila::deps
$share_driver = 'manila.share.drivers.glusterfs.GlusterfsShareDriver'
manila_config {
"${name}/share_backend_name": value => $share_backend_name;
"${name}/backend_availability_zone": value => $backend_availability_zone;
"${name}/share_driver": value => $share_driver;
"${name}/glusterfs_volumes_config": value => $glusterfs_volumes_config;
"${name}/glusterfs_mount_point_base": value => $glusterfs_mount_point_base;
"${name}/share_backend_name": value => $share_backend_name;
"${name}/backend_availability_zone": value => $backend_availability_zone;
"${name}/share_driver": value => $share_driver;
"${name}/glusterfs_volumes_config": value => $glusterfs_volumes_config;
"${name}/glusterfs_mount_point_base": value => $glusterfs_mount_point_base;
"${name}/reserved_share_percentage": value => $reserved_share_percentage;
"${name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
}

View File

@@ -27,6 +27,20 @@
# is used as the default for all backends.
# Defaults to $facts['os_service_default'].
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
@@ -34,9 +48,12 @@ define manila::backend::glusternative (
$glusterfs_servers,
$glusterfs_volume_pattern,
$glusterfs_path_to_private_key,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$package_ensure = 'present',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
$package_ensure = 'present',
) {
include manila::deps
@@ -45,12 +62,15 @@ define manila::backend::glusternative (
$share_driver = 'manila.share.drivers.glusterfs_native.GlusterfsNativeShareDriver'
manila_config {
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/share_driver": value => $share_driver;
"${share_backend_name}/glusterfs_servers": value => $glusterfs_servers;
"${share_backend_name}/glusterfs_path_to_private_key": value => $glusterfs_path_to_private_key;
"${share_backend_name}/glusterfs_volume_pattern": value => $glusterfs_volume_pattern;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/share_driver": value => $share_driver;
"${share_backend_name}/glusterfs_servers": value => $glusterfs_servers;
"${share_backend_name}/glusterfs_path_to_private_key": value => $glusterfs_path_to_private_key;
"${share_backend_name}/glusterfs_volume_pattern": value => $glusterfs_volume_pattern;
"${share_backend_name}/reserved_share_percentage": value => $reserved_share_percentage;
"${share_backend_name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${share_backend_name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
ensure_packages( [

View File

@@ -34,19 +34,35 @@
# is used as the default for all backends.
# Defaults to $facts['os_service_default'].
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
define manila::backend::glusternfs (
$glusterfs_target,
$glusterfs_mount_point_base,
$glusterfs_nfs_server_type,
$glusterfs_path_to_private_key,
$glusterfs_ganesha_server_ip,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$package_ensure = 'present',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
$package_ensure = 'present',
) {
include manila::deps
@@ -55,14 +71,17 @@ define manila::backend::glusternfs (
$share_driver = 'manila.share.drivers.glusterfs.GlusterfsShareDriver'
manila_config {
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/share_driver": value => $share_driver;
"${share_backend_name}/glusterfs_target": value => $glusterfs_target;
"${share_backend_name}/glusterfs_mount_point_base": value => $glusterfs_mount_point_base;
"${share_backend_name}/glusterfs_nfs_server_type": value => $glusterfs_nfs_server_type;
"${share_backend_name}/glusterfs_path_to_private_key": value => $glusterfs_path_to_private_key;
"${share_backend_name}/glusterfs_ganesha_server_ip": value => $glusterfs_ganesha_server_ip;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/share_driver": value => $share_driver;
"${share_backend_name}/glusterfs_target": value => $glusterfs_target;
"${share_backend_name}/glusterfs_mount_point_base": value => $glusterfs_mount_point_base;
"${share_backend_name}/glusterfs_nfs_server_type": value => $glusterfs_nfs_server_type;
"${share_backend_name}/glusterfs_path_to_private_key": value => $glusterfs_path_to_private_key;
"${share_backend_name}/glusterfs_ganesha_server_ip": value => $glusterfs_ganesha_server_ip;
"${share_backend_name}/reserved_share_percentage": value => $reserved_share_percentage;
"${share_backend_name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${share_backend_name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
ensure_packages( [

View File

@@ -41,6 +41,20 @@
# is used as the default for all backends.
# Defaults to $facts['os_service_default'].
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
@@ -63,10 +77,13 @@ define manila::backend::hitachi_hnas (
String[1] $hitachi_hnas_evs_id,
String[1] $hitachi_hnas_evs_ip,
$hitachi_hnas_file_system_name,
$driver_handles_share_servers = false,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$package_ensure = 'present',
$driver_handles_share_servers = false,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
$package_ensure = 'present',
) {
include manila::deps
@@ -75,15 +92,18 @@ define manila::backend::hitachi_hnas (
$hitachi_share_driver = 'manila.share.drivers.hitachi.hds_hnas.HDSHNASDriver'
manila_config {
"${share_backend_name}/share_driver": value => $hitachi_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/hitachi_hnas_user": value => $hitachi_hnas_user;
"${share_backend_name}/hitachi_hnas_password": value => $hitachi_hnas_password, secret => true;
"${share_backend_name}/hitachi_hnas_ip": value => $hitachi_hnas_ip;
"${share_backend_name}/hitachi_hnas_evs_id": value => $hitachi_hnas_evs_id;
"${share_backend_name}/hitachi_hnas_evs_ip": value => $hitachi_hnas_evs_ip;
"${share_backend_name}/hitachi_hnas_file_system_name": value => $hitachi_hnas_file_system_name;
"${share_backend_name}/share_driver": value => $hitachi_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/hitachi_hnas_user": value => $hitachi_hnas_user;
"${share_backend_name}/hitachi_hnas_password": value => $hitachi_hnas_password, secret => true;
"${share_backend_name}/hitachi_hnas_ip": value => $hitachi_hnas_ip;
"${share_backend_name}/hitachi_hnas_evs_id": value => $hitachi_hnas_evs_id;
"${share_backend_name}/hitachi_hnas_evs_ip": value => $hitachi_hnas_evs_ip;
"${share_backend_name}/hitachi_hnas_file_system_name": value => $hitachi_hnas_file_system_name;
"${share_backend_name}/reserved_share_percentage": value => $reserved_share_percentage;
"${share_backend_name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${share_backend_name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
ensure_packages('nfs-client', {

View File

@@ -35,6 +35,20 @@
# (optional) Specify list of share export helpers. (list value)
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# DEPRECATED PARAMETERS
#
# [*driver_handles_share_servers*]
@@ -46,14 +60,17 @@
#
define manila::backend::lvm (
$lvm_share_export_ips,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$lvm_share_export_root = $facts['os_service_default'],
$lvm_share_mirrors = $facts['os_service_default'],
$lvm_share_volume_group = $facts['os_service_default'],
$lvm_share_helpers = $facts['os_service_default'],
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$lvm_share_export_root = $facts['os_service_default'],
$lvm_share_mirrors = $facts['os_service_default'],
$lvm_share_volume_group = $facts['os_service_default'],
$lvm_share_helpers = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
# DEPRECATED PARAMETERS
$driver_handles_share_servers = undef,
$driver_handles_share_servers = undef,
) {
include manila::deps
@@ -65,14 +82,17 @@ and has no effect.')
}
manila_config {
"${name}/share_backend_name": value => $share_backend_name;
"${name}/backend_availability_zone": value => $backend_availability_zone;
"${name}/share_driver": value => $share_driver;
"${name}/driver_handles_share_servers": value => false;
"${name}/lvm_share_export_ips": value => join(any2array($lvm_share_export_ips),',');
"${name}/lvm_share_export_root": value => $lvm_share_export_root;
"${name}/lvm_share_mirrors": value => $lvm_share_mirrors;
"${name}/lvm_share_volume_group": value => $lvm_share_volume_group;
"${name}/lvm_share_helpers": value => join(any2array($lvm_share_helpers), ',');
"${name}/share_backend_name": value => $share_backend_name;
"${name}/backend_availability_zone": value => $backend_availability_zone;
"${name}/share_driver": value => $share_driver;
"${name}/driver_handles_share_servers": value => false;
"${name}/lvm_share_export_ips": value => join(any2array($lvm_share_export_ips),',');
"${name}/lvm_share_export_root": value => $lvm_share_export_root;
"${name}/lvm_share_mirrors": value => $lvm_share_mirrors;
"${name}/lvm_share_volume_group": value => $lvm_share_volume_group;
"${name}/lvm_share_helpers": value => join(any2array($lvm_share_helpers), ',');
"${name}/reserved_share_percentage": value => $reserved_share_percentage;
"${name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
}

View File

@@ -96,6 +96,20 @@
# Manila logs when the debug level is set to True.
# Defaults to $facts['os_service_default'].
#
# [*reserved_share_percentage*]
# (optional) The percentage of backend capacity reserved.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_from_snapshot_percentage*]
# (optional) The percentage of backend capacity reserved. Used for shares
# created from the snapshot.
# Defaults to: $facts['os_service_default']
#
# [*reserved_share_extend_percentage*]
# (optional) The percentage of backend capacity reserved for share extend
# operation.
# Defaults to: $facts['os_service_default']
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
@@ -115,21 +129,24 @@ define manila::backend::netapp (
String[1] $netapp_login,
String[1] $netapp_password,
String[1] $netapp_server_hostname,
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$netapp_transport_type = $facts['os_service_default'],
$netapp_storage_family = $facts['os_service_default'],
$netapp_server_port = $facts['os_service_default'],
$netapp_volume_name_template = $facts['os_service_default'],
$netapp_vserver = $facts['os_service_default'],
$netapp_vserver_name_template = $facts['os_service_default'],
$netapp_lif_name_template = $facts['os_service_default'],
$netapp_aggregate_name_search_pattern = $facts['os_service_default'],
$netapp_root_volume_aggregate = $facts['os_service_default'],
$netapp_root_volume = $facts['os_service_default'],
$netapp_port_name_search_pattern = $facts['os_service_default'],
$netapp_trace_flags = $facts['os_service_default'],
$package_ensure = 'present',
$share_backend_name = $name,
$backend_availability_zone = $facts['os_service_default'],
$netapp_transport_type = $facts['os_service_default'],
$netapp_storage_family = $facts['os_service_default'],
$netapp_server_port = $facts['os_service_default'],
$netapp_volume_name_template = $facts['os_service_default'],
$netapp_vserver = $facts['os_service_default'],
$netapp_vserver_name_template = $facts['os_service_default'],
$netapp_lif_name_template = $facts['os_service_default'],
$netapp_aggregate_name_search_pattern = $facts['os_service_default'],
$netapp_root_volume_aggregate = $facts['os_service_default'],
$netapp_root_volume = $facts['os_service_default'],
$netapp_port_name_search_pattern = $facts['os_service_default'],
$netapp_trace_flags = $facts['os_service_default'],
$reserved_share_percentage = $facts['os_service_default'],
$reserved_share_from_snapshot_percentage = $facts['os_service_default'],
$reserved_share_extend_percentage = $facts['os_service_default'],
$package_ensure = 'present',
) {
include manila::deps
@@ -138,25 +155,28 @@ define manila::backend::netapp (
$netapp_share_driver = 'manila.share.drivers.netapp.common.NetAppDriver'
manila_config {
"${share_backend_name}/share_driver": value => $netapp_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/netapp_login": value => $netapp_login;
"${share_backend_name}/netapp_password": value => $netapp_password, secret => true;
"${share_backend_name}/netapp_server_hostname": value => $netapp_server_hostname;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/netapp_transport_type": value => $netapp_transport_type;
"${share_backend_name}/netapp_storage_family": value => $netapp_storage_family;
"${share_backend_name}/netapp_server_port": value => $netapp_server_port;
"${share_backend_name}/netapp_volume_name_template": value => $netapp_volume_name_template;
"${share_backend_name}/netapp_vserver": value => $netapp_vserver;
"${share_backend_name}/netapp_vserver_name_template": value => $netapp_vserver_name_template;
"${share_backend_name}/netapp_lif_name_template": value => $netapp_lif_name_template;
"${share_backend_name}/netapp_aggregate_name_search_pattern": value => $netapp_aggregate_name_search_pattern;
"${share_backend_name}/netapp_root_volume_aggregate": value => $netapp_root_volume_aggregate;
"${share_backend_name}/netapp_root_volume": value => $netapp_root_volume;
"${share_backend_name}/netapp_port_name_search_pattern": value => $netapp_port_name_search_pattern;
"${share_backend_name}/netapp_trace_flags": value => $netapp_trace_flags;
"${share_backend_name}/share_driver": value => $netapp_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/netapp_login": value => $netapp_login;
"${share_backend_name}/netapp_password": value => $netapp_password, secret => true;
"${share_backend_name}/netapp_server_hostname": value => $netapp_server_hostname;
"${share_backend_name}/share_backend_name": value => $share_backend_name;
"${share_backend_name}/backend_availability_zone": value => $backend_availability_zone;
"${share_backend_name}/netapp_transport_type": value => $netapp_transport_type;
"${share_backend_name}/netapp_storage_family": value => $netapp_storage_family;
"${share_backend_name}/netapp_server_port": value => $netapp_server_port;
"${share_backend_name}/netapp_volume_name_template": value => $netapp_volume_name_template;
"${share_backend_name}/netapp_vserver": value => $netapp_vserver;
"${share_backend_name}/netapp_vserver_name_template": value => $netapp_vserver_name_template;
"${share_backend_name}/netapp_lif_name_template": value => $netapp_lif_name_template;
"${share_backend_name}/netapp_aggregate_name_search_pattern": value => $netapp_aggregate_name_search_pattern;
"${share_backend_name}/netapp_root_volume_aggregate": value => $netapp_root_volume_aggregate;
"${share_backend_name}/netapp_root_volume": value => $netapp_root_volume;
"${share_backend_name}/netapp_port_name_search_pattern": value => $netapp_port_name_search_pattern;
"${share_backend_name}/netapp_trace_flags": value => $netapp_trace_flags;
"${share_backend_name}/reserved_share_percentage": value => $reserved_share_percentage;
"${share_backend_name}/reserved_share_from_snapshot_percentage": value => $reserved_share_from_snapshot_percentage;
"${share_backend_name}/reserved_share_extend_percentage": value => $reserved_share_percentage;
}
ensure_packages('nfs-client', {