介绍
- 开源的分布式搜索与分析引擎,提供了近实时搜索和聚合两大功能
- 全家桶包括 = Elasticsearch + Kibana + Logstash + Beats等一系列产品
- ES是核心引擎,提供了海量数据存储,搜索和聚合的能力
- Beats是轻量的数据采集器
- Logstash用来做数据转换
- Kibana提供了数据可视化和分析的功能
- 应用领域
- 搜索,日志管理,安全分析,指标分析,业务分析,应用性能监控等多个领域
- 与关系型数据库的类比
- 提供了模糊查询,搜索条件算分等功能
- 在事务性等方面并不如关系型数据库来得强大
安装
ES
下载安装
https://www.elastic.co/cn/downloads/elasticsearch基本命令
// 启动es
bin/elasticsearch
// 查看插件列表
bin/elasticsearch-plugin list
// 安装插件
bin/elasticsearch-plugin install [plugin_name]
// 单机启动多实例
bin/elasticsearch -E node.name=node0 -E cluster.name=lumia -E path.data=node0_data -d
bin/elasticsearch -E node.name=node1 -E cluster.name=lumia -E path.data=node1_data -d
bin/elasticsearch -E node.name=node2 -E cluster.name=lumia -E path.data=node2_data -d
bin/elasticsearch -E node.name=node3 -E cluster.name=lumia -E path.data=node3_data -d
// 浏览器命令查看实例
localhost:9200/_cat/nodes
Kibana
下载安装
https://www.elastic.co/cn/downloads/kibana
基本命令
// 启动kibana(先启动es)
bin/kibana
bin/kibana-plugin list
bin/kibana-plugin install [plugin_name]
Docker
- docker-compose.yml
version: '2.2'
services:
cerebro:
image: lmenezes/cerebro:0.8.3
container_name: cerebro
ports:
- "9000:9000"
command:
- -Dhosts.0.host=http://elasticsearch:9200
networks:
- es7net
kibana:
image: docker.elastic.co/kibana/kibana:7.3.2
container_name: kibana7
environment:
- I18N_LOCALE=zh-CN
- XPACK_GRAPH_ENABLED=true
- TIMELION_ENABLED=true
- XPACK_MONITORING_COLLECTION_ENABLED="true"
ports:
- "5601:5601"
networks:
- es7net
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.3.2
container_name: es7_01
environment:
- cluster.name=lumia
- node.name=es7_01
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.seed_hosts=es7_01,es7_02
- cluster.initial_master_nodes=es7_01,es7_02
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- es7data1:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- es7net
elasticsearch2:
image: docker.elastic.co/elasticsearch/elasticsearch:7.3.2
container_name: es7_02
environment:
- cluster.name=lumia
- node.name=es7_02
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.seed_hosts=es7_01,es7_02
- cluster.initial_master_nodes=es7_01,es7_02
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- es7data2:/usr/share/elasticsearch/data
networks:
- es7net
volumes:
es7data1:
driver: local
es7data2:
driver: local
networks:
es7net:
driver: bridge