You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This collection installs and manages the Elastic Stack. It provides roles every component which is part of the Stack. Furthermore it is possible to differentiate between Enterprise or OSS releases. Every role is documented with all variables, please refer to the documentation found in **[Getting-Started](./docs/getting-started.md)**
4
4
5
-
## Roles
5
+
6
+
7
+
## Roles Documentation
6
8
7
9
*[Beats](docs/role-beats.md)
8
10
*[Elasticsearch](docs/role-elasticsearch.md)
9
11
*[Kibana](docs/role-kibana.md)
10
12
*[Logstash](docs/role-logstash.md)
11
13
*[Repos](docs/role-repos.md)
14
+
15
+
## Installation
16
+
17
+
You can easily install the collection with the ansible-galaxy command.

5
5
6
6
This role installs and configures Beats. You can use it as a standalone role or combine it with our other roles managing the Elastic Stack.
7
7
8
8
Requirements
9
9
------------
10
10
11
-
You need to have the beats you want to install available in your software repositories. We provide a role for just that but if you have other ways of managing software, just make sure it's available. Alternatively you can install the Beats yourself.
11
+
You need to have the beats you want to install available in your software repositories. We provide a [role](./role-repos.md) for just that but if you have other ways of managing software, just make sure it's available. Alternatively you can install the Beats yourself.
12
12
13
13
Role Variables
14
14
--------------
15
15
16
16
**beats_filebeat*: Install and manage filebeat (Default: `true`)
17
-
**beats_filebeat_version*: Install specific version (Default: none. Possible values: e.g. ``-7.10.1` for RedHat compatible systems or `=1:7.10.1-1` for Debian compatible systems or `latest`)
17
+
**beats_filebeat_version*: Install specific version (Default: none. Possible values: e.g. `-7.10.1` for RedHat compatible systems or `=1:7.10.1-1` for Debian compatible systems or `latest`)
**filebeat_output*: Set to `logstash` or `elasticsearch`. (default: `logstash`)
20
20
**filebeat_syslog_udp*: Use UDP Syslog input (Default: `false`)
@@ -26,12 +26,14 @@ Role Variables
26
26
**filebeat_log_inputs*: Logfiles to read (Default: see below)
27
27
28
28
Default of `filebeat_log_inputs`
29
+
29
30
```
30
31
messages:
31
32
name: messages
32
33
paths:
33
34
- /var/log/messages
34
35
```
36
+
35
37
You can optionally add `fields` to every input as well. You can also add a `multiline` section with options (`type`, `pattern`, `negate` and `match` so far)
36
38
37
39
Here's a longer example for an input:
@@ -51,7 +53,7 @@ filebeat_log_inputs:
51
53
```
52
54
**filebeat_journald*: Enable collection of JournalD logs (default: `false`) - available since Filebeat 7.16
53
55
**filebeat_journald_inputs*: List of journald inputs. Use for different filters on events. You can add a list of `include_matches` entries for filtering.
54
-
Default of `filebeat_journald_inputs:
56
+
Default of `filebeat_journald_inputs`:
55
57
```
56
58
filebeat_journald_inputs:
57
59
everything:
@@ -63,14 +65,14 @@ filebeat_journald_inputs:
63
65
**filebeat_loadbalance*: Enable loadbalancing for Filebeats Logstash output (default: `true`)
64
66
65
67
**beats_auditbeat*: Install and manage filebeat (Default: `false`)
66
-
**beats_auditbeat_version*: Install specific version (Default: none. Possible values: e.g. ``-7.10.1` for RedHat compatible systems or `=1:7.10.1-1` for Debian compatible systems or `latest`)
68
+
**beats_auditbeat_version*: Install specific version (Default: none. Possible values: e.g. `-7.10.1` for RedHat compatible systems or `=1:7.10.1-1` for Debian compatible systems or `latest`)
67
69
**auditbeat_output*: Output for Auditbeat Set to `logstash` or `elasticsearch`. (default: `elasticsearch`)
**auditbeat_setup*: Run Auditbeat Setup (Default: `true`) (Only works with Elasticsearch output)
70
72
**auditbeat_loadbalance*: Enable loadbalancing for Auditbeats Logstash output (default: `true`)
71
73
72
74
**beats_metricbeat*: Enable installation and management of Metricbeat (Default: `false`)
73
-
**beats_metricbeat_version*: Install specific version (Default: none. Possible values: e.g. ``-7.10.1` for RedHat compatible systems or `=1:7.10.1-1` for Debian compatible systems or `latest`)
75
+
**beats_metricbeat_version*: Install specific version (Default: none. Possible values: e.g. `-7.10.1` for RedHat compatible systems or `=1:7.10.1-1` for Debian compatible systems or `latest`)
**metricbeat_output*: Set to `logstash` or `elasticsearch`. (default: `elasticsearch`)
76
78
**metricbeat_modules*: List of modules to enable. (Default: `- system`)
@@ -88,7 +90,7 @@ filebeat_journald_inputs:
88
90
89
91
The following variables only apply if you use this role together with our other Elastic Stack roles.
90
92
91
-
**elastic_stack_full_stack*: Use `ansible-role-elasticsearch` as well (default: `false`)
93
+
**elastic_stack_full_stack*: Use `elasticsearch` as well (default: `false`)
92
94
**elastic_variant*: Define which variant of elastic stack to use. (default: `elastic`)
93
95
**elastic_ca_dir*: Directory where on the Elasticsearch CA host certificates are stored. This is only useful in connection with out other Elastic Stack related roles. (default: `/opt/es-ca`)
94
96
**elastic_ca_pass*: Password for Elasticsearch CA (default: `PleaseChangeMe`)
@@ -102,17 +104,17 @@ If you want to use this role with your own TLS certificates, use these variables
102
104
**beats_tls_key_passphrase*: Passphrase of the keyfile (default: `ChangeMe`)
103
105
**beats_tls_cacert*: Path to the CA.crt (default: `{{ beats_ca_dir }}/ca.crt`)
104
106
107
+
## Usage
105
108
106
-
Dependencies
107
-
------------
108
-
109
-
None yet
110
-
111
-
Example Playbook
112
-
----------------
113
-
114
-
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
This role installs Elasticsearch on your hosts. Optionally it can configure Elastics Security components, too.
4
+

5
5
6
-
If you use the role to set up security you can use its CA to create certificates for Logstash and Kibana, too.
7
-
8
-
Requirements
9
-
------------
6
+
This role installs manages Elasticsearch on your hosts. Optionally it can configure Elastics Security components, too.
10
7
11
-
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
8
+
If you use the role to set up security you can use its CA to create certificates for Logstash and Kibana, too.
12
9
13
10
Role Variables
14
11
--------------
@@ -30,17 +27,16 @@ These variables are identical over all our elastic related roles, hence the diff
30
27
**elastic_release*: Major release version of Elastic stack to configure. (default: `7`)
31
28
**elastic_variant*: Variant of the stack to install. Valid values: `elastic` or `oss`. (default: `elastic`)
32
29
33
-
34
-
Dependencies
35
-
------------
36
-
37
-
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
38
-
39
-
Example Playbook
40
-
----------------
41
-
42
-
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:

5
5
6
6
This roles installs and configures Kibana.
7
7
8
-
Requirements
9
-
------------
10
-
11
-
You need to have the Elastic Repos configured on you system. You can use our [role](https://github.com/widhalmt/ansible-role-elastic-repos) for that but you don't have to.
12
8
13
9
Role Variables
14
10
--------------
@@ -34,22 +30,17 @@ These variables are identical over all our elastic related roles, hence the diff
34
30
35
31
If you use `localhost` in `kibana_elasticsearch_hosts` , certificate verification will skip hostname checks
36
32
37
-
Dependencies
38
-
------------
39
-
40
-
There's no real dependency but you might want to use this role together with our other Elastic Stack related roles:

5
5
6
6
This role installs and configures [Logstash](https://www.elastic.co/products/logstash) on Linux systems.
7
7
@@ -18,7 +18,7 @@ Requirements
18
18
19
19
*`community.general` collection
20
20
21
-
You need to have the Elastic Repos configured on your system. You can use our [role](https://github.com/widhalmt/ansible-role-elastic-repos) for that but you don't have to.
21
+
You need to have the Elastic Repos configured on your system. You can use our [role](./role-repos.md)
22
22
23
23
If you want to use the default pipeline configuration you need to have `git` available.
24
24
@@ -85,21 +85,14 @@ The following variables only apply if you use this role together with our Elasti
85
85
**elastic_ca_dir*: Directory where the CA and certificates lie on the main Elasticsearch host (default: `/opt/es-ca`)
86
86
**elastic_initial_passwords*: File where initial passwords are stored on the main Elasticsearch host (default: `/usr/share/elasticsearch/initial_passwords`)
87
87
88
-
Dependencies
89
-
------------
90
-
91
-
This role has no dependencies. As mentioned above you might want to use another role to install Redis
92
-
93
-
Example Playbook
94
-
----------------
95
-
96
-
This is a simple sample playbook which first uses an Ansible role to install Redis and afterwards install and configure Logstash.
97
-
98
-
- hosts: logstash
99
-
roles:
100
-
- geerlingguy.redis
101
-
- logstash
102
-
103
-
104
-
105
-
This role was created in 2019 by [Netways](https://www.netways.de/).
0 commit comments