|
1 | 1 | ELLK Cookbook |
2 | 2 | ============ |
3 | 3 |
|
4 | | -[](http://forthebadge.com) |
5 | | - |
6 | 4 | hack friendly: Elasticsearch, Logstash, Logstash-forwarder and Kibana |
7 | 5 |
|
8 | 6 | *note: expects consumer to install java and handle certs* |
9 | 7 |
|
10 | | -Support and Tested |
11 | | ------------- |
12 | | -centos66 |
| 8 | +Works with anything [ARK](https://github.com/burtlo/ark) and [RUNIT](https://github.com/hw-cookbooks/runit) can handle. |
13 | 9 |
|
14 | 10 | Requirements |
15 | 11 | ------------ |
16 | 12 | - chef 11+ |
17 | 13 | - some kind of java |
18 | | -- see [metadata](/metadata.rb) for complexity |
| 14 | +- see [metadata](https://github.com/dearing/ellk/metadata.rb) for complexity |
19 | 15 |
|
20 | 16 | About |
21 | 17 | ------------ |
22 | | -The mindset for this creation is that logstash-forwarder is pleasant enough |
23 | | -to cast out to all your resident nodes and since messing with templates is a pain, |
24 | | -it allows you to just provide a hash to template out the configuration. Making |
25 | | -recipes easier to configure with. |
26 | | - |
27 | | -Next in the chain are the `logstash` nodes. Typically, I'd imagine them to be 1:1 with all |
28 | | -`elasticsearch` nodes also created by this LWRP; so `localhost` is a default output. Otherwise, |
29 | | -the matra of this design is if defaults don't work, `source` your consuming cookbook with your own |
30 | | -templates copied from this cookbook. Pass any optional config vars you want in your templaes with |
31 | | -`conf_options` attribute and hack away. |
32 | | - |
33 | | -This is hack friendly and mainly focused on getting you a framework |
34 | | -to work by. The heavy lifting comes from ARK and RUNIT cookbooks; everything else is template |
35 | | -manipulation. Any discovery trickeness should be handled at the consuming recipe. |
36 | | - |
37 | | -See [ellktest](/test/cookbooks/ellktest/recipes/default.rb) as an example. |
| 18 | +The heavy lifting comes from [ARK](https://github.com/burtlo/ark) and [RUNIT](https://github.com/hw-cookbooks/runit) cookbooks with a focus around being able to pass optional configurations via merged hashsets for templates and environment variable sets. Meditate on the idea that this library is simply providing a common installation and templating for the 4 projects. It expects you to do all the tweaking and configuring as needed because attempting to account for all is untenable. The opinion is then that you would want logstash-forwarder on all nodes communicating to your logstash endpoints. Logstash-forwarder is overloaded to accept a hash for the logs it will harvert as an attribute making it easy to use in recipes without fumbling with templates. The defaults then expect that logstash would remain resident along all elasticsearch nodes which finally has an interface via kibana. Beyond this, inheriting templates and customizing the configurations and security is up to you. |
| 19 | + |
| 20 | +The default installations are: |
| 21 | +``` |
| 22 | + elasticsearch = 1.7.0 // JAVA |
| 23 | + logstash = 1.5.3 // RUBY |
| 24 | + logstash-forwarder = 0.4.0 // GO |
| 25 | + kibana = 4.1.1 // NODEJS |
| 26 | +``` |
| 27 | +You can override any of these by passing the url for the zip/tar package, a checksum (sha256) and a version to tag is by. See the resource files in the libraries folder for the accepted attributes. |
| 28 | + |
| 29 | +See [ellktest](https://github.com/dearing/ellk/test/cookbooks/ellktest/recipes/default.rb) for examples and flexibility.. |
| 30 | + |
| 31 | +TODO |
| 32 | +------------ |
| 33 | +see [issues](https://github.com/dearing/ellk/issues) |
| 34 | + |
38 | 35 |
|
39 | 36 | Contributing |
40 | 37 | ------------ |
|
0 commit comments