cookbook 'graylog2', '= 0.2.1'
graylog2
(64) Versions
0.2.1
-
-
4.0.0
-
3.1.2
-
3.1.1
-
3.0.2
-
3.0.1
-
3.0.0
-
2.4.5
-
2.4.4
-
2.4.1
-
2.3.1
-
2.3.0
-
2.2.6
-
2.2.5
-
2.2.4
-
2.2.3
-
2.2.2
-
2.2.1
-
2.2.0
-
2.1.4
-
2.1.3
-
2.1.2
-
2.1.1
-
2.1.0
-
2.0.5
-
2.0.4
-
2.0.3
-
2.0.2
-
2.0.1
-
2.0.0
-
1.3.2
-
1.2.3
-
1.2.2
-
1.2.1
-
1.2.0
-
1.1.6
-
1.1.5
-
1.1.3
-
1.1.2
-
1.1.1
-
1.1.0
-
1.0.5
-
1.0.4
-
1.0.3
-
1.0.2
-
1.0.1
-
1.0.0
-
0.3.9
-
0.3.8
-
0.3.7
-
0.3.6
-
0.3.5
-
0.3.4
-
0.3.3
-
0.3.2
-
0.3.1
-
0.3.0
-
0.2.3
-
0.2.2
-
0.2.1
-
0.2.0
-
0.1.0
-
0.0.5
-
0.0.4
-
0.0.3
Follow90
- 4.0.0
- 3.1.2
- 3.1.1
- 3.0.2
- 3.0.1
- 3.0.0
- 2.4.5
- 2.4.4
- 2.4.1
- 2.3.1
- 2.3.0
- 2.2.6
- 2.2.5
- 2.2.4
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2.0
- 2.1.4
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.3.2
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.6
- 1.1.5
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- 0.3.9
- 0.3.8
- 0.3.7
- 0.3.6
- 0.3.5
- 0.3.4
- 0.3.3
- 0.3.2
- 0.3.1
- 0.3.0
- 0.2.3
- 0.2.2
- 0.2.1
- 0.2.0
- 0.1.0
- 0.0.5
- 0.0.4
- 0.0.3
Installs and configures Graylog - maintained by Graylog, Inc.
cookbook 'graylog2', '= 0.2.1', :supermarket
knife supermarket install graylog2
knife supermarket download graylog2
Description
This Chef cookbook installs and configures the Graylog2 log management system.
It is using the official installation packages provided by Torch. It needs as requirement an installation of Java, Elasticsearch and MongoDB.
Usage
Recipes
The cookbook contains several recipes for different installation setups. Pick only the recipes
you need for your environment.
Recipe | Description |
---|---|
default | Setup the Torch package repository |
server | Install Graylog2 server |
web | Install Graylog2 web interface |
radio | Install a Graylog2 radio node |
authbind | Give the Graylog2 user access to privileged ports like 514 (only on Ubuntu/Debian) |
api_access | Use Graylog2 API to setup inputs like 'Syslog UDP' |
In a minimal setup you need at least the default, server and web recipes. Combined with
MongoDB and Elasticsearch, a run list might look like this:
run_list "recipe[java]",
"recipe[elasticsearch]",
"recipe[mongodb]",
"recipe[graylog2]",
"recipe[graylog2::server]",
"recipe[graylog2::web]"
Attributes
Graylog2 runs currently with Java 7. To install the correct version set this attribute:
"java": {
"jdk_version": "7"
OpenJDK and Oracle JDK is both fine for Graylog2
You have to use a certain version of Elasticsearch for every Graylog2 Version, currently
this is 0.90.10. The cluster name should be 'graylog2':
"elasticsearch": {
"version": "0.90.10",
"cluster": {
"name": "graylog2"
}
}
Graylog2 itself needs a secret for encryption and a hashed password for the root user. By default this user is called admin.
You can create the secret with this shell command pwgen -s 96 1
.
The password can be generated with echo -n yourpassword | shasum -a 256
"graylog2": {
"password_secret": "ZxUahiN48EFVJgzRTzGO2olFRmjmsvzybSf4YwBvn5x1asLUBPe8GHbOQTZ0jzuAB7dzrNPk3wCEH57PCZm23MHAET0G653G",
"root_password_sha2": "e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951",
"server": {
"java_opts": "-Djava.net.preferIPv4Stack=true"
},
"web": {
"secret": "ZxUahiN48EFVJgzRTzGO2olFRmjmsvzybSf4YwBvn5x1asLUBPe8GHbOQTZ0jzuAB7dzrNPk3wCEH57PCZm23MHAET0G653G"
}
You can take a look into the attributes file under attributes/default.rb
to get an idea
what can be configured for Graylog2.
Authbind
Ubuntu/Debian systems allow a user to bind a proccess to a certain privileged port below 1024.
This is called authbind and is supported by this cookbook. So it is possible to let Graylog2 listen on port 514 and act like a normal syslog server. To enable this feature just include
the authbind recipe to your run list recipe[graylog2::authbind]
. By default the recipe
will give the Graylog2 user permission to bind to port 514 if you need more than that you can
set the attribute default.graylog2[:authorized_ports]
to an array of allowed ports.
API access
In order to access the API of Graylog2 we provide a LWRP to do so. At the moment we only support
the creation of inputs but the LWRP is easy to extend. You can use the provider in your own
recipe like this:
Include recipe[graylog2::api_access]
to your run list.
graylog2_inputs "syslog udp" do
input '{ "title": "syslog", "type":"org.graylog2.inputs.syslog.udp.SyslogUDPInput", "creator_user_id":"admin", "global": true, "configuration": { "port": 1514, "allow_override_date": true, "bind_address": "0.0.0.0", "store_full_message": true, "recv_buffer_size": 1048576 } }'
end
or you can put the same JSON into an array and set it as an attribute:
"graylog2": {
"inputs": ["{ \"title\": \"syslog\", \"type\":\"org.graylog2.inputs.syslog.udp.SyslogUDPInput\", \"creator_user_id\":\"admin\", \"global\": true, \"configuration\": { \"port\": 1514, \"allow_override_date\": true, \"bind_address\": \"0.0.0.0\", \"store_full_message\": true, \"recv_buffer_size\": 1048576 } }"]
}
License
Author: Marius Sturm (marius@torch.sh) and contributors
License: Apache 2.0
Dependent cookbooks
authbind >= 0.1.8 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.