使用docker部署ES和Kibana

docker 部署ES和Kibana

前言

虽然说这篇文章安装了ES和Kiban,但是大家会发现部署繁杂,配置项多,容易出错

在了解docker后,重新对ES和Kibana进行安装。

部署ES

1.下载镜像

docker pull elasticsearch:6.8.13

2.设置配置信息

创建配置文件es.yml(位于/www/java-app/elk/es.yml),内容如下:

# 集群名称
cluster.name: elasticsearch-cluster
# 节点名称
node.name: master
# 绑定host,0.0.0.0代表当前节点的ip
network.host: 0.0.0.0
# 设置其它节点和该节点交互的ip地址,如果不设置它会自动判断,值必须是个真实的ip地址(本机ip)
network.publish_host: 192.168.218.129
# 设置对外服务的http端口,默认为9200
http.port: 9200
# 设置节点间交互的tcp端口,默认是9300
transport.tcp.port: 9300
# 是否支持跨域,默认为false
http.cors.enabled: true
# 当设置允许跨域,默认为*,表示支持所有域名,如果我们只是允许某些网站能访问,那么可以使用正则表达式。比如只允许本地地址。 /https?://localhost(:[0-9]+)?/
http.cors.allow-origin: "*"
# 表示这个节点是否可以充当主节点
node.master: true
# 是否充当数据节点
node.data: true
# 所有主从节点ip:port
#discovery.seed_hosts: ["192.168.218.129:9300"]  #本地只有一个节点,无法正常启动,先注释
# 这个参数决定了在选主过程中需要 有多少个节点通信  预防脑裂
discovery.zen.minimum_master_nodes: 1

#初始化主节点
#cluster.initial_master_nodes: ["master"]  #本地只有一个节点,无法正常启动,先注释

3.启动容器

docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300  -v /www/java-app/elk/es/data:/usr/share/elasticsearch/data  -v /www/java-app/elk/es/plugins:/usr/share/elasticsearch/plugins  -v /www/java-app/elk/es/es.yml:/usr/share/elasticsearch/config/elasticsearch.yml  -e ES_JAVA_OPTS="-Xms256m -Xmx256m"  -e "discovery.type=single-node" elasticsearch:6.8.13

部署Kibana

1.下载镜像

docker pull kibana:6.8.13

2.设置配置信息

server.name: kibana
# kibana的主机地址 0.0.0.0可表示监听所有IP
server.host: "0.0.0.0"
# kibana访问es的URL
elasticsearch.hosts: [ "http://192.168.218.129:9200" ]
elasticsearch.username: 'kibana'
elasticsearch.password: '123456'
# 显示登陆页面
xpack.monitoring.ui.container.elasticsearch.enabled: true
# 语言
#i18n.locale: "zh-CN" #这个版本的中文不完善,看起来更别扭了,先注释

3.启动容器

docker run --restart=always -d --name kibana -p 5601:5601 -v /www/java-app/elk/kibana.yml:/usr/share/kibana/config/kibana.yml kibana:6.8.13

环境如下:

宿主机ip:192.168.218.129

ES通过Http访问的端口为:9200

ES通过TCP访问的端口为:9300

ES配置文件在宿主机中的位置:/www/java-app/elk/es、/www/java-app/elk/es/data、/www/java-app/elk/es/plugins

ES配置文件在宿主机中的位置:/www/java-app/elk/es/es.yml

Kibana配置文件在宿主机中的位置:/www/java-app/elk/kibana.yml

注意事项

1.文件挂载。否则容器重启后数据会丢失

2.ES和Kibana的版本需相同

docker 部署ES和Kibana.md


原文地址:https://www.cnblogs.com/wugang/p/14232355.html