I am new to curator and currently trying it out.
I want to run curator out of a docker so i downloaded the rpm files (version 5.5) for centos 7 and installed docker based out of centos:7 image.
i downloaded the same version of curator for windows and all the above commands work.
C:\Tools\curator-5.5.4-amd64> curator_cli --host 192.168.99.100 --port 9200 show_indices --verbose --header
Index State Size Docs Pri Rep Creation Timestamp
.monitoring-es-6-2018.05.30 open 555.9KB 261 1 0 2018-05-30T17:32:45Z
.triggered_watches open 230.0B 0 1 0 2018-05-30T17:33:46Z
.watcher-history-7-2018.05.30 open 234.4KB 30 1 0 2018-05-30T17:33:46Z
.watches open 23.9KB 6 1 0 2018-05-30T17:32:46Z
I need some help trying to debug the issue, are there any dependencies i am missing on centos/ubuntu. In the documentation it was said all of them were packages in rpm file.
I get basically identical output from CentOS 6 as well, with its respective RPM.
I can confirm that the centos:7 Docker image does behave exactly as you have described. I wish I knew what was omitted so I could tell you what to add. Something clearly is omitted, and I don't know what that dependency might be. I have done everything I can to include every Curator dependency (i.e. Python binary and associated libraries), but that would leave everything else up to the OS. I can't even do a file command in this image. There are no troubleshooting binaries either. Perhaps you should start with a different image, and work your way over from there.
I'd avoid an image that large like the plague, anyway. This works wonders:
$ docker run -ti --rm python:3.6.5-alpine /bin/sh
/ # pip install elasticsearch-curator
Collecting elasticsearch-curator
Downloading
...
/ # curator_cli --help
Usage: curator_cli [OPTIONS] COMMAND [ARGS]...
Options:
--config PATH Path to configuration file. Default: ~/.curator/curator.yml
--host TEXT Elasticsearch host.
--url_prefix TEXT Elasticsearch http url prefix.
--port TEXT Elasticsearch port.
--use_ssl Connect to Elasticsearch through SSL.
--certificate TEXT Path to certificate to use for SSL validation.
--client-cert TEXT Path to file containing SSL certificate for client auth.
--client-key TEXT Path to file containing SSL key for client auth.
--ssl-no-validate Do not validate SSL certificate
--http_auth TEXT Use Basic Authentication ex: user:pass
--timeout INTEGER Connection timeout in seconds.
--master-only Only operate on elected master node.
--dry-run Do not perform any changes.
--loglevel TEXT Log level
--logfile TEXT log file
--logformat TEXT Log output format [default|logstash|json].
--version Show the version and exit.
--help Show this message and exit.
Commands:
alias Add/Remove Indices to/from Alias
allocation Shard Routing Allocation
close Close Indices
delete_indices Delete Indices
delete_snapshots Delete Snapshots
forcemerge forceMerge Indices (reduce segment count)
open Open Indices
replicas Change Replica Count
restore Restore Indices
rollover Rollover Index associated with Alias
show_indices Show Indices
show_snapshots Show Snapshots
shrink Shrink Indices to --number_of_shards
snapshot Snapshot Indices
Thanks a lot for the reply...
The centos 7 test you did was on a VM?
I also checked and everything works on VM/vagrants (i tried centos and ubuntu).
I only had issues with docker images.
My plan was to add curator to my existing elasticsearch docker, is that a bad approach?
Since the latest elasticsearch runs on centos 7 i was trying curator on the same image.
It's only a bad approach if there's something missing that would prevent Curator from running—which, apparently, there is. The python version on the centos:7 image is way too old to install via pip (which isn't on the image either).
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.