Haproxy config for nova metadata uses ctlplane ip addresses instead of internal_api when using network isolation

Bug #1625543 reported by Marius Cornea
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
tripleo
Fix Released
Undecided
Juan Antonio Osorio Robles

Bug Description

Haproxy config for nova metadata uses ctlplane ip addresses instead of internal_api when using network isolation:

[root@overcloud-controller-0 heat-admin]# grep -A5 metadata /etc/haproxy/haproxy.cfg
listen nova_metadata
  bind 192.168.0.15:8775 transparent
  server overcloud-controller-0 192.168.0.18:8775 check fall 5 inter 2000 rise 2
  server overcloud-controller-1 192.168.0.14:8775 check fall 5 inter 2000 rise 2
  server overcloud-controller-2 192.168.0.17:8775 check fall 5 inter 2000 rise 2

The endpointmap shows the NovaMetadataNetwork is set to internal_api:

[stack@undercloud ~]$ openstack stack show overcloud-EndpointMap-traer4nttfk2 | grep NovaMetadataNetwork
WARNING: openstackclient.common.utils is deprecated and will be removed after Jun 2017. Please use osc_lib.utils
| | u''NovaMetadataNetwork'': u''internal_api'', u''AodhApiNetwork'': u''internal_api'',

But on the controller nodes there's not hieradata which sets the addresses to the internal_api network:

[root@overcloud-controller-0 modules]# hiera nova_metadata_vip
nil

[root@overcloud-controller-0 modules]# hiera nova_metadata_node_ips
nil

The deploy command:

source ~/stackrc
export THT=~/templates/tripleo-heat-templates/
openstack overcloud deploy --templates $THT \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e ~/templates/network-environment.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/templates/disk-layout.yaml \
-e $THT/environments/puppet-pacemaker.yaml \
--control-scale 3 \
--control-flavor controller \
--compute-scale 1 \
--compute-flavor compute \
--ceph-storage-scale 1 \
--ceph-storage-flavor ceph \
--ntp-server clock.redhat.com \
--libvirt-type qemu

[stack@undercloud ~]$ cat templates/network-environment.yaml
resource_registry:
  OS::TripleO::Compute::Net::SoftwareConfig: /home/stack/templates/nic-configs/compute.yaml
  OS::TripleO::Controller::Net::SoftwareConfig: /home/stack/templates/nic-configs/controller.yaml
  OS::TripleO::CephStorage::Net::SoftwareConfig: /home/stack/templates/nic-configs/ceph-storage.yaml

parameter_defaults:

  InternalApiNetCidr: 10.0.0.0/25
  InternalApiAllocationPools: [{'start': '10.0.0.10', 'end': '10.0.0.100'}]
  InternalApiNetworkVlanID: 200

  StorageNetCidr: 10.0.0.128/25
  StorageAllocationPools: [{'start': '10.0.0.138', 'end': '10.0.0.200'}]
  StorageNetworkVlanID: 300

  StorageMgmtNetCidr: 10.0.1.0/25
  StorageMgmtAllocationPools: [{'start': '10.0.1.10', 'end': '10.0.1.100'}]
  StorageMgmtNetworkVlanID: 301

  TenantNetCidr: 10.0.1.128/25
  TenantAllocationPools: [{'start': '10.0.1.138', 'end': '10.0.1.200'}]

  ManagementNetCidr: 172.16.17.128/25
  ManagementAllocationPools: [{'start': '172.16.17.160', 'end': '172.16.17.200'}]

  ExternalNetCidr: 172.16.18.0/25
  ExternalAllocationPools: [{'start': '172.16.18.25', 'end': '172.16.18.100'}]
  ExternalInterfaceDefaultRoute: 172.16.18.126
  ExternalNetworkVlanID: 100

  ControlPlaneSubnetCidr: "25"
  ControlPlaneDefaultRoute: 192.168.0.1

  EC2MetadataIp: 192.168.0.1
  DnsServers: ["10.16.36.29","10.11.5.19"]

  NeutronExternalNetworkBridge: "''"
  NeutronBridgeMappings: 'datacentre:br-ex,tenantvlan:br-infra'
  NeutronEnableIsolatedMetadata: 'True'
  NeutronNetworkType: 'vxlan,gre,vlan,flat'
  NeutronTunnelTypes: 'vxlan,gre'
  NeutronNetworkVLANRanges: 'datacentre:100:199,tenantvlan:200:299'
  NeutronGlobalPhysnetMtu: 1496

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to tripleo-heat-templates (master)

Fix proposed to branch: master
Review: https://review.openstack.org/373141

Changed in tripleo:
assignee: nobody → Juan Antonio Osorio Robles (juan-osorio-robles)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to tripleo-heat-templates (master)

Reviewed: https://review.openstack.org/373141
Committed: https://git.openstack.org/cgit/openstack/tripleo-heat-templates/commit/?id=124aa4f3500a519ee63169f2f95374cba6d31e30
Submitter: Jenkins
Branch: master

commit 124aa4f3500a519ee63169f2f95374cba6d31e30
Author: Juan Antonio Osorio Robles <email address hidden>
Date: Tue Sep 20 13:25:53 2016 +0300

    Add nova-metadata template

    This is needed because currently we're not generating
    nova_metadata_vip or nova_metadata_nodes_ip, and a service profile is
    required for that. Unfortunately, currently puppet-nova only deploys
    osapi and metadata through the same manifest, so this profile doesn't
    really inject any puppet code. We can make this more elegant later.

    Change-Id: Id7112111f16d0c749a6203b90e29e6d9f1e4d57e
    Closes-Bug: #1625543

Changed in tripleo:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/tripleo-heat-templates 5.0.0.0rc2

This issue was fixed in the openstack/tripleo-heat-templates 5.0.0.0rc2 release candidate.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.