Age | Commit message (Collapse) | Author | Files | Lines |
|
This patch updates the cinder block storage role
for Puppet so that it supports network isolation.
This includes using the (optional) isolated networks
for MySQL, Glance API, and iscsi network traffic.
Change-Id: Icdfbf5fce7380e6049babca0cd50ca2e4008c1b0
|
|
|
|
|
|
We have to set it to true as the default is false which means the
redis vip can't be reached. This was manifested as a problem with
ceilometer agent reaching the coordination url like [1].
Co-Authored-By: Giulio Fidente <gfidente@redhat.com>
[1] https://bugzilla.redhat.com/attachment.cgi?id=1040023
Closes-Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1232797
Change-Id: I1cd63308d0ac1d17542e1a2a909ee1a9680ed4b3
|
|
By default the nova vncproxy binds to 0.0.0.0, which will fail in
a loadbalanced environment. This makes it bind to its network.
Change-Id: I08776a8f6c72b63d73433b147c130fbc9a7110b0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Currently, we use the heat default server names, which results in some
fairly unreadable hostnames due to the level of nesting in the templates.
e.g ov-sszdbj5rdne-0-bhseh65edxv6-Controller-zoqc6tlypbdp
Instead, we allow the user to specify a format string per role, defaulted
to a string which formats the name e.g <stackname>-controller-<index>
e.g overcloud-controller-0
Optionally additional hostname components (not replaced by heat) could be
added, such that deployment time customization of hostnames via firstboot
scripts (e.g cloud-init) may be possible.
Should anyone wish to maintain the old heat-generated names, they can pass
an empty string via these parameters, which heat will treat as if no "name"
property was provided to OS::Nova::Server.
Change-Id: I1730caa0c2256f970da22ab21fa3aa1549b3f90b
|
|
|
|
We want to make sure to be able to resolve the default domain
suffix (.localdomain) appended when no domain option is passed by
the dhcp server.
Change-Id: I33111e91b502f57da442e5745de2217bd6d2d882
|
|
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
|
|
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
|
|
Adds the horizon (httpd) service as pacemaker resource
Also adds a default for the horizon::django_session_engine [1]
which was previously unconfigured. Also adds a server-status.conf
for httpd/pacemaker [2]
[1] https://docs.djangoproject.com/en/dev/topics/http/sessions/#using-cached-sessions
[2] https://github.com/beekhof/osp-ha-deploy/blob/master/pcmk/horizon.scenario#L72
Change-Id: I320837dfecf3241355e8a3345d0ff271592da491
|
|
This patch renames the NeutronLocalIp option to be called
NeutronTenantNetwork. This is more consistent with
all of the other ServiceNetMap settings which end in
'Network' and initial end user feedback found the
old name a bit cryptic as well.
This is the network for neutron tenant traffic so lets
just name it that.
Change-Id: Id49afe75c372887453413c092190a5775aa3e1ee
|
|
This patch makes it possible to configure the isolated network
for the Nova vnc proxy client.
Change-Id: I462dfaea94e5fe9cb260ba91a42433a250f07984
|
|
This patch updates the Puppet Swift storage role
so that it supports network isolation. By default
all traffic still flows on the ctlplane network
but if network isolation is enabled then network
traffic will flow over the configured storage_mgmt
network interface.
This patch also fixes a few critical issues with
the swift storage role that prevented it from
working:
- oac_data for the swift devices was overriding the
data provided in the swift_devices_and_proxy
hieradata file.
- the role was missing declarations to load hieradata
files for swift_devices_and_proxy and all_nodes
- The required snmpd settings were not getting set
correctly in the 'object' hiera data file.
With all of these changes the Swift storage role
works correctly with and without network isolation.
Change-Id: I541abb2604380f603bba91ad88e54783ee450a8f
|
|
|
|
|
|
|
|
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
|
|
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
|
|
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
|
|
Change-Id: I731b408f24da01c1bc897bfffe8fd4d5638932ed
|
|
|
|
|
|
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
|
|
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
|
|
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
|
|
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
|
|
This patch updates the overcloud pacemaker role manifest so
that it optionally configures VIPs on isolated networks if
they are enabled.
Change-Id: I6123ee622abe4d8d7b5f76cf9bac43acd80c1f64
|
|
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
|
|
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
|
|
|
|
|
|
|
|
|
|
Change-Id: I16d259055fe4cd22541cd7abd7a26c71bbbaf292
|
|
We need to be sure the boostrap node data has been propagated to the
cluster before proceeding with configuration, because
ControllerNodesPostDeployment consumes the data put in place by this
and depends_on for serialization, which is essentially meaningless when
combined with NO_SIGNAL.
Change-Id: I73a1e5a2cda4c79f457bfbd9ce2836dc5c1902cc
|
|
Change-Id: I5b6454d0e09eba79fc0376e963fd0e4c64105081
|
|
Currently we use NO_SIGNAL on both the NetworkConfig and subsequent config
deploying the data associated with the role. This means there is a risk that
should the NetworkConfig do anything interruptive (os-net-config can do
interface renaming based on discovery data for example) the role configuration
config could fail, and we'd never know until some later error occurs.
Additionally, we need to be sure that the heiradata deployed by each of the role
specicific configs is actually in-place before proceeding with any of the cluster
configuration - atm this works due to the inherent delays involved deploying to
bare-metal, but there's still a theoretical race if very fast deployment backends
(I'm thinking containers, e.g lxc backend to nova or something) were used instead.
Essentially, we should never be using NO_SIGNAL unless we want to ignore failure,
which AFAICT is not the case in this instance.
Change-Id: I0dbbcc87fb8df8e6bc4775c39fa616b0d0713464
|
|
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
|
|
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
|
|
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
|