From 57573b77a9ce5a3a465318f4b60d8b8b24264ff1 Mon Sep 17 00:00:00 2001 From: Giulio Fidente Date: Fri, 3 Jul 2015 10:53:53 +0200 Subject: [PATCH] Add services to ServiceNetMap to select hostnames resolution network The *HostnameResolveNetwork services define the network against which the hostnames in /etc/hosts should be resolved, defaults to 'internal_api' for all except CephStorage for which it uses 'storage' as they do not have connectivity to 'internal_api'. Closes-Bug: 1471179 Change-Id: Ia8971f8a63016966236e7975ac2d97921a314255 --- overcloud-without-mergepy.yaml | 5 +++++ puppet/ceph-storage-puppet.yaml | 9 +++++++-- puppet/cinder-storage-puppet.yaml | 2 +- puppet/compute-puppet.yaml | 3 +-- puppet/controller-puppet.yaml | 2 +- puppet/swift-storage-puppet.yaml | 3 +-- 6 files changed, 16 insertions(+), 8 deletions(-) diff --git a/overcloud-without-mergepy.yaml b/overcloud-without-mergepy.yaml index 14e2ac243b..4ad571451a 100644 --- a/overcloud-without-mergepy.yaml +++ b/overcloud-without-mergepy.yaml @@ -544,6 +544,11 @@ parameters: MysqlNetwork: internal_api CephClusterNetwork: storage_mgmt CephPublicNetwork: storage + ControllerHostnameResolveNetwork: internal_api + ComputeHostnameResolveNetwork: internal_api + BlockStorageHostnameResolveNetwork: internal_api + ObjectStorageHostnameResolveNetwork: internal_api + CephStorageHostnameResolveNetwork: storage description: Mapping of service_name -> network name. Typically set via parameter_defaults in the resource registry. type: json diff --git a/puppet/ceph-storage-puppet.yaml b/puppet/ceph-storage-puppet.yaml index 245d8ebb2d..2d0894197e 100644 --- a/puppet/ceph-storage-puppet.yaml +++ b/puppet/ceph-storage-puppet.yaml @@ -76,6 +76,12 @@ resources: StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]} StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]} + NetIpMap: + type: OS::TripleO::Network::Ports::NetIpMap + properties: + StorageIp: {get_attr: [StoragePort, ip_address]} + StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]} + NetIpSubnetMap: type: OS::TripleO::Network::Ports::NetIpMap properties: @@ -145,7 +151,7 @@ outputs: str_replace: template: "IP HOST.localdomain HOST" params: - IP: {get_attr: [CephStorage, networks, ctlplane, 0]} + IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CephStorageHostnameResolveNetwork]}]} HOST: {get_attr: [CephStorage, name]} nova_server_resource: description: Heat resource handle for the ceph storage server @@ -160,4 +166,3 @@ outputs: config_identifier: description: identifier which changes if the node configuration may need re-applying value: {get_attr: [CephStorageDeployment, deploy_stdout]} - diff --git a/puppet/cinder-storage-puppet.yaml b/puppet/cinder-storage-puppet.yaml index cc8d17c47d..94a0a5c498 100644 --- a/puppet/cinder-storage-puppet.yaml +++ b/puppet/cinder-storage-puppet.yaml @@ -280,7 +280,7 @@ outputs: str_replace: template: "IP HOST.localdomain HOST" params: - IP: {get_attr: [BlockStorage, networks, ctlplane, 0]} + IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, BlockStorageHostnameResolveNetwork]}]} HOST: {get_attr: [BlockStorage, name]} nova_server_resource: description: Heat resource handle for the block storage server diff --git a/puppet/compute-puppet.yaml b/puppet/compute-puppet.yaml index afe85d1815..357a097d39 100644 --- a/puppet/compute-puppet.yaml +++ b/puppet/compute-puppet.yaml @@ -510,7 +510,7 @@ outputs: str_replace: template: "IP HOST.localdomain HOST" params: - IP: {get_attr: [NovaCompute, networks, ctlplane, 0]} + IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ComputeHostnameResolveNetwork]}]} HOST: {get_attr: [NovaCompute, name]} nova_server_resource: description: Heat resource handle for the Nova compute server @@ -519,4 +519,3 @@ outputs: config_identifier: description: identifier which changes if the node configuration may need re-applying value: {get_attr: [NovaComputeDeployment, deploy_stdout]} - diff --git a/puppet/controller-puppet.yaml b/puppet/controller-puppet.yaml index 5a356bccc9..591d0c294a 100644 --- a/puppet/controller-puppet.yaml +++ b/puppet/controller-puppet.yaml @@ -1089,7 +1089,7 @@ outputs: str_replace: template: IP HOST.localdomain HOST CLOUDNAME params: - IP: {get_attr: [Controller, networks, ctlplane, 0]} + IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ControllerHostnameResolveNetwork]}]} HOST: {get_attr: [Controller, name]} CLOUDNAME: {get_param: CloudName} nova_server_resource: diff --git a/puppet/swift-storage-puppet.yaml b/puppet/swift-storage-puppet.yaml index 82922a878c..fb1756b8d1 100644 --- a/puppet/swift-storage-puppet.yaml +++ b/puppet/swift-storage-puppet.yaml @@ -194,7 +194,7 @@ outputs: str_replace: template: "IP HOST.localdomain HOST" params: - IP: {get_attr: [SwiftStorage, networks, ctlplane, 0]} + IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ObjectStorageHostnameResolveNetwork]}]} HOST: {get_attr: [SwiftStorage, name]} nova_server_resource: description: Heat resource handle for the swift storage server @@ -219,4 +219,3 @@ outputs: config_identifier: description: identifier which changes if the node configuration may need re-applying value: {get_attr: [SwiftStorageHieraDeploy, deploy_stdout]} -