This patch adds support for deploying the ML2/Open Virtual Network (OVN)
plugin for Neutron to an MNAIO deployment. A new var,
osa_enable_networking_ovn, can be set to lay down the appropriate bits.
Change-Id: Ib5bd4e0c20be62ddbf0bff13c91d1918907bf230
The ns.enabled generators will fail when running packetbeat with a limit.
These generators were dynamically enabling/disabling packetbeat features
based on things discovered in the environment however they we're
attempting to be a little to fancy, especially when running packetbeat
in a non-osa cloud. The values for the services have been reset to the
provider defaults and should teh deployer want to configure these option
they can use config_template.
Change-Id: I36d7298ca5142e8b5f926ab5d59ab8283704b5af
Signed-off-by: Kevin Carter <kevin@cloudnull.com>
This change allows the embedded ansible process to be configurable by
the end user.
* Python requirements and ansible roles will all now be user
configurable.
* Setup is now a local only playbook. This playbook replaces the bash
commands we were rerunning when the `bootstrap-embedded-ansible.sh`
script was executed.
* Embedded ansible version is now 2.7.5 as default.
* Deprecation warnings have been resolved.
* Tests impacted by this change have been updated.
Change-Id: I4303c44e249cda31457a4f05a681e298d225a8b7
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
The journalbeat playbook uses conditionals to know when to deploy the
journalbeat collector. This change makes it so the playbook simply exits
when the journal is not found or the environment being deployed is not
using systemd. This change will result in faster deployments in mixed
environments as the role will no longer need to iterate over its
conditional.
Change-Id: I581b61902723f54237623036566a83c9be79210e
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
This change reduces code throughout the playbooks thereby speeding up
the task execution.
* A new role named `elastic_beat_setup` was created to
facilitate template setup as needed.
* Beats retention policies are now defined on the elastic-logstash
nodes instead of on all target hosts. This method will speed-up
deployments on massive installations while streamlining all deployments.
* Kibana variable assumptions have been fixed. This will allow for
deployments without Kibana to be accomplished.
Change-Id: I36343264042e81dfcb68bad0f6c3a503e525eceb
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
These options could be "undefined" which is an object and not json
serializable. This change ensures if an option is undefined it defaults
to an empty set which will allow the option to be json serialized.
Change-Id: I1a81bafa441aa6400bfbec50d57e56df4d09bda3
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
The template creates can take a lot of time when dealing with large data
sets. This change makes it so template create will only happen on a
greenfield installation or when upgrading. A simple rerun of the
playbooks will not trigger template creations which will allow deployers
the ability to better change or modify deploymens without having to
worry about extended runtimes due to template interactions.
Change-Id: Ia9b77277553fbdbe0444737f39ec3de75f07cc0f
This change makes it possible for a deployer to modify the set of
indexes and weights assosiated with them. If modified, the local
facts will be automatically updated.
Change-Id: Iaea1f22d8aad2abdd02801dd9acad5f969b78d0e
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
When ceph prometheus metrics are auto discovered the metricbeat config
should point to the ceph mgr prometheus port. Adding missing
brackets around metricset so the default is treated as an array.
Dropping ceph dir detection for prometheus auto discover and relying on
is the port availability and inventory group only.
Change-Id: Iaba0fdece00414e17bc172f39e624374a9d273e8
These changes allow users to leverage newer versions of ansible with
sane defaults providing a consistent user experience. Things like
retries, host key checking, and pipelinning are not generally set
by default and when left unset these options can create an
inconsistent experience with intermittent failures.
The plugins repo checkout was updated to resolve issues with newer
versions of ansible requiring SFTP options to be set.
** The cluster jobs have been commented out for the time being.
we're seing lots of timeouts with them and it doesn't make
sense to keep consuming resources for jobs that are known
fail due to timeout issues.
Change-Id: Ia103b2b31b7dcd540db977ae7c2d486c80bbdffe
Signed-off-by: cloudnull <kevin.carter@rackspace.com>
This change makes the retention gathering operation faster by storing
the retention values as "local facts". The local facts are then
referenced in templates loading from the local fact file instead of
running repetitive queries which are slow making very large deployments
cumbersome. To make the retention policy fact gathering process smarter
it will now automatically refresh if undefined or should the
elasticsearch cluster size change. This will ensure we're improving
speed of execution while also catering to the needs of deployers to
grow, or shrink, elasticsearch cluster sizes.
Documentation has been added regarding the new option and why it may be
of use to depoyers.
Change-Id: I3936ee94461ac39fb8bc78dc2c873e6067552461
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
Copies the openstack-release file to another location
so that the original version being upgraded can be referenced
in the event of a failure where openstack-setup-hosts has
replaced the openstack-release file. That way the list
of versions to upgrade is correct upon re-running the
leapfrog upgrade script.
Change-Id: I63de16bf27813dd623e996a5ac5de7bb8f8668b6
vmx flag was not passed in to the guest, so test VMs failed to boot on
compute2. With host-passthrough the cpu flags are unfiltered.
Change-Id: I1a4607ba5bc96c92512a2f4aa43df51f7eef6b27
On occasion, a set of saved images may not have a gvwstate.dat file.
Given that the MNAIO tooling is for test purposes only, we can take
the risk of just making one up in order to ensure that the cluster
starts on boot. DO NOT DO THIS IN PRODUCTION!
Change-Id: I1b055ef0d02d77afe03d1a90baa2e6890e986c32
openstack-dev was decomissioned this night in https://review.openstack.org/621258
Update openstack-dev to openstack-discuss
Change-Id: I8927e9a27ad9b249639955c6bd44ba4f86a3c0fc
There is no 'functional' tox env, so the 'functional'
test run by zuul re-runs lint again. Rather than waste
resources we remove the common template and just add
the linters job.
Change-Id: Ibb5152b4d7f731aebbeab46ac4ccd38658cd30a1
Given the leapfrog branches are all EOL and frozen, an operator
may need to make changes to branches on a local repo in order to combat
bit rot over time.
Change-Id: Ia8214a273b38418808b063b0192bbf81bf455daf
In order to allow testing within OpenStack-CI, we need to cater
for the ability to run the tooling without a secondary data disk.
This patch changes the tooling to try the detection, and if there
is no secondary disk it will just use the root disk for /data/images.
Change-Id: I56d76e68b6914b3e12948b022e0e702557684c50
This patch resolves the warning about using jinja braces
the conditional for the guestfish workaround task. While
doing so, the task is made idempotent and we also ensure
that the task that follows exits immediately on any errors.
Change-Id: I7ec254a96312e07229b0a5c799d4a98b5d9c8957
This change updates the roles / playbooks to begin using Elasticsearch
relesae 6.5.x. Core to this change is the conversion of the journalbeat
role from custom compiled go, to simple package install which was made
possible by the folks at elastic within this release. Because of the
conversion the "beats-community" playbook has been removed given its now
empty.
A change to the bootstrap script was made allowing it to parse an OS id
with a "-" in it, like "opensuse-tumbleweed".
Change-Id: Ic9b80234d6a6ce876bff885f3223874602d55dd6
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
This commit enables overriding the default storage options of
cinder/swift to a Ceph backed storage for the multinode all in one
deployments.
We also correct the README and build.sh script to show/use the
current defaults correctly for VM_DISK_SIZE and INFRA_VM_SERVER_RAM.
Change-Id: I9e1f1b09d1bcf224f4afa765c585baf28e6cafa8
The cluster gatting job was failing due to memory locking, which is
impossible due to limited resources in the CI environment. This change
disables memory locking in the clustered gate test.
Change-Id: I0a146c41a1b82425539e014b1baee2011d464e05
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
Add to elk_metrics_6x the capability to auto discover the ceph mgr
prometheus plugin metric port. Pull ceph metrics from prometheus when
the plugin is enabled.
Change-Id: I530a99f42e396ba7b2cd2c1b3d587f528ef84242
Before enabling the metricbeat ceph module, first check that the
restapi port is up and responding.
Change-Id: Ic795df02b93ca22c19fe67d6d2319889dc0f06a0
Fix the failing elk_metrics_6x tests by changing the ansible venv path
to ~/ansible_venv. Update tests to ensure when the bootstrap ansible
script changes both osquery and elk_metrics_6x tests are run.
Change-Id: Ic79c52ae21294373ca67be264fd287fdf32b4c9a
With the switch to systemd-networkd the veth pairs for flat networking
and lbaas aren't created. This creates veth pairs if the server has the
appropriate server_networks defined.
* Create the veth network files
With this simple Match directive networkd will bring the interface up.
Change-Id: I0ae4375be128594a861c18aa33a98378859dd9d3
Due to [1] the task 'Create data cinder-volumes group' is currently
failing when run on a restored image due to the idempotence failure.
In this patch we enable pinning the requirements file and plugins
repo to a different OSA branch, and set it to stable/rocky which is
currently pinned to Ansible 2.5.10 and does not exhibit this issue.
[1] https://github.com/ansible/ansible/issues/47301
Change-Id: Id0f98f3ea0f53173dae800d45f1a4554c8a0c38a
In https://review.openstack.org/611582 we removed
the legacy group as it has been deprecated since
Newton, however it appears to still be used by some
downstream tests, so we add it back, but make it
only get implemented if the associated services
are enabled.
Change-Id: I477a46d606d75d44a1ecd5bcfcb29c8308c65245