0f6abf96c3
'compute-vmware' deployment task deploys nova-compute (VCDriver) on node that got assigned 'compute-vmware' role: - it installs nova-compute package - prepares /etc/nova/nova-compute.conf file - launches nova-compute service It happens only if current node name (e.g. node-3) matches 'target_node' attribute, it means that particuliar vSphere cluster was mapped to current 'compute-vmware' node. Change the way how nova-compute gets deployed on controller nodes (vmware/manifests/compute/ha.pp): nova-compute deploys on controllers only if 'target_node' attribute in contains 'controllers' value. Diminish technical debt: - remove references to 'common.libvirt_type.value' - remove 'compute_driver' from manifests parameter list, it is inlined into configuration templates - Remove useless vmware_index() invocation Implements: blueprint compute-vmware-role DocImpact: document new role in User Guide (VMware integration notes), update screenshots with VMware tab Change-Id: I42ed40d86c5d43289fc210d426be523da545d268
63 lines
2.2 KiB
Puppet
63 lines
2.2 KiB
Puppet
# Copyright 2014 Mirantis, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
# This is the main VMWare integration class
|
|
# It should check the variables and basing on them call needed
|
|
# subclasses in order to setup VMWare integration with OpenStack
|
|
|
|
# Variables:
|
|
# vcenter_user - contents user name which should be used for configuring
|
|
# integration with vCenter
|
|
# vcenter_password - vCenter user password
|
|
# vcenter_host_ip - contents IP address of the vCenter host
|
|
# vcenter_cluster - contents vCenter cluster name
|
|
# vcenter_datastore_regex - the datastore_regex setting specifies the data stores to use with Compute
|
|
# vlan_interface - interface which is used on ESXi hosts when nova-network uses VlanManager
|
|
# use_quantum - shows if neutron enabled
|
|
|
|
class vmware (
|
|
$vcenter_settings = undef,
|
|
$vcenter_user = 'user',
|
|
$vcenter_password = 'password',
|
|
$vcenter_host_ip = '10.10.10.10',
|
|
$vcenter_cluster = 'cluster',
|
|
$vlan_interface = undef,
|
|
$use_quantum = false,
|
|
$vnc_address = '0.0.0.0',
|
|
$ceilometer = false,
|
|
$debug = false,
|
|
)
|
|
{
|
|
class { 'vmware::controller':
|
|
vcenter_settings => $vcenter_settings,
|
|
vcenter_user => $vcenter_user,
|
|
vcenter_password => $vcenter_password,
|
|
vcenter_host_ip => $vcenter_host_ip,
|
|
vlan_interface => $vlan_interface,
|
|
use_quantum => $use_quantum,
|
|
vnc_address => $vnc_address,
|
|
}
|
|
|
|
if $ceilometer {
|
|
class { 'vmware::ceilometer':
|
|
vcenter_settings => $vcenter_settings,
|
|
vcenter_user => $vcenter_user,
|
|
vcenter_password => $vcenter_password,
|
|
vcenter_host_ip => $vcenter_host_ip,
|
|
vcenter_cluster => $vcenter_cluster,
|
|
debug => $debug,
|
|
}
|
|
}
|
|
}
|