848 Commits

Author SHA1 Message Date
Dan Sneddon
c203085ad0 Include Redis VIP in example environment
The network isolation code in the TripleO Heat templates has files
in the environment folder that can be included to enable network
isolation. This updates the environment file to include the VIP
for Redis.

Change-Id: Ic05720c565d9ecf76bf7485b969cb2d9ead9fd6f
2015-06-25 12:03:02 -07:00
Giulio Fidente
d451831248 Remove Redis VirtualIP from params and build it from Neutron::Port
The redis_vip should come from a Neutron Port as its cidr depends
on the Neutron Network configuration. This change adds 2 new files
and modifies 1 in the network/ports directory:

- noop.yaml - Passes through the ctlplane Controller IP (modified)
- ctlplane_vip.yaml - Creates a new VIP on the control plane
- vip.yaml - Creates a VIP on the named network (for isolated nets)

Also, changes to overcloud-without-mergepy.yaml create the
Redis Virtual IP. The standard resource registry was modified to
use noop.yaml for the new Redis VIP. The Puppet resource registry
was modified to use ctlplane_vip.yaml by default, but can be made
to use vip.yaml when network isolation is used by using an
environment file. vip.yaml will place the VIP according to the
ServiceNetMap, which can also be overridden.

We use this new VIP port definition to assign a VIP to Redis,
but follow-up patches will assign VIPs to the rest of the
services in a similar fashion.

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

Change-Id: I2cb44ea7a057c4064d0e1999702623618ee3390c
2015-06-13 17:36:29 -07:00
Giulio Fidente
a6706da768 Fix Redis bind setting to use redis_network
The Redis bind host should be set from [1] template.

1. https://github.com/openstack/tripleo-heat-templates/blob/master/puppet/controller-puppet.yaml#L985

Change-Id: I8713db1a7ad739692817921248edcc6b0e819ade
2015-06-12 14:54:35 +02:00
Jenkins
5033fd0689 Merge "Enable use of coordination_url in ceilometer" 2015-06-09 07:55:13 +00:00
Jenkins
0625ac253e Merge "Add Redis as a Pacemaker resource" 2015-06-09 07:15:33 +00:00
Jenkins
33db97ccf9 Merge "Enable NetApp Backends in Cinder" 2015-06-08 15:31:29 +00:00
Steve Baker
fa477ef380 Config & deployments to update overcloud packages
This change adds config and deployment resources to trigger package
updates on nodes. The deployments are triggered by doing a stack-update
and setting one of the parameters to a unique value.

The intent is that rolling update will be controlled by setting
breakpoints on all of the UpdateDeployment resources inside the
role resource groups.

Change-Id: I56bbf944ecd6cbdbf116021b8a53f9f9111c134f
2015-06-08 16:07:26 +02:00
Yanis Guenane
b00bae6c5a Update mongodb implementation to reflect master
Two PR have been merged upstream that let use improve our current
implementation :

  * service_manage[1]
  * conn string has namevar[2]

[1] https://github.com/puppetlabs/puppetlabs-mongodb/pull/198
[2] https://github.com/puppetlabs/puppetlabs-mongodb/pull/200

Change-Id: Ia2247348a9e0292b5fcbc65ea1e41e6bc7c477fa
2015-06-05 23:58:49 +02:00
Yanis Guenane
578f720e41 Enable use of coordination_url in ceilometer
Since t-h-t can now deploy a Redis cluster, we can rely on it as the
tooz backend for high availability.

Change-Id: If045a273388aa2e725b6de624e09aa9c85248cc4
2015-06-05 23:54:40 +02:00
Yanis Guenane
8def87e449 Add Redis as a Pacemaker resource
Change-Id: I731b408f24da01c1bc897bfffe8fd4d5638932ed
2015-06-05 23:40:44 +02:00
Jenkins
698e65274e Merge "Fix list of type_drivers for ML2 plugin" 2015-06-05 15:24:46 +00:00
Jenkins
d625668939 Merge "Wire Neutron VLAN ranges param as array to puppet" 2015-06-05 15:23:50 +00:00
Ryan Hefner
cac21c27aa Enable NetApp Backends in Cinder
Enables support for configuring Cinder with a NetApp backend.
This change adds all relevant parameters for:
 - Clustered Data ONTAP (NFS, iSCSI, FC)
 - Data ONTAP 7-Mode (NFS, iSCSI, FC)
 - E-Series (iSCSI)

Change-Id: If6c6e511ef2d26c4794e3b37c61e5318485ff4db
2015-06-05 10:03:10 -04:00
Giulio Fidente
c26b53ca42 Fix list of type_drivers for ML2 plugin
The list of drivers loaded by the ML2 plugin does not have to
match the list of tenant_network_types, this will make ML2 load
the flat, gre, vxlan and vlan drivers so that the provider
networks can be of flat (default) and vlan type as well.

Change-Id: I0b74f86acf5c1ff644deb46c0a1d14129c1882d4
2015-06-05 09:28:09 -04:00
Giulio Fidente
607311e02b Wire Neutron VLAN ranges param as array to puppet
Turns NeutronNetworkVLANRanges into a list and makes it consumable by
neutron::plugins::ml2::network_vlan_ranges as an array. Previously
usage of vlans was impossible due to puppet-neutron failing to
join() network_vlan_ranges.

