81 lines
2.3 KiB
Puppet
81 lines
2.3 KiB
Puppet
#
|
|
# Configure the VMware compute driver for nova.
|
|
#
|
|
# === Parameters
|
|
#
|
|
# [*host_ip*]
|
|
# The IP address of the VMware vCenter server.
|
|
#
|
|
# [*host_username*]
|
|
# The username for connection to VMware vCenter server.
|
|
#
|
|
# [*host_password*]
|
|
# The password for connection to VMware vCenter server.
|
|
#
|
|
# [*cluster_name*]
|
|
# The name of a vCenter cluster compute resource.
|
|
#
|
|
# [*api_retry_count*]
|
|
# (optional) The number of times we retry on failures,
|
|
# e.g., socket error, etc.
|
|
# Defaults to 5.
|
|
#
|
|
# [*maximum_objects*]
|
|
# (optional) The maximum number of ObjectContent data objects that should
|
|
# be returned in a single result. A positive value will cause
|
|
# the operation to suspend the retrieval when the count of
|
|
# objects reaches the specified maximum. The server may still
|
|
# limit the count to something less than the configured value.
|
|
# Any remaining objects may be retrieved with additional requests.
|
|
# Defaults to 100.
|
|
#
|
|
# [*task_poll_interval*]
|
|
# (optional) The interval in seconds used for polling of remote tasks.
|
|
# Defaults to 5.0
|
|
#
|
|
# [*use_linked_clone*]
|
|
# (optional) Whether to use linked clone strategy while creating VM's.
|
|
# Defaults to true.
|
|
#
|
|
# [*wsdl_location*]
|
|
# (optional) VIM Service WSDL Location e.g
|
|
# http://<server>/vimService.wsdl. Optional over-ride to
|
|
# default location for bug work-arounds.
|
|
# Defaults to None.
|
|
#
|
|
|
|
class nova::compute::vmware(
|
|
$host_ip,
|
|
$host_username,
|
|
$host_password,
|
|
$cluster_name,
|
|
$api_retry_count=5,
|
|
$maximum_objects=100,
|
|
$task_poll_interval=5.0,
|
|
$use_linked_clone=true,
|
|
$wsdl_location=undef
|
|
) {
|
|
|
|
nova_config {
|
|
'DEFAULT/compute_driver': value => 'vmwareapi.VMwareVCDriver';
|
|
'VMWARE/host_ip': value => $host_ip;
|
|
'VMWARE/host_username': value => $host_username;
|
|
'VMWARE/host_password': value => $host_password;
|
|
'VMWARE/cluster_name': value => $cluster_name;
|
|
'VMWARE/api_retry_count' : value => $api_retry_count;
|
|
'VMWARE/maximum_objects' : value => $maximum_objects;
|
|
'VMWARE/task_poll_interval' : value => $task_poll_interval;
|
|
'VMWARE/use_linked_clone': value => $use_linked_clone;
|
|
}
|
|
|
|
if $wsdl_location {
|
|
nova_config {
|
|
'VMWARE/wsdl_location' : value => $wsdl_location;
|
|
}
|
|
}
|
|
|
|
package { 'python-suds':
|
|
ensure => present
|
|
}
|
|
}
|