From 33ba430aab834092c3da029bf674f7ce9455050e Mon Sep 17 00:00:00 2001 From: Artem Savinov Date: Wed, 30 Sep 2015 19:17:40 +0300 Subject: [PATCH] Fix rebase Change-Id: Ib857acc206b4fb0799d591b816ec6277fe032aa5 --- deployment_scripts/clean_overrides.sh | 7 - .../puppet/manifests/disable-nova-network.pp | 3 - .../puppet/manifests/hiera-override.pp | 1 + .../puppet/manifests/neutron-install.pp | 3 - .../puppet/manifests/nova-config.pp | 3 - .../files/openstack-network-controller.pp | 2 +- .../nsxv/manifests/disable_nova_network.pp | 50 ------- .../modules/nsxv/manifests/neutron_install.pp | 132 ------------------ .../modules/nsxv/manifests/nova_config.pp | 118 ---------------- environment_config.yaml | 2 +- 10 files changed, 3 insertions(+), 318 deletions(-) delete mode 100755 deployment_scripts/clean_overrides.sh delete mode 100644 deployment_scripts/puppet/manifests/disable-nova-network.pp delete mode 100644 deployment_scripts/puppet/manifests/neutron-install.pp delete mode 100644 deployment_scripts/puppet/manifests/nova-config.pp delete mode 100644 deployment_scripts/puppet/modules/nsxv/manifests/disable_nova_network.pp delete mode 100644 deployment_scripts/puppet/modules/nsxv/manifests/neutron_install.pp delete mode 100644 deployment_scripts/puppet/modules/nsxv/manifests/nova_config.pp diff --git a/deployment_scripts/clean_overrides.sh b/deployment_scripts/clean_overrides.sh deleted file mode 100755 index 9c121b4..0000000 --- a/deployment_scripts/clean_overrides.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -override_file='/etc/hiera/override/plugins_nsxv.yaml' -symlink_file='/etc/hiera/override/plugins.yaml' - -if [ -L "$symlink_file" -a "$(readlink -f $symlink_file)" == "$override_file" ]; then - rm -f "$symlink_file" "$override_file" -fi diff --git a/deployment_scripts/puppet/manifests/disable-nova-network.pp b/deployment_scripts/puppet/manifests/disable-nova-network.pp deleted file mode 100644 index 7814f8e..0000000 --- a/deployment_scripts/puppet/manifests/disable-nova-network.pp +++ /dev/null @@ -1,3 +0,0 @@ -notice('fuel-plugin-nsxv: disable-nova-network.pp') - -class { '::nsxv::disable_nova_network': } diff --git a/deployment_scripts/puppet/manifests/hiera-override.pp b/deployment_scripts/puppet/manifests/hiera-override.pp index cad19bf..dfd857a 100644 --- a/deployment_scripts/puppet/manifests/hiera-override.pp +++ b/deployment_scripts/puppet/manifests/hiera-override.pp @@ -1,5 +1,6 @@ notice('fuel-plugin-nsxv: hiera-override.pp') +# Values are changed by pre_build_hook class { '::nsxv::hiera_override': plugin_name => "NAME", } diff --git a/deployment_scripts/puppet/manifests/neutron-install.pp b/deployment_scripts/puppet/manifests/neutron-install.pp deleted file mode 100644 index 494e7f2..0000000 --- a/deployment_scripts/puppet/manifests/neutron-install.pp +++ /dev/null @@ -1,3 +0,0 @@ -notice('fuel-plugin-nsxv: neutron-install.pp') - -class { 'nsxv::neutron_install': } diff --git a/deployment_scripts/puppet/manifests/nova-config.pp b/deployment_scripts/puppet/manifests/nova-config.pp deleted file mode 100644 index bd7d3b2..0000000 --- a/deployment_scripts/puppet/manifests/nova-config.pp +++ /dev/null @@ -1,3 +0,0 @@ -notice('fuel-plugin-nsxv: nova-config.pp') - -class { 'nsxv::nova_config': } diff --git a/deployment_scripts/puppet/modules/nsxv/files/openstack-network-controller.pp b/deployment_scripts/puppet/modules/nsxv/files/openstack-network-controller.pp index e69c3f6..c9e31d3 100644 --- a/deployment_scripts/puppet/modules/nsxv/files/openstack-network-controller.pp +++ b/deployment_scripts/puppet/modules/nsxv/files/openstack-network-controller.pp @@ -1,7 +1,7 @@ notice('MODULAR: openstack-network-controller.pp(fuel-plugin-nsxv patch)') $core_plugin = 'vmware_nsx.neutron.plugins.vmware.plugin.NsxVPlugin' -$policy_file = '/etc/neutron/policy.json' +$policy_file = '/etc/neutron/policy.d/nsxv.json' $neutron_config = hiera_hash('quantum_settings') $rabbit_hash = hiera_hash('rabbit_hash', {}) diff --git a/deployment_scripts/puppet/modules/nsxv/manifests/disable_nova_network.pp b/deployment_scripts/puppet/modules/nsxv/manifests/disable_nova_network.pp deleted file mode 100644 index 70b08ed..0000000 --- a/deployment_scripts/puppet/modules/nsxv/manifests/disable_nova_network.pp +++ /dev/null @@ -1,50 +0,0 @@ -class nsxv::disable_nova_network ( - $nova_network_service_name = 'p_vcenter_nova_network', - $nova_network_config_ha = '/etc/nova/nova-network.d/nova-network-ha.conf', -) { - include ::nova::params - - $access_hash = hiera_hash('access',{}) - $controller_node = hiera('service_endpoint') - $os_username = $access_hash['user'] - $os_password = $access_hash['password'] - $os_auth_url = "http://${controller_node}:5000/v2.0/" - - cs_resource { "${nova_network_service_name}": - ensure => absent, - notify => Exec["workaround_delete_${nova_network_service_name}"] - } - - exec { "workaround_delete_${nova_network_service_name}": - path => '/usr/bin:/usr/sbin:/bin', - command => "pcs resource delete ${nova_network_service_name}", - refreshonly => true, - tries => 3, - try_sleep => 10, - } - package { 'nova-network': - name => $::nova::params::network_package_name, - ensure => purged, - require => Cs_resource["${nova_network_service_name}"], - } - file { "${nova_network_config_ha}": - ensure => absent, - } - - exec { 'delete-nova-network': - path => '/usr/bin:/usr/sbin:/bin', - command => 'nova service-list --binary nova-network|awk \'/nova-network/ {print $2}\'|while read id; do nova service-delete $id; done', - onlyif => 'nova service-list --binary nova-network|grep \'nova-network\' 1>/dev/null', - provider => shell, - environment => [ - 'OS_TENANT_NAME=services', - "OS_USERNAME=${os_username}", - "OS_PASSWORD=${os_password}", - "OS_AUTH_URL=${os_auth_url}", - 'OS_ENDPOINT_TYPE=internalURL' - ], - tries => 3, - try_sleep => 10, - require => Cs_resource["${nova_network_service_name}"], - } -} diff --git a/deployment_scripts/puppet/modules/nsxv/manifests/neutron_install.pp b/deployment_scripts/puppet/modules/nsxv/manifests/neutron_install.pp deleted file mode 100644 index 3338317..0000000 --- a/deployment_scripts/puppet/modules/nsxv/manifests/neutron_install.pp +++ /dev/null @@ -1,132 +0,0 @@ -class nsxv::neutron_install( - $core_plugin = 'vmware_nsx.neutron.plugins.vmware.plugin.NsxVPlugin', - $policy_file = '/etc/neutron/policy.json', -) { - - $neutron_config = hiera_hash('quantum_settings') - $rabbit_hash = hiera_hash('rabbit_hash', {}) - $ceilometer_hash = hiera('ceilometer',{}) - $nova_hash = hiera_hash('nova', {}) - $network_scheme = hiera('network_scheme', {}) - - prepare_network_config($network_scheme) - - # Neutron DB settings - $neutron_db_password = $neutron_config['database']['passwd'] - $neutron_db_user = pick($neutron_config['database']['user'], 'neutron') - $neutron_db_name = pick($neutron_config['database']['name'], 'neutron') - $neutron_db_host = pick($neutron_config['database']['host'], hiera('database_vip')) - $neutron_db_uri = "mysql://${neutron_db_user}:${neutron_db_password}@${neutron_db_host}/${neutron_db_name}?&read_timeout=60" - - # Neutron Keystone settings - $neutron_user_password = $neutron_config['keystone']['admin_password'] - $keystone_user = pick($neutron_config['keystone']['admin_user'], 'neutron') - $keystone_tenant = pick($neutron_config['keystone']['admin_tenant'], 'services') - - # base - $neutron_local_address_for_bind = get_network_role_property('neutron/api', 'ipaddr') # prepare_network_config need - $region = hiera('region', 'RegionOne') - $service_workers = min(max($::processorcount, 2), 16) - $management_vip = hiera('management_vip') - - # endpoints - $service_endpoint = hiera('service_endpoint') - $nova_endpoint = hiera('nova_endpoint', $management_vip) - $neutron_endpoint = hiera('neutron_endpoint', $management_vip) - - # logs - $debug = hiera('debug', true) - $use_syslog = hiera('use_syslog', true) - $use_stderr = hiera('use_stderr', false) - $syslog_log_facility_neutron = hiera('syslog_log_facility_neutron', 'LOG_LOCAL4') - - # Queue settings - $queue_provider = hiera('queue_provider', 'rabbitmq') - $amqp_hosts = split(hiera('amqp_hosts', ''), ',') - - class { 'openstack::network': - network_provider => 'neutron', - agents => [], - ha_agents => false, - verbose => true, - debug => $debug, - use_syslog => $use_syslog, - use_stderr => $use_stderr, - syslog_log_facility => $syslog_log_facility_neutron, - - neutron_server => true, - neutron_server_enable => true, - neutron_db_uri => $neutron_db_uri, - nova_neutron => true, - base_mac => undef, - core_plugin => $core_plugin, - service_plugins => [], - net_mtu => undef, - network_device_mtu => undef, - bind_host => $neutron_local_address_for_bind, - dvr => false, - l2_population => false, - service_workers => $service_workers, - - #ovs - mechanism_drivers => undef, - local_ip => undef, - bridge_mappings => undef, - network_vlan_ranges => undef, - enable_tunneling => undef, - tunnel_id_ranges => undef, - vni_ranges => undef, - tunnel_types => undef, - tenant_network_types => undef, - - floating_bridge => undef, - - #Queue settings - queue_provider => $queue_provider, - amqp_hosts => $amqp_hosts, - - amqp_user => $rabbit_hash['user'], - amqp_password => $rabbit_hash['password'], - - # keystone - admin_password => $neutron_user_password, - auth_url => "http://${service_endpoint}:35357/v2.0", - identity_uri => "http://${service_endpoint}:35357", - neutron_url => "http://${neutron_endpoint}:9696", - admin_tenant_name => $keystone_tenant, - admin_username => $keystone_user, - region => $region, - - # Ceilometer notifications - ceilometer => $ceilometer_hash['enabled'], - - #metadata - shared_secret => undef, - metadata_ip => undef, - isolated_metadata => undef, - - #nova settings - private_interface => undef, - public_interface => undef, - fixed_range => undef, - floating_range => undef, - network_manager => undef, - network_config => undef, - create_networks => undef, - num_networks => undef, - network_size => undef, - nameservers => undef, - enable_nova_net => undef, - nova_admin_username => $nova_hash['user'], - nova_admin_tenant_name => $nova_hash['tenant'], - nova_admin_password => $nova_hash['user_password'], - nova_url => "http://${nova_endpoint}:8774/v2", - } - file { "${policy_file}": - ensure => file, - source => "puppet:///modules/${module_name}/policy.json", - mode => 644, - require => Class['openstack::network'], - replace => true, - } -} diff --git a/deployment_scripts/puppet/modules/nsxv/manifests/nova_config.pp b/deployment_scripts/puppet/modules/nsxv/manifests/nova_config.pp deleted file mode 100644 index b092da2..0000000 --- a/deployment_scripts/puppet/modules/nsxv/manifests/nova_config.pp +++ /dev/null @@ -1,118 +0,0 @@ -class nsxv::nova_config ( - $metadata_ha_conf = '/etc/haproxy/conf.d/060-nova-metadata-api.cfg', - $nova_conf = '/etc/nova/nova.conf', -) { - include ::nova::params - - $roles = hiera('roles') - - $vcenter_hash = hiera('vcenter_hash') - $vcenter_settings = $vcenter_hash['computes'] - - $neutron_config = hiera_hash('quantum_settings') - $neutron_metadata_proxy_secret = $neutron_config['metadata']['metadata_proxy_shared_secret'] - $nova_parameters = { - 'neutron/service_metadata_proxy' => { value => 'True' }, - 'neutron/metadata_proxy_shared_secret' => { value => "${neutron_metadata_proxy_secret}" } - } - - if 'primary-controller' in $roles or 'controller' in $roles { - include ::openstack::ha::haproxy_restart - - $public_vip = hiera('public_vip') - - $api_service_name = $::nova::params::api_service_name - $cert_service_name = $::nova::params::cert_service_name - $conductor_service_name = $::nova::params::conductor_service_name - $scheduler_service_name = $::nova::params::scheduler_service_name - - file_line { 'metadata_public_listen': - path => $metadata_ha_conf, - after => 'listen nova-metadata-api', - line => " bind ${$public_vip}:8775", - notify => Exec['haproxy-restart'], - } - service { [$api_service_name,$cert_service_name,$conductor_service_name,$scheduler_service_name]: - ensure => 'running', - } - - Nova_config<| |> ~> Service[$api_service_name,$cert_service_name,$conductor_service_name,$scheduler_service_name] - Nsxv::Delete_line<| |> ~> Service[$api_service_name,$cert_service_name,$conductor_service_name,$scheduler_service_name] - } elsif 'compute-vmware' in $roles { - $management_vip = hiera('management_vip') - $service_endpoint = hiera('service_endpoint') - $neutron_endpoint = hiera('neutron_endpoint', $management_vip) - $neutron_admin_username = pick($neutron_config['keystone']['admin_user'], 'neutron') - $neutron_admin_password = $neutron_config['keystone']['admin_password'] - $neutron_admin_tenant_name = pick($neutron_config['keystone']['admin_tenant'], 'services') - $neutron_admin_auth_url = "http://${service_endpoint}:35357/v2.0" - $neutron_url = "http://${neutron_endpoint}:9696" - $region = hiera('region', 'RegionOne') - - class {'nova::network::neutron': - neutron_admin_password => $neutron_admin_password, - neutron_admin_tenant_name => $neutron_admin_tenant_name, - neutron_region_name => $region, - neutron_admin_username => $neutron_admin_username, - neutron_admin_auth_url => $neutron_admin_auth_url, - neutron_url => $neutron_url, - neutron_ovs_bridge => '', - } - Nsxv::Delete_line<| |> { require => Class['nova::network::neutron'] } - } - - nsxv::delete_line { ['network_manager','public_interface','force_snat_range','flat_network_bridge','flat_injected','flat_interface']: - path => $nova_conf, - } - - create_resources(nova_config, $nova_parameters) - create_resources(nsxv::define_vmware_compute, parse_vcenter_settings($vcenter_settings)) - Nova_config<| |> ~> Service<| tag == 'vcenter_compute' |> - Nsxv::Delete_line<| |> ~> Service<| tag == 'vcenter_compute' |> -} - -define nsxv::delete_line ( - $line = $name, - $path = undef, -) { - $file_name = basename($path) - exec { "delete_${line}_from_${file_name}": - path => '/usr/bin:/usr/sbin:/bin', - command => "sed -ri '/^\s*${line}.*$/d' $path", - onlyif => "grep -E '^\s*${line}.*$' $path 1>/dev/null", - provider => shell, - tries => 3, - try_sleep => 10, - } -} - -define nsxv::define_vmware_compute ( - $availability_zone_name, - $vc_cluster, - $vc_host, - $vc_user, - $vc_password, - $service_name, - $target_node, - $datastore_regex = undef, -){ - $uid = hiera('uid') - $current_node = "node-$uid" - $roles = hiera('roles') - - if ($target_node == 'controllers' and ('primary-controller' in $roles or 'controller' in $roles)) { - service { "p_nova_compute_vmware_${availability_zone_name}-${service_name}": - ensure => running, - enable => true, - provider => 'pacemaker', - tag => 'vcenter_compute', - } - } elsif ($target_node == $current_node and 'compute-vmware' in $roles ) { - service { 'nova-compute': - ensure => running, - name => $::nova::params::compute_service_name, - enable => true, - tag => 'vcenter_compute', - } - } -} diff --git a/environment_config.yaml b/environment_config.yaml index f6daee5..dbf8bf9 100644 --- a/environment_config.yaml +++ b/environment_config.yaml @@ -2,7 +2,7 @@ attributes: # Show only if vcenter used metadata: restrictions: - - condition: 'settings:common.use_vcenter.value == false' + - condition: "settings:common.use_vcenter.value == false or cluster:net_provider != 'neutron'" action: 'hide' nsxv_manager_host: value: ''