编写配置文件
- 目录创建:mkdir -p elasticsearch/master/{conf,data,logs} kibana/conf/
- 给es目录添加权限:chmod 777 elasticsearch/master/{conf,data,logs}
- 编写es主节点配置文件:vi elasticsearch/master/conf/es-master.yml
cluster.name: es-cluster
node.name: es-node1
node.master: true
node.data: true
network.host: 0.0.0.0
network.publish_host: 192.168.142.30
http.port: 9200
transport.port: 9300
discovery.seed_hosts:
- 192.168.142.30
cluster.initial_master_nodes:
- es-node1
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enabled: false
- 编写kibana配置文件:vi kibana/conf/kibana.yml
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://192.168.142.30:9200"]
i18n.locale: "zh-CN"
- 编写docker-compose启动文件:vi docker-compose.yml
version: "3"
services:
es-master:
container_name: es-master
hostname: es-master
image: elasticsearch:7.1.1
ports:
- 9200:9200
- 9300:9300
volumes:
- ./elasticsearch/master/conf/es-master.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./elasticsearch/master/data:/usr/share/elasticsearch/data
- ./elasticsearch/master/logs:/usr/share/elasticsearch/logs
environment:
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
kibana:
container_name: kibana
hostname: kibana
image: kibana:7.1.1
ports:
- 5601:5601
volumes:
- ./kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml
environment:
- elasticsearch.hosts=http://192.168.142.30:9200
depends_on:
- es-master
启动服务
- 修改进程可拥有的VMA(虚拟内存)
- 查看当前VMA(默认是65530):sysctl -a|grep vm.max_map_count
- 修改系统配置文件,将其改成默认的4倍:echo vm.max_map_count=262144 >> /etc/sysctl.conf
- 重启配置文件:sysctl -p
- 使用docker-comopose启动服务:docker-compose up -d
- 查看是否启动完成:http://192.168.142.30:5601/
说明
- 本次部署为单节点部署
- elasticsearch比较吃内存,默认是2G,而本次部署的服务器配置较拉,所以用的是512m,如果内存足够或者想要调小内存,则可修改docker-compose文件中的ES_JAVA_OPTS