739 Commits

Author SHA1 Message Date
Kevin Carter
b9fa34d42e Add syslog input into logstash
The new option logstash_syslog_input_enabled has been added which will
allow users to enable a direct syslog input. When enabled, messages will
be processed via logstash and sent directly to elasticsearch.

Change-Id: Icb7712ecb8aae3d7f99df80ae1c5cd647a15ce83
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-08-11 03:08:32 -05:00
Kevin Carter
79c3a3cf93
Add trusty support to the project
This change adds Ubuntu 14.04 support to the project.

Change-Id: I20695e19409b63c6e1def4ccf8929c6d52be647e
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-08-11 00:00:03 -05:00
4474a40989 Update reno for stable/rocky
Change-Id: Ibe2b57bd0ca239e5c5581f7a3053ed07a618d174
2018-08-10 16:45:39 +00:00
Zuul
340e2243c6 Merge "Add bionic job to elk_metrics_6x testing" 2018-08-09 19:12:37 +00:00
Zuul
ce54ff8bee Merge "Remove hardening from leap upgrades" 2018-08-09 18:48:21 +00:00
Zuul
7da963029c Merge "Remove destroy reminent grouped containers" 2018-08-09 17:24:02 +00:00
Kevin Carter
6aa88dd7b7
Add bionic job to elk_metrics_6x testing
Change-Id: I67bbfa116c45a82eb8b5bc191d19d203493f0b00
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-08-09 00:44:32 -05:00
Kevin Carter
3a0b3d2cde
Convert playbooks into roles
This change adds the scaffolding required to get multi-distro support
running in the roles. The change breaks up our playbooks converting all
of the tasks into various roles with internal dependencies. While this
will improve execution time, the change is being done to reduce boiler
plate and to allow us to build on the pattern used in OSA to provide
multi-distro capabilities.

A side effect of this change is a major improvement in idempotency. The
playbooks should now be 100% idempotent.

All of the templates have been left in the main playbook directory. This
was done to help ease the transition. In a future PR the template
structure will be moved into the roles where it needs to be.

The main variable files has been left intact. This file will be carved
up into role defaults in a future PR.

Change-Id: I938a10564128ce4078fa12edcf614dcdbd684b25
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-08-09 00:41:05 -05:00
Antony Messerli
852e0329a7 Remove hardening from leap upgrades
In order to reduce time to run and avoid complexities
from older environments that may have specific
requirements or devations from recommended practices,
disable the hardening play during the leap upgrades.

If security-hardening is desired, the recommendation for operators
is to run hardening after the upgrade has completed.

Change-Id: I85865a39e84e65ac211c1077f484bf008673c840
2018-08-06 15:07:14 -05:00
Antony Messerli
368b9c0137 Remove destroy reminent grouped containers
This was a provider specific command which can be
removed as it could remove unintended containers.

Change-Id: I179565f84fd8176cbcb79eacc8e63e0fef554223
2018-08-06 14:54:59 -05:00
Kevin Carter
ca23f9a987 Update index retention policy to ensure its an int
The current variable, when there's only one host will result in 'false'
instead of 0, which is a jinja-ism however due to java-ism's "false" is
evaluated to 5 and that makes the index retention policy very wrong.

Change-Id: I2668e17c1cf15fe47842ff349ffa4f71c70257e5
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-08-03 02:21:02 +00:00
Zuul
1700a81291 Merge "correct typo" 2018-08-02 17:42:55 +00:00
Kevin Carter
393fe9d42a
correct typo
The fleet env.d config had a typo in it which would causing a failure
within OSA dynamic inventory. This corrects the issue.

Change-Id: I36016f4733a8800adbcce71abbb290ab4a24798b
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-08-02 09:42:28 -05:00
Zuul
200e1dbe4c Merge "Convert logstash groks to a multi-pipeline setup" 2018-07-31 07:15:15 +00:00
Zuul
eb29d99642 Merge "Undefine existing VM configurations during rebuild" 2018-07-31 06:19:26 +00:00
root
cebc05a8d9 Delete duplicate 'Release notes' in README
Change-Id: Ie0989062ee3ab28bf8fc4d096899826254a8df65
2018-07-28 11:23:55 +00:00
Zuul
050fdbc880 Merge "Make index retention calculation pluggable" 2018-07-28 08:29:46 +00:00
Kevin Carter
b6343c57a4
Convert logstash groks to a multi-pipeline setup
The logstash groks were running in line using the legacy method which uses
lexical sorting of all logstash filter files and loads them in order. While
this works it makes it so all data has to travel through all filters.
This change makes use of the logstash multi-pipeline capabilities
using a distributor and fork pattern. This allows data to flow through
logstash more quickly and not block whenever there's an issue with an
output plugin.

