349 Commits

Author SHA1 Message Date
Zuul
3932355a8c Merge "Add host_routes to port_from_pool.j2" 2018-09-21 12:37:25 +00:00
Zuul
733c12d46a Merge "Remove External network from DVR related configuration" 2018-09-19 07:54:23 +00:00
Harald Jensås
711f7ef711 Add host_routes to port_from_pool.j2
Add the host_routes as output of the fake neutron ports
created by legacy predictable IPs templates.

Closes-Bug: #1792968
Change-Id: Ie330635fa551d8406a1bf082c89f7c58d82088d6
2018-09-19 07:20:01 +00:00
Zuul
7d4815c614 Merge "Add a 60 seconds timeout to ping_metadata_ip()" 2018-09-08 13:27:13 +00:00
Dan Sneddon
41721e692f Fix incorrect network name "ctrlplane" to "ctlplane" for SNMPd.
The ServiceNetMap contains an incorrect entry for the SnmpdNetwork.
The entry "ctrlplane" should be "ctlplane".

Change-Id: I6c8ab952e364e8fc643e291388b7f13615a1df3e
2018-08-24 13:57:58 -07:00
Zuul
cb08cb1c11 Merge "Edit some post update tasks logic" 2018-08-18 20:00:48 +00:00
Brent Eagles
d9fa0ed5b2 Remove External network from DVR related configuration
DVR doesn't imply the "External" networks, simply some type of
connection that is being used for floating IP traffic. This patch
removes the External network from the DVR role and "left overs" from
environment files. It also corrects the multiple-nics version of the
templates so that the ComputeDVR role is attached to the external
bridge with no IP.

Co-Authored-By: Dan Sneddon <dsneddon@redhat.com>

Change-Id: Ia599e01dbefe4e4c752b7d4c1c7e5682963101f7
2018-08-16 16:51:15 -07:00
Zuul
008f5f5d93 Merge "Add per-network routes to NIC templates" 2018-08-14 19:40:23 +00:00
Zuul
5fadfd093f Merge "Add host routes to subnets" 2018-08-14 19:40:21 +00:00
Martin Mágr
b76d7623ac QDR for metrics collection purposes
This patch adds composable new service (QDR) for containerized deployments.
Metrics QDR will run on each overcloud node in 'edge' mode. This basically
means that there is a possibility that there will be two QDRs running
on controllers in case that oslo messaging is deployed. This is a reason why
we need separate composable service for this use case.

Depends-On: If9e3658d304c3071f53ecb1c42796d2603875fcd
Depends-On: I68f39b6bda02ba3920f2ab1cf2df0bd54ad7453f
Depends-On: I73f988d05840eca44949f13f248f86d094a57c46
Change-Id: I1353020f874b348afd98e7ed3832033f85a5267f
2018-07-31 21:55:45 +00:00
Dan Sneddon
f5f6553797 Add per-network routes to NIC templates
This change adds a new {{network.name}}InterfaceRoutes
parameter to network config templates. It takes a list
of routes i.e:
  [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]

Co-Authored-By: Harald Jensås <hjensas@redhat.com>
Partial: blueprint tripleo-routed-networks-templates
Depends-On: Ifc5aad7a154c33488a7613c8ee038c92ee6cb1a7
Change-Id: I90aea46d3addab9792c7c9d4feff5c5f61520b9b
2018-07-30 09:53:30 +02:00
Harald Jensås
4e44547533 Add host routes to subnets
This change adds a new routes field to the network
definition in network_data.yaml. This field contains
a list of network routes in JSON, e.g.
  [{'destination':'10.0.0.0/16','nexthop':'10.0.0.1'}].

This list is used to set the ``host_routes`` property
of each networks subnet.

Co-Authored-By: Dan Sneddon <dsneddon@redhat.com>
Partial: blueprint tripleo-routed-networks-templates
Depends-On: Ifc5aad7a154c33488a7613c8ee038c92ee6cb1a7
Change-Id: I33b34f1445f4203fbf25edeb093b37c7494c664f
2018-07-30 09:42:19 +02:00
Dan Sneddon
8ec80c7cfd Fix errors using multiple-nics templates w/o VLANs defined
The multiple-nics templates shouldn't require VLANs to be
defined for the networks, since the networks are delivered
on flat interfaces without VLANs. However, since no default
is defined, the templates fail if VLANs are not defined in
network_data.yaml. This change adds a default of "".