Also fixes wiring of network_vlan_ranges on computes and adds a
sample environment file to test use of vlans for tenant networks.

Change-Id: I8725cdb9591dd8d0b7125fdacbefdc9138703266
2015-06-05 09:27:42 -04:00
Dan Prince
49639ec8a1 Isolate the Ceph storage and storage_mgmt nets
This patch updates the Ceph configuration for the puppet
implementation so that it isolates the Ceph traffic
for the public and cluster interfaces. By default public traffic
runs on the "storage" network and the cluster traffic runs on the
"storage mgmt" network.

If network isolation is not enabled then the default
ctlplane address's will be used for both the public and
cluster interfaces.

Change-Id: I791244d72c8f42142d9de99e0cf0acdca19e62b0
2015-06-04 13:28:00 -04:00
Dan Prince
92271fb054 configure pacemaker VIPs for isolated networks
This patch updates the overcloud pacemaker role manifest so
that it optionally configures VIPs on isolated networks if
they are enabled.

Change-Id: I6123ee622abe4d8d7b5f76cf9bac43acd80c1f64
2015-06-04 13:28:00 -04:00
Dan Prince
f601ab7b58 Set glance_api_servers for cinder
This patch updates the hiera configuration for the Cinder API so
that we set glance_api_servers. By default Cinder constructs
a glance URL based on $my_ip (the local IP of the machine)
which may not be correct if you are running Glance on a non-default
internal network.

By setting glance_api_servers to the same thing we already
use for Nova we make Cinder contact the correct Glance URL
regardless of the network settings.

Change-Id: I1c56eb585ddfdc9989a8b55bc1bac819802f7794
2015-06-04 13:28:00 -04:00
Dan Prince
26dee879c0 puppet controller role: per service VIP settings
This patch refactors the puppet controller role so that it
makes use of per service VIP settings for each service.

Previously the VIP for the ctlplane was hard wired to
many of the controller service. With this patch we have
the ability to isolate traffic for services which
made use of the ctlplane and public VIPs for their
settings.

The implementation includes:

 * stops the use of the VirtualIP and PublicVirtualIP within the
   controller role. These parameters have now been replaced with
   per service heat parameters for the controller nested stack which
   are determined via VipMap based on per service settings in the heat
   environment.

 * All VIP configuration is now moved into puppet/vip-config.yaml.
   This made sense so we could deprecate the use of the VirtualIP
   and PublicVirtualIP settings above.

 * The puppet manifests for the controller were cleaned up for several
   to use Hiera directly instead of constructing URLs based on the
   static controller and public network VIPs. This improvement
   was something we wanted to do anyways and made the implementation
   cleaner.

Change-Id: I9b9a15be67f74bec97366408f7047acfd6ea0ec6
2015-06-04 13:28:00 -04:00
Jenkins
6b0b761062 Merge "horizon/keystone api should use internal_api NW" 2015-06-04 14:01:37 +00:00
Jenkins
13091d7296 Merge "Add virtual IPs for split out networks" 2015-06-04 13:38:22 +00:00
Jenkins
9a2a579450 Merge "Add PortName to ports stacks" 2015-06-04 13:37:05 +00:00
Jenkins
11c0000441 Merge "Combine Heat API networks into single net" 2015-06-04 13:36:51 +00:00
Jenkins
4ae1b72673 Merge "Make all-nodes Ip networks configurable" 2015-06-04 13:33:00 +00:00
Jenkins
5c315de4bc Merge "Wire ServiceNetMap as a top level parameter" 2015-06-04 13:32:37 +00:00
Jenkins
61cbdb12f9 Merge "Pass NeutronEnableTunnelling to controllers" 2015-06-04 12:20:42 +00:00
Jenkins
e57bf3217a Merge "Set VXLAN tunnels range to match GRE range" 2015-06-04 12:20:35 +00:00
Jenkins
a68fd13608 Merge "Wire Neutron allow_automatic_l3agent_failover param to module" 2015-06-04 10:38:24 +00:00
Giulio Fidente
14cade7657 Pass NeutronEnableTunnelling to controllers
We forgot to pass NeutronEnableTunnelling param to controllers
(passed only to computes), making it unusable.

Change-Id: I74756732deabd1c7ba9039832ea169fd322a569f
2015-06-03 15:18:10 -04:00
Giulio Fidente
3d1ee56831 Set VXLAN tunnels range to match GRE range
Change-Id: I16d259055fe4cd22541cd7abd7a26c71bbbaf292
2015-06-03 15:16:52 -04:00
Jenkins
4fe67fdc38 Merge "os-net-config templates to configure vlans" 2015-06-03 15:03:54 +00:00
Jenkins
ebb48a23fb Merge "Reuse the undercloud service passwords as db passwords." 2015-06-03 13:57:43 +00:00
Dan Prince
d6e6536662 horizon/keystone api should use internal_api NW
As most of the OpenStack services are automatically bound
to the public virtual IP already we don't need to set
the default network for Horizon and Keystone to the 'external'
network. These should probably default to the internal_api
network like the rest of the OpenStack services...

