InfluxDB is deployed and configured on each node but only one instance
receives datapoints at a time while other nodes are used for failover.
DocImpact
Change-Id: Ie0e927f12643951fc3688a321cca6d7225441248
This change ensures that on MOS 9.x, the LMA collectors aren't deployed
before the InfluxDB service is provisioned.
Change-Id: I16131e5776aa09fce723956e6b070dacdf0031c5
Related-Bug: #1632590
This patch removes a dependency that causes a cycle in the graph of
tasks in MOS 8. The cycle was <custom>-netconfig -> hosts -> cluster
-> virtual_ips -> <custom>-netconfig.
We cannot remove hosts.pp as we tried previously because doing this also
remove a dependency between globals and hosts. So we create the
following dependency:
tools -> <custom>-netconfig -> hosts
in place of the former:
tools -> netconfig -> hosts
Partial-Bug: #1616391
Change-Id: I67abb9f45a0156017236defb04196c701f75926b
This patch removes a dependency that causes a cycle in the graph of
tasks in MOS 8. The cycle was <custom>-netconfig -> hosts -> cluster ->
virtual_ips -> <custom>-netconfig.
Change-Id: Ic4b6b19e129d822aa7b76a0e6931f0f36d057d6a
This change makes sure that the virtual router on the management network
is up and running before configuring the network.
Change-Id: Idb087ac487ef88480773898e4129938a5b2e3063
Closes-Bug: #1583994
Without this change, the nodes are configured to use the Fuel node as
their default gateway. Note that the code path is different between MOS
8 and MOS 9 because of this bug fix [1] that hasn't been backported on
MOS 8.
[1] https://bugs.launchpad.net/fuel/+bug/1541309
Change-Id: I1529b35a4e3e3cff59360da983a4866f8b74ba70
Closes-Bug: #1583994
This patch configures HAProxy to terminate SSL connection when the
support for SSL/TLS is enabled in StackLight.
DocImpact Add support for TLS
Change-Id: Idf59f92f00ed58f3ebce2e0421694ad7c2010fe9
Implements: blueprint support-secure-communication
This change ensures that InfluxDB is installed and started on the
primary node first. Otherwise InfluxDB isn't able to start its HTTP
service and the subsequent configuration task fails.
Change-Id: I6b5580569d4f507eec6541577247b2c14b2b5504
Closes-Bug: #1592785
This change removes an unneeded dependency and it fixes a wrong one.
We don't need to wait that Grafana is configured before pushing data
to the backend, so we removed the dependency on upload_nodes_info.
And as the task grafana-configuration is only executed on the primary
role it depends on primary-grafana-installation.
Closes-Bug: #1585112
Change-Id: Id79eb6680ca725b6f60b82d0e9d43acc61b35fe1
This change makes sure that Grafana is started on the primary node
before running it on the other nodes.
Change-Id: Ia8e501d960a893086122fae27b3a4c17c09c5775
Closes-Bug: #1578183
Previously the LMA collector had an explicit dependency on the last
InfluxDB task but this doesn't work when the InfluxDB/Grafana
plugin isn't deployed in the same environment as the collector plugin.
This change makes sure that the LMA collector plugin's tasks will
only be executed once the InfluxDB cluster is fully functional by
pinning both plugins to a well-known task (update_hosts in that case).
Partial-Bug: #1573087
Closes-Bug: #1578194
Change-Id: I830f024e0d1629ae10a8a504c4acbddf23d5c47e
MOS 9 comes with a new orchestration engine (so-called v2 or task-based
deployement) which reduces greatly the time necessary to deploy new
environments.
This change updates the deployment tasks to be fully compatible with
the v2 engine since when a deployment mixes v1 and v2 tasks, the engine
falls back to the v1 (slower) mode.
Note that we need to keep the backward compatibility with MOS 8 so the
deployment tasks still define the v1 attributes like 'requires' and
'required_for'.
Change-Id: I5df3e649b2f31f2e1a5ccd59f346d870651315d5
This patch adds a new manifest to replace the one that is used from
osnailyfacter. We cannot use the manifest provided by fuel-library
because it has been rewritten and it is not compatible with our
deployment: it assumes a fixed VIP naming schema that is specific
to the controllers.
Partial-Bug: #1554521
Change-Id: Ibcac60dc89787500b931296e94739e692b544cdd
This change drops the download of the fuel-library Puppet modules into
the plugin package. Instead the Puppet tasks look for Puppet modules
first in the plugin's path and alternatively in the default
/etc/puppet/module path.
Change-Id: I6177ab156f515729840a95cb7b7d08f1f7691f3e
This change makes sure that the no-quorum-policy parameter is 'stop'
when there are at least 3 nodes and 'ignore' otherwise.
Change-Id: If65beaa9dbff0f52b3b369d9763d8b52ff110bfd
This change makes sure that Pacemaker and HAProxy are reconfigured on
the nodes that are already deployed when the environment is scaled up
or down. We use a mixture of update_required (for scale-up operations)
and reexecute_on (for scale-down operations).
Closes-Bug: #1536533
Change-Id: If3040b3846ded9525c5be78ba5407de4a4ea50e5
This change uses lma::corosync_roles to configure corosync/pacemaker
cluster and it renames hiera-override.pp to hiera.pp to be consistent
with other plugins.
Change-Id: Ic1100d5766c9d85774962abd9a1369f95238308c
This change adds a class to be able to create an admin user and it also
creates a defined type to create database and its associated user.
This allows the creation of the LMA database when InfluxDB cluster is
up and ready.
Implements: blueprint influxdb-clustering
Change-Id: I5e40ff510385f867d26b77a2af5ed278a0f9cc15
- Allow to deploy three influxdb_grafana nodes at most
- Add firewall rule to allow traffic between the nodes of the raft
cluster
- Create a VIP
- Create a file /etc/hiera/plugins/influxdb_grafana.yaml that contains
information about nodes that belong to the raft cluster and the VIP
- Install and configure HAProxy
Implements: blueprint influxdb-clustering
Change-Id: I0852da40d709563adc8b89bbad240ae89dfa862e
- Use plugin version 3.0.0 and remove compatibility with MOS 6.1
- Leverage common tasks to configure disk and network
Change-Id: I5175c577e54e0b41b5e60e136d025f1781a2a45b