Closes-bug: 1784084
Change-Id: I4514ac51729a3156ed263d680e23ef5292fc5fca
2018-07-27 16:10:22 -07:00
Zuul
3e875145cd Merge "DnsServers using get_attr" 2018-07-25 00:53:28 +00:00
Zuul
7ce066eba3 Merge "EC2MetadatIp using get_attr" 2018-07-25 00:36:06 +00:00
Janki Chhatbar
989a36faf1 Edit some post update tasks logic
1. Spelling mismatch in ODL net mapping doesnot generate
its endpoitn clearly.
2. Rectified another small syntax correction for string
replace.
3. Delete upgrade flag and then set it to false. ODL
doesnot allow it to be set without deleting.
4. Other changes in accordance with ODL update process.

Change-Id: Ib549e29f50bbbb434183ac9423bcf776807ff1a4
Closes-Bug: 1779410
2018-07-24 05:29:23 +00:00
Zuul
ad5d4d1db1 Merge "ControlPlaneDefaultRoute using get_attr" 2018-07-24 01:34:22 +00:00
Zuul
dfc09b6ff1 Merge "ControlPlaneSubnetCidr using get_attr" 2018-07-24 01:34:20 +00:00
Zuul
d4764a5801 Merge "Add some air - blank line between network's in net configs" 2018-07-24 01:34:18 +00:00
Harald Jensås
52ec1a018b DnsServers using get_attr
Nameservers are configured on the ctlplane subnets by the
undercloud installer, the nameservers are used early during
the deployment, prior to running os-net-config.

Remove the default DnsServer's in THT, replacing it with
an empty list and use get_attr to get the values for
DnsServers for the overcloud from the ctlplane subnet(s).

A conditinal is used in  puppet/role.role.j2.yaml so that
the parameter value is used whenever it is not [] (default)
to provide backwards compatibilityi and in case the user
want to use different DnsServers for the overcloud and
undercloud.

Partial: blueprint tripleo-routed-networks-templates
Change-Id: I5f33e06ca3f4b13cc355e02156edd9d8a1f773cd
2018-07-14 09:19:12 +02:00
Harald Jensås
19381ecffb EC2MetadatIp using get_attr
The route to metadata service is set up in host_routes
of ctlplane subnets by extraconf post deploy::
  extraconfig/post_deploy/undercloud_ctlplane_network.py