Change-Id: I04cf64568c2fc7bb8a821b0de5ba56aa90158e2d
2015-06-03 08:58:13 -04:00
Dan Prince
36a2aa0dd2 Add virtual IPs for split out networks
This patch adds VIPs for the internal_api, storage,
and storage management networks.

For puppet these are persisted into a local vip-config
hieradata file which is then used by puppet-tripleo's
loadbalancer module to apply per-service VIP settings.

Change-Id: I909c3bdc9d17a8e15351f4797287769e3f76c849
2015-06-03 08:58:13 -04:00
Dan Prince
a3a88cd3c0 Add PortName to ports stacks
For VIP ports we set an explicit name on the ports. This
patch adds an optional PortName parameter to the ports
objects which can be used to specify a name.

Change-Id: Iad0f5e4cfc31a931dbb574d9e589570125e9465c
2015-06-03 08:58:13 -04:00
Dan Prince
ab6d15482f Combine Heat API networks into single net
We probably don't need to split out separate networks
for Heat CFN and Cloudwatch. Just having a single network
for Heat API in the overcloud is probably fine.

Change-Id: I917b314e01227af72129645c9b72ad8e54f07865
2015-06-03 08:58:13 -04:00
Dan Prince
17028aa9c2 Make all-nodes Ip networks configurable
This patch adds a new NetIpListMap abstraction which we can use
to make the all-nodes-config IP list network assignments
configurable. Ip address lists for all overcloud services
which require IPs were added to all-nodes-config so
that puppet manifests can be directly supplied the
correct network list for each service.

Change-Id: I209f2b4f97a4bb78648c54813dad8615770bcf1a
2015-06-03 08:58:13 -04:00
Dan Prince
d413eb63f3 Wire ServiceNetMap as a top level parameter
This patch makes ServiceNetMap a top level parameter.

This is helpful to tools like Tuskar which don't support Heat
environments that contain both a resource_registry and default_parameters.

ServiceNetMap will in fact be utilized at the top level in some of
the VIP related patches that follow.

Change-Id: I375063dacf5f3fc68e6df93e11c3e88f48aa3c3a
2015-06-03 08:58:12 -04:00
Giulio Fidente
abfc3c5c4c Wire Neutron allow_automatic_l3agent_failover param to module
Change-Id: Ibd1581ebb87ed02f3840000e90025a2a371019aa
2015-06-02 04:52:49 +02:00
Dan Prince
cbac118888 os-net-config templates to configure vlans
This patch adds 5 new role templates to help configure
a vlans on top for each of the overcloud roles. This
patch adds vlans on top of a single NIC attached to
the control plane network (already used for provisioning).

The patch also includes an environment file to
enable configuration of vlans by simply sourcing this file.

Change-Id: Ibc40e452dec9b372ff10442aab2bddaf382b0a2f
2015-06-01 15:13:46 -04:00
Jenkins
eaa5eb6a59 Merge "post-deploy hook for rhel registration" 2015-06-01 11:56:57 +00:00
Jenkins
d75067951f Merge "Neutron: Remove hiera lookup to controller_host" 2015-06-01 07:57:05 +00:00
Jenkins
0c63d2be82 Merge "Add Heat as a Pacemaker resource" 2015-06-01 07:45:26 +00:00
Jenkins
86bcd8a731 Merge "Add Ceilometer as a Pacemaker resource" 2015-06-01 07:43:10 +00:00
Yanis Guenane
3531fdb617 Neutron: Remove hiera lookup to controller_host
With current effort of creating isolated networks, the controller_host
hiera variable does not exist anymore. Hence we remove it else the
lookup will fail.

The hiera binding neutron::agents::ml2::ovs::local_ip has been written
in another review[1]

[1] I1dc11987b4ea3c37775b14fbdddb75588499e9bb

Change-Id: I12777c512d379210e5cddb5e683be4d79808fa2c
2015-05-31 22:28:24 +02:00
Jenkins
5b5446f5b5 Merge "Map Mysql to isolated networks" 2015-05-29 21:21:39 +00:00
Jenkins
bcf68d08f8 Merge "Use heat inputs for network port settings" 2015-05-29 21:19:47 +00:00
Yanis Guenane
c857f5c877 Add Heat as a Pacemaker resource
Change-Id: I1c8fc6beacc8352ad2aabe44ff20614ac52c1795
2015-05-29 15:15:27 -04:00
Yanis Guenane
f385dcaef4 Add Ceilometer as a Pacemaker resource
Change-Id: I1243b68506f37d6b78807c03948874ae100fef65
2015-05-29 15:15:11 -04:00
Giulio Fidente
6824554cdb Add Nova as Pacemaker resource
Constraints based on vncproxy are commented due to it not starting
with websockify < 0.6, see [1]

1. http://lists.openstack.org/pipermail/openstack-dev/2014-October/048535.html

Co-Authored-By: Jiri Stransky <jistr@redhat.com>

Change-Id: Ie51014bf563920d2e75c5e38942bc42ddc2a3939
2015-05-29 15:14:15 -04:00