允许转载,但请保留出处:http://anonymman.iteye.com/blog/2138313
最近使用elasticsearch,发现index超过了380个,并且只有两个node,现在已经达到每个node上1.8T的index量以及3700个shard,两台服务器这两天频繁的oom,参考了官方的doc文档发现可以将index close掉,这样可以大大的减轻es cluster的state维护压力,所以就想写个shell脚本每天用crond去定时关闭14天之前的index,后来听人介绍发现github上有现在的脚本,所以直接拿来就用了,附上地址:github.com/elasticsearch/curator/,本文就叙述一下Linux安装过程(本人使用RHEL5.5版本)。
1、需要的安装环境:python&&pip.本人的python版本2.7.3,pip版本1.5.6。pip install elasticsearch-curator
2、执行pip install elasticsearch-curator,由它自动安装。
3、安装成功之后,接下来这个问题困扰了我半天:调用curator的时候一直报
Traceback (most recent call last):
File "/usr/local/bin/curator", line 5, in <module>
from pkg_resources import load_entry_point
File "/usr/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 2603, in <module>
File "/usr/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 666, in require
File "/usr/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 565, in resolve
pkg_resources.DistributionNotFound: elasticsearch>=1.0.0,<2.0.0
后来没办法只能将curator的完整路径用上:
python /usr/local/lib/python2.7/site-packages/curator/curator.py close --timestring %Y.%m.%d --prefix (前缀,默认是logstash-) --older-than 14
按照作者的指南发现执行上段命令之后依然报错:
2014-09-04 16:49:12,174 INFO Job starting...
Traceback (most recent call last):
File "curator.py", line 736, in <module>
main()
File "curator.py", line 714, in main
check_version(client)
File "curator.py", line 259, in check_version
version_number = get_version(client)
File "curator.py", line 254, in get_version
version = client.info()['version']['number']
File "/usr/local/lib/python2.7/site-packages/elasticsearch/client/utils.py", line 68, in _wrapped
return func(*args, params=params, **kwargs)
File "/usr/local/lib/python2.7/site-packages/elasticsearch/client/__init__.py", line 159, in info
_, data = self.transport.perform_request('GET', '/', params=params)
File "/usr/local/lib/python2.7/site-packages/elasticsearch/transport.py", line 284, in perform_request
status, headers, data = connection.perform_request(method, url, params, body, ignore=ignore, timeout=timeout)
File "/usr/local/lib/python2.7/site-packages/elasticsearch/connection/http_urllib3.py", line 51, in perform_request
raise ConnectionError('N/A', str(e), e)
elasticsearch.exceptions.ConnectionError: ConnectionError(('Connection aborted.', error(111, 'Connection refused'))) caused by: ProtocolError(('Connection aborted.', error(111, 'Connection refused')))
一直报es连接错误,无奈之后看到作者的文档里写有可以加上--debug进行调试,于是果断调试了一把:
发现log信息里有 xxx GET http://localhost:9200 这段话,于是想到linux下默认localhost是无法访问的,于是想到执行的curator.py,修改curator.py第三十行,将'host': 'localhost',localhost改成实际ip地址,这时运行python /usr/local/lib/python2.7/site-packages/curator/curator.py close --timestring %Y.%m.%d --prefix (前缀,默认是logstash-) --older-than 14即可。
相关推荐
Curator 是elasticsearch 官方的一个索引管理工具,可以删除、创建、关闭、段合并等等功能
elasticsearch-curator是管理elasticsearch的index的重要工具,在网上一般都没有linux版本的可执行的二进制文件,该压缩包中就是编译好的,不需要安装,可直接使用的,非常实用,值得一试,谢谢!
Elasticsearch Curator可帮助管理和管理Elasticsearch索引。 TL; DR $ docker run --name elasticsearch-curator bitnami/elasticsearch-curator:latest Docker撰写 $ curl -sSL ...
elasticsearch-curator-5.8.4-1.x86-64.rpm
Ansible-ansible-role-elasticsearch-curator.zip,负责角色-ElasticSearch管理员负责角色:ElasticSearch管理员,ansible是一个简单而强大的自动化引擎。它用于帮助配置管理、应用程序部署和任务自动化。
curator与elasticsearch版本的兼容性列表:...centos7+curator5.2.0环境rpm包下载:https://packages.elastic.co/curator/5/centos/7/Packages/elasticsearch-curator-5.2.0-1.x86_64.rpm 下载完成之
关于: 基于镜像 附加软件: 用法: ENTRYPOINT设置为/usr/bin/curator所以你可以做一些类似的事情 docker run --rm digitalwonderland/elasticsearch-curator --host $IP show --show-indices
在`ansible-role-elasticsearch-curator-master`这个压缩包中,包含了该Ansible角色的所有源代码和配置文件。通常,这些文件会包括`defaults/main.yml`(默认变量)、`tasks/main.yml`(任务定义)、`handlers/main....
入门这将创建一个预配置的虚拟机,运行 elasticsearch、kibana、elastic-curator 和 client.py 收集器。 至少你需要安装 、 、 和一个 vagrant 支持的虚拟化平台——因为我使用的是 ansible,你需要 Linux、OSX,...
AWS Lambda Elasticsearch索引清理 总览 此AWS Lambda函数允许您使用SigV4Auth身份验证删除旧的Elasticsearch索引。 您可以配置授权Lambda角色或AWS帐号的AWS Elasticsearch访问策略,而不是使用IP地址白名单。 图表...
Docker中的策展人这是Elasticsearch策展人的docker化版本,用于管理基于时间的索引。为什么这张图片该映像与策展人版本保持最新,并且在Docker注册表中具有标签。 它也基于最小的alpine图像,仅产生50mb的图像。用法...
"curator-client-2.4.2.zip" 是一个与Elasticsearch Curator相关的压缩包。Elasticsearch Curator是一个非常重要的开源工具,专门用于管理Elasticsearch集群的数据生命周期。这个版本是2.4.2,它允许用户执行各种...
lambda_es_curator 适用于AWS ES Curator的Lambda函数 git clone https://github.com/rafabios/lambda_es_curator.git cd lambda_es_curator/ pip install -r requirements.txt -t . zip -r9 ~ /lambda.zip . 然后...
ES_HOST :定义要联系的Elasticsearch节点的主机名; 默认是主人 DELETE_AGE :定义将删除索引的年龄(或更早); 预设为45 配置过滤器 该映像带有利用上述环境变量的基本但实用的配置文件。 操作配置将删除以$ ...
Elasticsearch 面试题和答案 本文档总结了 34 道 Elasticsearch 面试题和答案,涵盖了 Elasticsearch 的基础概念、索引架构、集群管理、性能优化、倒排索引、master 选举等多个方面。 一、Elasticsearch 基础...
5. 可能还会有其他辅助工具,如`elasticsearch-curator`,这是一个用于管理Elasticsearch索引生命周期的工具,可以帮助清理旧的或无用的索引。 由于日志数据通常体积庞大,为了适应这种情况,ELK平台提供了水平扩展...
Elasticsearch(简称ES)是一种基于Lucene的开源搜索引擎,它以其分布式、全文检索、实时分析、高可扩展性而受到广泛关注。"elasticsearch util"通常指的是与Elasticsearch相关的实用工具或库,用于简化与Elastic...
3. **Curator 工具**:用于定期清理 Elasticsearch 中的历史数据。 4. **ES 集群配置**:默认情况下,每个 ES 节点既是 Master 节点也是 Data 节点,因此数据会在多个节点上备份。 5. **Field 字段管理**:Elastic...