Use get_attr on the server resource to resolve attribute
value from the subnet(s) and pass it to the parameter
'EC2MetadatIp' used in the THT/network/config/* templates.

Changes the default for 'EC2MetadatIp' to ''.
Removes the comment that the value should be overriden in
parameters_defaults. It also removes the parameter from
network-environment templates.

A conditinal is used in  puppet/role.role.j2.yaml so that
the parameter value is used whenever it is not '' (the
default) to provide backwards compatibility in case the
user set a different value for this parameter in
network-environment.yaml.

When deploying a routed control plane the network config
templates would previously need to be updated to carry
'EC2MetadatIpLeafX' parameters for each leaf.  By getting
the value to pass from the server resource this change
reduces the required nic-config template customisation.
(Reduces the risk of user error.)

Partial: blueprint tripleo-routed-networks-templates
Change-Id: I9c019ec840a44ca8c5f98be55daea365bc6554ec
2018-07-14 09:18:58 +02:00
Harald Jensås
c649cf0545 ControlPlaneDefaultRoute using get_attr
Use get_attr on the server resource to resolve attribute
value from the subnet(s) and pass it to the parameter
'ControlPlaneDefaultRoute' used in the THT/network/config/*
templates.

Changes the default for 'ControlPlaneDefaultRoute' to ''
as well as the comment that the value should be overriden
in parameters_defaults. It also removes the parameter from
network-environment templates.

A conditinal is used in  puppet/role.role.j2.yaml so that
the parameter value is used whenever it is not '' (the
default) to provide backwards compatibility in case the
user set a different value (different from the one used in
undercloud.conf) for this parameter in
network-environment.yaml.

When deploying a routed control plane the network config
templates would previously need to be updated to carry
'ControlPlaneXDefaultRoute' parameters for each leaf. With
8 Leafs in addition to the network local to the undercloud
that is 8 parameters less to place in the configuration.
By getting the value to pass from the server resource this
change reduces the required nic-config template
customisation (reduces the risk of user error).

Partial: blueprint tripleo-routed-networks-templates
Change-Id: I5139249d55e9ac01761c270b8c0f31ef35595940
2018-07-14 09:11:39 +02:00
Harald Jensås
6ab86a3ebe ControlPlaneSubnetCidr using get_attr
Use get_attr on the server resource to resolve attribute
value from the subnet(s) and pass it to the parameter
'ControlPlaneSubnetCidr' used in the THT/network/config/*
templates.

As the value is now resolved from resource attributes,
this changes the default for 'ControlPlaneSubnetCidr' to ''
as well as the comment that these value should be overriden
in parameters_defaults. It also removes the parameter from
network-environment templates.

A conditinal is used in  puppet/role.role.j2.yaml so that
the parameter value is used whenever it is not '' (the
default) to provide backwards compatibility in case the user
set a different value (different from the one used in
undercloud.conf) for this parameter in
network-environment.yaml.

When deploying a routed control plane the network config
templates would previously need to be updated to carry
'ControlPlaneXSubnetCidr' parameter (in case the subnet
mask is not the same for all the routed network leafs).
With 8 Leafs in addition to the network local to the
undercloud that is 8 parameters less to place in the
configuration. By getting the value to pass from the
server resource this change reduces the required nic-config
template customisation (reduces the risk of user error).

Partial: blueprint tripleo-routed-networks-templates
Change-Id: I92ee0f9a2107cdf1ca5903d3756a235a79c36c73
2018-07-14 09:11:28 +02:00
Zuul
6118dec096 Merge "HA support for OpenShift" 2018-07-12 04:25:29 +00:00
Flavio Percoco
99b8119d98 HA support for OpenShift
The OSA assisted HA deployment is not recommended for production
environments, besides it being limited. Therefore, we're relying on our
deployment of HAproxy + Keepalived to provide HA on top of OpenShift in
addition to adding more OpenShift nodes.

Depends-On: Ib573758b515264d1dda90cc9de61f4fa6659dc7d

Change-Id: I7ab677e4803e9df5f6641204cb0b6ccc5b1eb79f
2018-07-11 07:41:51 +02:00
Harald Jensås
f0bc5e460a Add subnet host_routes to output of OS::TripleO::*::Ports::Port
Adds the host_routes on the neutron ports subnet to the output
of the Tripleo Ports template. This will allow use of get_attr
in the role to pass routes for a subnet to NetworkConfig.

Partial: blueprint tripleo-routed-networks-templates
Change-Id: I46896153ea59ae0a6a8dff0208de2b0d168927ae
2018-07-06 12:03:08 +02:00
Harald Jensås
f3d74a6449 Add some air - blank line between network's in net configs
Make rendered templates with one empty line between each
network in the parameters section. Improves readability.

Change-Id: Id4ad8c04c80f8fe80e8401e2ddf56985e7a59c85
2018-07-06 09:29:33 +02:00
Harald Jensås
e999d673d1 Iterate only once in network configs parameters
This re-orderes the parameters section of network config
templates. By doing this we reduce the number of times we
iterate over networks in the parameters section from
three times to once.

Change-Id: Id45c67b2c2b87fff5c557666a7959bfc0e49d36c
2018-07-05 01:10:48 +02:00
Zuul
ddc6b91b5e Merge "Add default value for name_lower in network_data.yaml to update ServiceNetMap" 2018-06-30 09:22:04 +00:00
Bob Fournier
d3eb296e19 Add default value for name_lower in network_data.yaml to update ServiceNetMap
In Pike and later, the name_lower field in network_data.yaml can be
re-defined to contain a custom network name.  When this is done the
ServiceNetMap field must be overridden to reflect the new name in all
places.  This changes adds a new optional field to network_data.yaml
that should be set to the original default name_lower value.
ServiceNetMap will then be automatically updated and will not need
to be overridden.

This also fixes the VipPort naming for the StorageManagement network
to not use a static value.

Change-Id: I8a238038122288899cef49faf38ea2c2ffc2176b
2018-06-28 10:17:28 -04:00
Ben Nemec
cf2be03500 Make BIND listen address configurable
Previously BIND listened on all configured interfaces on the system.
This doesn't make sense (why have DNS listening on the storage network,
for example) and could be a security issue in some environments.
This commit makes the BIND network configurable the same as any other
service.

Change-Id: Iaad11b1b4037719954ab17fb171e5804f3cbbe58
2018-06-19 16:42:51 -05:00
Mehdi Abaakouk
b18e38c808 snmp: listen on ctrlplane
Ceilometer uses the ctrlplane to poll snmpd on each
ironic node.

43155ed1462a8e27c9efdbb345bfc5832c50bd2f have restrict snmpd
to the internal_api subnet which breaks Ceilometer that use the
ctrlplane subnet.

This change puts the ctrlplane as default for snmpd.

Closes-bug: #1775001
Change-Id: Ia310e02d30ce037c2cc7fec146f27fbd0f8055f4
2018-06-04 15:33:32 +02:00
Alex Schultz
f8d0edac5f Drop old ceilometer services
These were needed for FFU to Queens so we should remove them for Rocky.

Change-Id: I0e24d19cd17d35644fa02e989fa9ef592195b9f1
2018-05-29 20:51:07 +00:00
Zuul
e2d9ce7b7b Merge "Add support to ping IPv6 metadata IP" 2018-05-26 05:12:54 +00:00
Zuul
a7857d6dfc Merge "Revert "Switch public endpoints to use FQDNs by default"" 2018-05-17 21:56:29 +00:00
James Slagle
f254a2169d Revert "Switch public endpoints to use FQDNs by default"
This reverts commit 8e104b3c549118727b53c9825a438e799715b7f9.

https://review.openstack.org/#/c/559926/ introduced requiring CloudName.
This broke the documented deployment process. I also don't see how
CloudName can be required, but CloudDomain can not.

I don't see a technical reason why we can't keep the default as
localdomain. If necessary, we can instead add a parameter
validation instead of requiring the parameter.

Closes-Bug: #1771627
Depends-On: Ia86842b0b1f42512f25390d6bdb695e0f8133c6d
Change-Id: I2c5b511df50f29c63aa613899c2bebb506360bf4
2018-05-16 21:45:42 +00:00
Zuul
ac89df34c9 Merge "Revert "Change default endpoint map entries to use TLS"" 2018-05-16 02:54:03 +00:00
Alex Schultz
d5b34858de Revert "Change default endpoint map entries to use TLS"
This reverts commit 22ad1bc8c51dffb40e3ebaf5fef35de333adb53d.

Change-Id: I424d001a1aad78b6a756b10682b316b3f2a48fc5
Closes-Bug: #1771435
2018-05-15 21:27:19 +00:00
Zuul
aec81d595e Merge "Change default endpoint map entries to use TLS" 2018-05-15 12:28:26 +00:00
Zuul
f5152da976 Merge "Switch public endpoints to use FQDNs by default" 2018-05-14 23:27:04 +00:00
David Vallee Delisle
ea4e582567 Add a 60 seconds timeout to ping_metadata_ip()
Change-Id: I1e476093a16848a4fd702eb8efacc420b6c2255a
Closes-Bug: #1735849
2018-05-10 09:25:15 -04:00
Carlos Camacho
44ef2a3ec1 Change template names to rocky
The new master branch should point now to rocky.

So, HOT templates should specify that they might contain features
for rocky release [1]

Also, this submission updates the yaml validation to use only latest
heat_version alias. There are cases in which we will need to set
the version for specific templates i.e. mixed versions, so there
is added a variable to assign specific templates to specific heat_version
aliases, avoiding the introductions of error by bulk replacing the
the old version in new releases.

[1]: https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#rocky
Change-Id: Ib17526d9cc453516d99d4659ee5fa51a5aa7fb4b
2018-05-09 08:28:42 +02:00
Juan Antonio Osorio Robles
8e104b3c54 Switch public endpoints to use FQDNs by default
This is in preparation for TLS by default, since the TLS certificate will
use FQDNs for the SubjectAltName, and that will be verified.
This required for us to change both CloudDomain and CloudName to be
required parameters, and not default them to use localdomain. This is to
avoid folks in real deployments using them in their clouds.

Change-Id: Ic70dd323b33596eaa3fc18bdc69a7c011ccd7fa1
2018-05-08 18:16:27 +03:00
Juan Antonio Osorio Robles
22ad1bc8c5 Change default endpoint map entries to use TLS
This changes the default entries to use TLS as a default for
the public endpoints.

Change-Id: I2d211b51ddb2f9fde5902cfb8004392a66e15a5c
Depends-On: I3d3cad0eb1396e7bee146794b29badad302efdf3
Depends-On: I8b46ce3f9cd6e36d0b8f604b49e4113301461a4c
Depends-On: Ief352f9e54bee95d5e4035725ab6a63ef4be0269
2018-05-08 18:16:27 +03:00
Zuul
06453152a4 Merge "Remove redundant config bond-with-vlans/compute-dpdk.j2.yaml" 2018-05-05 20:57:58 +00:00
Dan Sneddon
7c68540670 Fix typo in multiple-nics/role.role.j2.yaml
The multiple-nics template has a typo which prevents the
default route on br-ex from appearing in the NIC configs.
This change fixes that typo so the multiple-nics templates
work correctly.

Change-Id: Iecf3c0c70d538a1a904c12717af9c37f5d860758
2018-05-04 13:31:24 -07:00
Dan Sneddon
8e20095f44 Revert Ceph bridge names to previous values
When the NIC configs were unified under a single role.role.j2.yaml,
the bridge name for Ceph roles was changed from "br-storage" or
"br-bond" to "br-ex". This breaks upgrades which used the original
NIC config templates. This change reverts those valuse when
rendering the NIC config templates for CephStorage roles.

Closes-Bug: #1766748
Change-Id: I68b6e674d6aa86aa7d60efa3eb7b3cb874171e63
2018-04-30 20:21:00 +00:00
Dan Sneddon
30491411e6 Remove redundant config bond-with-vlans/compute-dpdk.j2.yaml
The compute-dpdk.j2.yaml template was originally present because
the NIC config file name generated was compute-ovs-dpdk.yaml.
We added deprecated_nic_config_name to network_data.yaml so
this file is automatically generated by role.role.j2.yaml, but
never removed this file.

Depends-On: I68b6e674d6aa86aa7d60efa3eb7b3cb874171e63
Change-Id: Ibcd9d716351f4dc6f2c720f132a124536a01f8dc
2018-04-28 01:08:38 +00:00
Zuul
822bd996b3 Merge "Support separate oslo.messaging services for RPC and Notification" 2018-04-25 04:43:46 +00:00
Andrew Smith
78bc457585 Support separate oslo.messaging services for RPC and Notification
This commit introduces oslo.messaging services in place of a single
rabbitmq server. This will enable the separation of rpc and
notifications for the continued use of a single backend (e.g.
rabbitmq server) or a dual backend for the messaging communications.

This patch:
* add oslo_messaging_rpc and oslo_messaging_notify services
* add puppet services for rpc and notification
  (rabbitmq and qdrouterd servers)
* add docker services to deploy rpc (rabbitmq or qdrouterd)
  and notify (rabbitmq or shared)
* retains rabbit parameters for core services
* update resource registries, service_net_map, roles, etc.
* update ci environment container scenarios
* add environment generator for messaging
* add release note

Depends-On: Ic2c1a58526febefc1703da5fec12ff68dcc0efa0
Depends-On: I154e2fe6f66b296b9b643627d57696e5178e1815
Depends-On: I03e99d35ed043cf11bea9b7462058bd80f4d99da
Needed-By: Ie181a92731e254b7f613ad25fee6cc37e985c315
Change-Id: I934561612d26befd88a9053262836b47bdf4efb0
2018-04-22 04:33:44 +00:00