Finger-prints using SHA1 when there's a message and UUID when not. This
will ensure we're duplicating log entries which will help speed up
transations and further reduce the storage required.

Change-Id: I38268e33b370da0f1e186ecf65911d4a312c3e6a
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-27 12:04:05 -05:00
Jonathan Rosser
eeb2e5a853 Make index retention calculation pluggable
This allows alternate algorithms to be developed and enables the
same tasks to be included in a test to verify the planned retention
does not exceed the cluster storage capacity.

Change-Id: Ie3d80d6cfad16b946ccd790859bc7cd92b90fdef
2018-07-26 21:47:44 +01:00
Zuul
a0780fb582 Merge "Further tune the playbooks, configs, and thread pool" 2018-07-26 20:37:01 +00:00
Kevin Carter
f69d391325 Further tune the playbooks, configs, and thread pool
* Implements G1 GC optionally. The variable `elastic_g1gc_enabled` has
  been added with a default of false. If this option is set true and the
  system has more than 4GiB of RAM G1GC will be enabled.
* Adds new thread options
* Better constraints coordination nodes
* Interface recover speed has been limited
* Buffer size is now set correctly
* Serialize elk deployment so that upgrades are non-impacting

Change-Id: I89224eeaf4ed29c3bb1d7f8010b69503dbc74e11
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-26 18:43:13 +00:00
Kevin Carter
7b2e56885b Add arcsight ingestion into logstash
Logstash is able to handle arcsight events, this PR enables that
capability.

Change-Id: Id220c671cc5d7cb7ee33fb53e2ae4185d579fc2a
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-26 13:09:53 -05:00
Zuul
f09f055020 Merge "Adds Support for MNAIO CentOS 7 Environment" 2018-07-26 16:20:57 +00:00
Jonathan Rosser
39e9905d00 Allow mounting of shared filesystems for index backup/restore
Change-Id: I6590bd0b7560fe42bd82d1a8aa7932a45f067ca5
2018-07-25 17:01:32 +01:00
Zuul
c495a6f3df Merge "Adds tweaks to run MNAIO on Ubuntu 18.04" 2018-07-25 03:31:12 +00:00
Zuul
506518a638 Merge "Correct kafka template file name" 2018-07-25 02:17:21 +00:00
Kevin Carter
4ab532b391 Correct kafka template file name
Change-Id: I7a658b31a2163519b1fdf7abb46cadbefcb4369a
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-24 20:32:56 -05:00
Kevin Carter
720c608011 Add unified setup and beat config
The beats were all enabled with the default settings to enable
dashboards and templating when the specific beat starts. In a large
scale environment this creates a DDOS against Kibana as all beats begin
uploading templates and dashboards clobbering one another. This change
moves the dashboard config into a common template and sets everything
using sane defaults so that we're not inadvertently killing our clusters
when rolling restarts happen, like in the event of an upgrade.

Change-Id: Ib48ea34a350335b72c3e3df941853c405072446a
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-24 18:34:44 -05:00
Zuul
230ea3a7bf Merge "Add xpack monitoring to the beats" 2018-07-24 21:40:37 +00:00
Zuul
72d1de3888 Merge "update default kibana elastic timeout" 2018-07-24 21:37:55 +00:00
Zuul
1957e959b3 Merge "Update task name" 2018-07-24 21:15:51 +00:00
Zuul
aaefe5c2db Merge "Add logrotate to the elasticstack" 2018-07-24 20:29:29 +00:00
Zuul
b62304f6be Merge "Update retention policy weighting" 2018-07-24 19:55:46 +00:00
Kevin Carter
c2c85215e6 Add xpack monitoring to the beats
This change adds the xpack monitoring capabilities to all of the core
beats we deploy.

Change-Id: Ib09388b83e18953cb180cdb93fec34e5917cc82c
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-24 14:16:44 -05:00
Victor Palma
08a5f02a78 update default kibana elastic timeout
* set the default elasticsearch request timeout to 60 seconds

