diff options
-rw-r--r-- | docker/compute-post.yaml | 8 | ||||
-rw-r--r-- | environments/net-bond-with-vlans-no-external.yaml | 2 | ||||
-rw-r--r-- | environments/net-single-nic-with-vlans-no-external.yaml | 2 | ||||
-rw-r--r-- | environments/network-isolation.yaml | 2 | ||||
-rw-r--r-- | extraconfig/tasks/major_upgrade_pacemaker_init.yaml | 3 | ||||
-rw-r--r-- | extraconfig/tasks/noop.yaml | 26 | ||||
-rwxr-xr-x | extraconfig/tasks/pacemaker_common_functions.sh | 3 | ||||
-rw-r--r-- | network/noop.yaml | 3 | ||||
-rw-r--r-- | overcloud-resource-registry-puppet.yaml | 19 | ||||
-rw-r--r-- | overcloud.yaml | 6 | ||||
-rw-r--r-- | puppet/hieradata/controller.yaml | 1 | ||||
-rw-r--r-- | puppet/manifests/overcloud_controller_pacemaker.pp | 29 |
12 files changed, 47 insertions, 57 deletions
diff --git a/docker/compute-post.yaml b/docker/compute-post.yaml index 4532549f..09d0e9fd 100644 --- a/docker/compute-post.yaml +++ b/docker/compute-post.yaml @@ -28,7 +28,7 @@ parameters: default: "/etc/libvirt/libvirtd.conf" NovaConfig: type: string - default: "/etc/nova/nova.conf" + default: "/etc/nova/nova.conf,/etc/nova/rootwrap.conf" NeutronOpenvswitchAgentConfig: type: string default: "/etc/neutron/neutron.conf,/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini" @@ -259,6 +259,8 @@ resources: volumes: - /run:/run - /lib/modules:/lib/modules:ro + - /dev:/dev + - /lib/udev:/lib/udev - /sys/fs/cgroup:/sys/fs/cgroup - /var/lib/etc-data/json-config/nova-libvirt.json:/var/lib/kolla/config_files/config.json - /var/lib/etc-data/libvirt/libvirtd.conf:/var/lib/kolla/config_files/libvirtd.conf @@ -316,8 +318,12 @@ resources: volumes: - /run:/run - /lib/modules:/lib/modules:ro + - /dev:/dev + - /lib/udev:/lib/udev + - /etc/iscsi:/etc/iscsi - /var/lib/etc-data/json-config/nova-compute.json:/var/lib/kolla/config_files/config.json - /var/lib/etc-data/nova/nova.conf:/var/lib/kolla/config_files/nova.conf:ro + - /var/lib/etc-data/nova/rootwrap.conf:/var/lib/kolla/config_files/rootwrap.conf:ro environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS volumes_from: diff --git a/environments/net-bond-with-vlans-no-external.yaml b/environments/net-bond-with-vlans-no-external.yaml index 0da119d9..75959a0b 100644 --- a/environments/net-bond-with-vlans-no-external.yaml +++ b/environments/net-bond-with-vlans-no-external.yaml @@ -12,7 +12,7 @@ resource_registry: # Set external ports to noop - OS::TripleO::Network::External: ../network/noop.yaml + OS::TripleO::Network::External: OS::Heat::None OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/noop.yaml OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/cinder-storage.yaml diff --git a/environments/net-single-nic-with-vlans-no-external.yaml b/environments/net-single-nic-with-vlans-no-external.yaml index a173df4e..c7594b32 100644 --- a/environments/net-single-nic-with-vlans-no-external.yaml +++ b/environments/net-single-nic-with-vlans-no-external.yaml @@ -10,7 +10,7 @@ resource_registry: # Set external ports to noop - OS::TripleO::Network::External: ../network/noop.yaml + OS::TripleO::Network::External: OS::Heat::None OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/noop.yaml # Configure other ports as normal diff --git a/environments/network-isolation.yaml b/environments/network-isolation.yaml index 87fc22f5..c0420c5c 100644 --- a/environments/network-isolation.yaml +++ b/environments/network-isolation.yaml @@ -10,7 +10,7 @@ resource_registry: OS::TripleO::Network::Storage: ../network/storage.yaml OS::TripleO::Network::Tenant: ../network/tenant.yaml # Management network is optional and disabled by default - OS::TripleO::Network::Management: ../network/noop.yaml + OS::TripleO::Network::Management: OS::Heat::None # Port assignments for the VIPs OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external.yaml diff --git a/extraconfig/tasks/major_upgrade_pacemaker_init.yaml b/extraconfig/tasks/major_upgrade_pacemaker_init.yaml index f662bc3d..623549a0 100644 --- a/extraconfig/tasks/major_upgrade_pacemaker_init.yaml +++ b/extraconfig/tasks/major_upgrade_pacemaker_init.yaml @@ -30,6 +30,8 @@ parameters: resources: + # For the UpgradeInit also rename /etc/resolv.conf.save for +bug/1567004 + UpgradeInitConfig: type: OS::Heat::SoftwareConfig properties: @@ -38,6 +40,7 @@ resources: list_join: - '' - - "#!/bin/bash\n\n" + - "if [[ -f /etc/resolv.conf.save ]] ; then rm /etc/resolv.conf.save; fi\n\n" - get_param: UpgradeInitCommand UpgradeInitControllerDeployment: diff --git a/extraconfig/tasks/noop.yaml b/extraconfig/tasks/noop.yaml deleted file mode 100644 index dbb863be..00000000 --- a/extraconfig/tasks/noop.yaml +++ /dev/null @@ -1,26 +0,0 @@ -heat_template_version: 2014-10-16 -description: 'No-op task' - -parameters: - servers: - type: json - default: [] - controller_servers: - type: json - default: [] - compute_servers: - type: json - default: [] - blockstorage_servers: - type: json - default: [] - objectstorage_servers: - type: json - default: [] - cephstorage_servers: - type: json - default: [] - input_values: - type: json - default: {} - description: input values for the software deployments diff --git a/extraconfig/tasks/pacemaker_common_functions.sh b/extraconfig/tasks/pacemaker_common_functions.sh index 0808763e..7d794c97 100755 --- a/extraconfig/tasks/pacemaker_common_functions.sh +++ b/extraconfig/tasks/pacemaker_common_functions.sh @@ -19,8 +19,9 @@ function check_resource { match_for_incomplete='Stopped' fi + nodes_local=$(pcs status | grep ^Online | sed 's/.*\[ \(.*\) \]/\1/g' | sed 's/ /\|/g') if timeout -k 10 $timeout crm_resource --wait; then - node_states=$(pcs status --full | grep "$service" | grep -v Clone) + node_states=$(pcs status --full | grep "$service" | grep -v Clone | { egrep "$nodes_local" || true; } ) if echo "$node_states" | grep -q "$match_for_incomplete"; then echo_error "ERROR: cluster finished transition but $service was not in $state state, exiting." exit 1 diff --git a/network/noop.yaml b/network/noop.yaml deleted file mode 100644 index 0963d2ce..00000000 --- a/network/noop.yaml +++ /dev/null @@ -1,3 +0,0 @@ -heat_template_version: 2015-04-30 - -description: A stack which creates no network(s). diff --git a/overcloud-resource-registry-puppet.yaml b/overcloud-resource-registry-puppet.yaml index bc3b7241..0dad1153 100644 --- a/overcloud-resource-registry-puppet.yaml +++ b/overcloud-resource-registry-puppet.yaml @@ -23,10 +23,10 @@ resource_registry: OS::TripleO::BootstrapNode::SoftwareConfig: puppet/bootstrap-config.yaml # Tasks (for internal TripleO usage) - OS::TripleO::Tasks::UpdateWorkflow: extraconfig/tasks/noop.yaml + OS::TripleO::Tasks::UpdateWorkflow: OS::Heat::None OS::TripleO::Tasks::PackageUpdate: extraconfig/tasks/yum_update.yaml - OS::TripleO::Tasks::ControllerPrePuppet: extraconfig/tasks/noop.yaml - OS::TripleO::Tasks::ControllerPostPuppet: extraconfig/tasks/noop.yaml + OS::TripleO::Tasks::ControllerPrePuppet: OS::Heat::None + OS::TripleO::Tasks::ControllerPostPuppet: OS::Heat::None # This creates the "heat-admin" user for all OS images by default # To disable, replace with firstboot/userdata_default.yaml @@ -56,13 +56,12 @@ resource_registry: OS::TripleO::Network: network/networks.yaml OS::TripleO::VipConfig: puppet/vip-config.yaml - - OS::TripleO::Network::External: network/noop.yaml - OS::TripleO::Network::InternalApi: network/noop.yaml - OS::TripleO::Network::StorageMgmt: network/noop.yaml - OS::TripleO::Network::Storage: network/noop.yaml - OS::TripleO::Network::Tenant: network/noop.yaml - OS::TripleO::Network::Management: network/noop.yaml + OS::TripleO::Network::External: OS::Heat::None + OS::TripleO::Network::InternalApi: OS::Heat::None + OS::TripleO::Network::StorageMgmt: OS::Heat::None + OS::TripleO::Network::Storage: OS::Heat::None + OS::TripleO::Network::Tenant: OS::Heat::None + OS::TripleO::Network::Management: OS::Heat::None OS::TripleO::Network::Ports::NetVipMap: network/ports/net_ip_map.yaml OS::TripleO::Network::Ports::NetIpMap: network/ports/net_ip_map.yaml diff --git a/overcloud.yaml b/overcloud.yaml index cd724b3e..30c60c58 100644 --- a/overcloud.yaml +++ b/overcloud.yaml @@ -1708,6 +1708,12 @@ outputs: SwiftInternalVip: description: VIP for Swift Proxy internal endpoint value: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, SwiftProxyNetwork]}]} + EndpointMap: + description: | + Mapping of the resources with the needed info for their endpoints. + This includes the protocol used, the IP, port and also a full + representation of the URI. + value: {get_attr: [EndpointMap, endpoint_map]} HostsEntry: description: | The content that should be appended to your /etc/hosts if you want to get diff --git a/puppet/hieradata/controller.yaml b/puppet/hieradata/controller.yaml index 5e87793a..8766263a 100644 --- a/puppet/hieradata/controller.yaml +++ b/puppet/hieradata/controller.yaml @@ -122,6 +122,7 @@ pacemaker::corosync::cluster_name: 'tripleo_cluster' pacemaker::corosync::manage_fw: false pacemaker::resource_defaults::defaults: resource-stickiness: { value: INFINITY } +corosync_token_timeout: 10000 # horizon horizon::cache_backend: django.core.cache.backends.memcached.MemcachedCache diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp index fd12c342..5a5028e2 100644 --- a/puppet/manifests/overcloud_controller_pacemaker.pp +++ b/puppet/manifests/overcloud_controller_pacemaker.pp @@ -82,9 +82,9 @@ if hiera('step') >= 1 { $pacemaker_cluster_members = downcase(regsubst(hiera('controller_node_names'), ',', ' ', 'G')) $corosync_ipv6 = str2bool(hiera('corosync_ipv6', false)) if $corosync_ipv6 { - $cluster_setup_extras = { '--ipv6' => '' } + $cluster_setup_extras = { '--token' => hiera('corosync_token_timeout', 1000), '--ipv6' => '' } } else { - $cluster_setup_extras = {} + $cluster_setup_extras = { '--token' => hiera('corosync_token_timeout', 1000) } } class { '::pacemaker': hacluster_pwd => hiera('hacluster_pwd'), @@ -185,8 +185,10 @@ if hiera('step') >= 1 { 'bind-address' => $::hostname, 'max_connections' => hiera('mysql_max_connections'), 'open_files_limit' => '-1', + 'wsrep_on' => 'ON', 'wsrep_provider' => '/usr/lib64/galera/libgalera_smm.so', 'wsrep_cluster_name' => 'galera_cluster', + 'wsrep_cluster_address' => "gcomm://${galera_nodes}", 'wsrep_slave_threads' => '1', 'wsrep_certify_nonPK' => '1', 'wsrep_max_ws_rows' => '131072', @@ -652,17 +654,6 @@ if hiera('step') >= 4 { $http_store = ['glance.store.http.Store'] $glance_store = concat($http_store, $backend_store) - if $glance_backend == 'file' and hiera('glance_file_pcmk_manage', false) { - $secontext = 'context="system_u:object_r:glance_var_lib_t:s0"' - pacemaker::resource::filesystem { 'glance-fs': - device => hiera('glance_file_pcmk_device'), - directory => hiera('glance_file_pcmk_directory'), - fstype => hiera('glance_file_pcmk_fstype'), - fsoptions => join([$secontext, hiera('glance_file_pcmk_options', '')],','), - clone_params => '', - } - } - # TODO: notifications, scrubber, etc. include ::glance include ::glance::config @@ -1338,6 +1329,18 @@ if hiera('step') >= 5 { } # Glance + if $glance_backend == 'file' and hiera('glance_file_pcmk_manage', false) { + $secontext = 'context="system_u:object_r:glance_var_lib_t:s0"' + pacemaker::resource::filesystem { 'glance-fs': + device => hiera('glance_file_pcmk_device'), + directory => hiera('glance_file_pcmk_directory'), + fstype => hiera('glance_file_pcmk_fstype'), + fsoptions => join([$secontext, hiera('glance_file_pcmk_options', '')],','), + verify_on_create => true, + clone_params => '', + } + } + pacemaker::resource::service { $::glance::params::registry_service_name : clone_params => 'interleave=true', require => Pacemaker::Resource::Ocf['openstack-core'], |