修改系统参数
sysctl -w vm.max_map_count=262144
此参数是elasticsearch需要修改的值,如果不修改,在生产模式下elasticsearch会启动失败。官方说明如下:
使用docker-compose安装elasticsearch+kibana
mkdir -p /es/data01 data02
chmod 777 -R /es
vim /es/docker-compose.yml
version: '2.2'
services:
es01:
image: elasticsearch:7.5.1
container_name: es01
environment:
- node.name=es01
- cluster.name=es-docker-cluster
- discovery.seed_hosts=es02
- cluster.initial_master_nodes=es01,es02
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- /es/data01:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- elastic
es02:
image: elasticsearch:7.5.1
container_name: es02
environment:
- node.name=es02
- cluster.name=es-docker-cluster
- discovery.seed_hosts=es01
- cluster.initial_master_nodes=es01,es02
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- /es/data02:/usr/share/elasticsearch/data
networks:
- elastic
kibana:
image: kibana:7.5.1
container_name: kibana
restart: always
ports:
- "5601:5601"
environment:
I18N_LOCALE: zh-CN #汉化
networks:
- elastic
links:
- es01:elasticsearch
volumes:
data01:
driver: local
data02:
driver: local
networks:
elastic:
driver: bridge
此处安装的elasticsearch已经默认集成了ik中文分词器。
注意:一定要修改esdata1和esdata2的权限,否则启动elasticsearch会报错。主要是由于启动elasticsearch
并非是以root用户启动的,所以如果esdata1和esdata2是root账户创建,会没有写入权限。
安装
Docker-compose up -d
Elasticsearch的api端口是9200,elasticsearch2的api端口是9201
Kibana默认对外的端口是5601
参考:
https://blog.csdn.net/maquealone/article/details/89417257