Change-Id: Ieac2c96315bbbcfe7cc2d2bff42d2ee15f23fb0b
2018-07-24 13:09:25 -05:00
Kevin Carter
9a20bfc49b Update task name
Change-Id: Ia0eb105a6200104590ffb9c2f35b93a96ffb66ef
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-24 12:43:25 -05:00
Kevin Carter
f7aad4832f Update retention policy weighting
This change adds retention policy weighting based on experience with the
indexes in production in large scale clouds.

Change-Id: I0d09d4cfc68f70fe790170d5d54f1585616c5524
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-24 09:46:42 -05:00
Kevin Carter
5564e7a9cb
Correct retention days
There was an error where the rention days was 2x greater than it was
supposed to be.

Change-Id: I9e9451e4381a32c0b2857eb75689561d3517b8d7
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-24 09:35:53 -05:00
Antony Messerli
c3e04a5106 Adds Support for MNAIO CentOS 7 Environment
* Adds support for provisioning a Multi Node AIO using
  CentOS 7.
* Cleans up older MNAIO/Compute/Infra image configs
* Increases LB/Logging/Swift VM ram to allow for CentOS rootfs
  to load into RAM. (1GB to 2GB)
* Uses systemd-network networking for configuring network/bridges
* Adds keymap to kvm configuration to alleviate keyboard issues in
  virt-manager
Change-Id: I54d903e7c1c70882e8b20a9cef4eafb42be46770
2018-07-24 09:31:11 -05:00
Kevin Carter
dc68c35a4c Ensure "elastic_thread_pool_size" is cast to int
The variable elastic_thread_pool_size is expected to be an integer
however setting it as a fact and using it later results in it being a
string which creates unexpected results when the string has math applied
to it.

Change-Id: I339792c80378c86f785462a318a2565e946c7515
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-24 00:30:59 -05:00
Kevin Carter
62b8c8b45d Add logrotate to the elasticstack
To ensure we're not creating too many logs files the logrotate config
has been added to truncate and compress log files every other day
with a max retention priod of 5 days.

Change-Id: I0dd85a334dba48e9fce3aad67ead867e2f46cb02
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-23 22:17:23 -05:00
Zuul
82182589f0 Merge "Update sharding based on data-nodes" 2018-07-24 02:51:36 +00:00
Zuul
a1b03b4599 Merge "Add x-pack monitoring by default" 2018-07-24 00:24:15 +00:00
Zuul
35a9693e3b Merge "Add facts to better optimize thread pools" 2018-07-24 00:17:33 +00:00
Kevin Carter
d6c0fc9613
Add x-pack monitoring by default
This change adds xpack monitoring by default for kibana, logstash, and
elasticsearch.

Change-Id: I03c8b8390d33bb996201671aae481415bfc1e691
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-23 15:29:13 -05:00
Kevin Carter
9170f7084f
Add facts to better optimize thread pools
The ansible thread pool is supposed to be based on available processor
cores and not hyper-threads. This change updates our settings which will
allow the cluster to run generally better and give us more control over
JVM memory usage.

Change-Id: Ie19e31689c9b18ee2071b3e6fb8e725694fb7897
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-23 14:38:46 -05:00
Kevin Carter
2853b68712 Update sharding based on data-nodes
Sharding should be reflective of the data-nodes within the environment.

Change-Id: I353e297ff2f952214fc8876c2330d690b6597ba8
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-07-23 19:36:07 +00:00
Antony Messerli
fec5aa8f20 Adds tweaks to run MNAIO on Ubuntu 18.04
Drops python-software-properties package as it
doesn't appear to be in the Bionic build.

Change-Id: I70ee08b69374e7e61a6ac3344a93f119748941e9
2018-07-23 14:10:45 -05:00
Antony Messerli
ef560373e3 Undefine existing VM configurations during rebuild
Allows for configuration changes to be redeployed on a
rebuild where previously it didn't attempt to update
the VMs configuration.
`

Change-Id: If14dbdfe7ba3e69a50127fa724ad3f2a8ed58c1a
2018-07-23 13:59:27 -05:00
Zuul
73b0858b5f Merge "Add the project source code repository in README" 2018-07-23 15:16:04 +00:00