rackspace-cookbooks / elkstack

Elasticsearch, logstash, and kibana stack
Other
81 stars 54 forks source link

Updated elkstack deps for Kibana and ElasticSearch? #183

Open boldandbusted opened 7 years ago

boldandbusted commented 7 years ago

Howdy. I seem to have a problem isolated to elkstack here. Apologies in advance if I'm off the mark. :)

I'm using Chef-DK 0.19.6.

Berksfile:

source "https://supermarket.chef.io"

solver :ruby, :required

metadata

cookbook "nginx", ">=2.7.0"
cookbook "java"
cookbook "elasticsearch", ">=2.4.0"
cookbook "kibana"
cookbook "logstash"
cookbook "nodejs"
cookbook "os-hardening"
cookbook "elkstack"

~/alan/alan_project_chef/ (master) berks
Resolving cookbook dependencies...
Fetching 'alan_project_chef' from source at .
Fetching cookbook index from https://supermarket.chef.io...
Unable to satisfy the following requirements:

- `elasticsearch (= 2.4.0)` required by `user-specified dependency`
- `elasticsearch (>= 2.0.0)` required by `alan_project_chef-0.1.8`
- `elasticsearch (>= 0.0.0)` required by `logstash-0.12.0`
- `elasticsearch (~> 0.3)` required by `elkstack-4.0.0`
- `kibana (= 0.1.11)` required by `user-specified dependency`
- `kibana (~> 1.3)` required by `elkstack-0.1.1`
Unable to find a solution for demands: 7-zip (1.0.2), alan_project_chef (0.1.8), ant (1.0.3), apt (2.9.2), ark (2.0.0), beaver (1.6.0), bluepill (2.4.3), build-essential (2.4.0), chef-sugar (3.4.0), compat_resource (12.16.1), curl (2.0.3), dmg (3.0.0), elasticsearch (2.4.0), git (5.0.1), homebrew (2.1.2), java (1.42.0), kibana (0.1.11), logrotate (2.1.0), logstash (0.12.0), nginx (2.7.6), nodejs (2.4.4), ohai (2.1.0), os-hardening (1.4.1), packagecloud (0.2.5), poise (2.7.1), poise-archive (1.3.0), poise-languages (2.0.3), poise-python (1.5.1), python (1.4.6), rsyslog (4.0.1), runit (1.8.0), seven_zip (2.0.2), sysctl (0.7.0), windows (2.0.2), yum (4.1.0), yum-epel (0.7.1), elkstack (>= 0.0.0)

This conflict doesn't occur when I comment out 'elkstack' in the Berksfile.

I'm happy to help with any further info. If I'm reading the above correctly, the conflict seems to be that elkstack wants an old version of ElasticSearch? And perhaps Kibana? Thanks in advance.

martinb3 commented 7 years ago

Hi there -- you're correct; elkstack specifically pins to an older elasticsearch cookbook:

depends 'elasticsearch', '~> 0.3.14' # 1.0 release is a radical change, needs work

So this is definitely never going to work until this cookbook is updated to work with the newer releases. I'd be glad to review / merge PRs, but I don't have an estimate for when to fix this right now. I'm focused on the upstream elasticsearch cookbook, which also has a bunch of updates to coincide with ES 5.0 being released.

boldandbusted commented 7 years ago

@martinb3 Thank you. Is there any form of "rosetta stone" for converting configuration files between the versions? I'm actually just a dumb SysAdmin, not a "real" ElasticSearch/ELK "user". If the work is just boring tedious monkeywork, I'd be glad to help with a PR after testing.

martinb3 commented 7 years ago

@boldandbusted specifically for ES, they have an upgrading for each new version. For the elasticsearch cookbook, it's been converted to a library cookbook, so it's all Chef resources -- that would be the majority of the work in fixing elkstack (rewriting the recipe usage to be Chef resources instead). I don't have a ton of pointers beyond that -- but the tests in this cookbook should help be sure everything still works after moving to newer cookbook versions.