我一般很少写项目介绍, 有点硬推广的意思. aws这个项目确实是解决了我们一直以来的痛点 — 一套简单的生产可用的开源es, 提供基本的用户认证和角色, 内置基本监控,内置报警.
这两年做elastic stack相关的事情比较多, 先后尝试了x-pack和一些开源方案. 不得不说x-pack在功能上确实是第一选择, 而且elastic.co现在的迭代速度很快,新功能层出不穷.可能主要是得益于elastic.co先后开放了elkstack的源代码的结果.
近日传出因为用户使用开源版本不当, 黑客发现了很多在公网上大开门户的es, 涉及大陆公民的海量个人数据. 我们知道开源的es是没有访问控制和链路加密的, 使用es至少要在前面加一层nginx做个简单的访问控制,并且开启https. 很遗憾由还是有很多用户并不了解, 确实开源es的实施成本稍微有点高, 安全,加密,监控都需要用户自己去补充. 那么有没有什么好方案能满足用户最基本的使用需求呢? 最近发现了一个非常棒的项目 open distro for elasticsearch !
项目站点:
https://opendistro.github.io/for-elasticsearch/
启动 docker 版本 看看
docker run -p 9200:9200 -p 9600:9600 -e “discovery.type=single-node” amazon/opendistro-for-elasticsearch:0.7.0
镜像
amazon/opendistro-for-elasticsearch:0.7.0
amazon/opendistro-for-elasticsearch-kibana:0.7.0
用默认用户密码连接
curl -XGET https://localhost:9200 -u admin:admin
curl -XGET https://localhost:9200/_cat/nodes?v -u admin:admin
curl -XGET https://localhost:9200/_cat/plugins?v -u admin:admin
直接用rancher 1.6启动
用户界面:
登陆 密码 admin/admin
完整的角色控制
可以看到其实和自己搞nginx是一个思路,通过控制api路径来分立不同角色.
支持多种认证,
elastic 的 space 隔离 在这个版本叫做 租户 tenants
报警功能
用户定义最后保存为yml文件
监控
Performance Analyzer
通过api来暴露性能数据, aws提供了一个字符工具perftop
https://d3g5vo6xdbdb9a.cloudfront.net/downloads/perftop/perf-top-0.7.0.0-LINUX.zip
./perf-top-<operating_system> <dashboard>.json <endpoint>
内置的dashborad 组合了一些常用的数值, 纯字符的界面比较怀旧.
可以自行组合api集成到自己的监控系统中.
纯干货技术分享 : jiangjiang.space
aws这个版本提供了几乎es用户需要的所有基本功能.
- 认证
- 加密
- 报警
- 监控
推荐使用开源es的同学们切换到这个版本上.