本文记录使用 Docker 快速搭建 ElasticSearch 和 Kibana,主要用于学习测试。
Elasticsearch 单节点搭建
1、拉取镜像
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.13.4
2、启动单节点
docker run -d --name elasticsearch-single -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" docker.elastic.co/elasticsearch/elasticsearch:7.13.4
- -d 后台运行。
- --name 指定容器名称为 elasticsearch-single。
- discovery.type=single-node 设置为指定节点为单节点发现以便绕过ES的引导检查。
- ES_JAVA_OPTS=-Xms512m -Xmx512m 设置JVM堆初始内存和最大可用内存为512M,两值设置成一样,以避免每次垃圾回收完成后JVM重新分配内存。由于 es 默认需要 2G 内存, 如果不设置该环境变量,设备配置低的话,会导致内存不足。
3、查看容器
docker ps
或
docker ps -a
可以看到容器状态STATUS为UP,说明启动成功了~
4、浏览器访问
5、进入容器
docker exec -it elasticsearch-single bash
6、修改配置
vi /config/elasticsearch.yml
----------------------------------------------------------------------------------------------------
#添加内容
node.name: 'node-1'
ESC+:wq 保存退出~
7、退出容器
exit
或者快捷键 Control+D
8、重启容器
docker restart elasticsearch-single
9、再次浏览器访问
可以看到配置发生了变更~
Kibana 安装
1、拉取镜像
docker pull kibana:7.13.4
2、启动容器
docker run -d --name kibana-5601 -p 5601:5601 -e "ES_JAVA_OPTS=-Xms256m -Xms256m" kibana:7.13.4
3、查看容器
docker ps -a
可以看到容器状态STATUS为UP,说明启动成功了~
4、访问浏览器地址
如果页面出现:Kibana server is not ready yet,说明Kibana没有找到ES节点,需要进行相关配置。
5、进入 Kibana 容器
docker exec -it kibana-5601 bash
6、修改配置
vi config/kibana.yml
----------------------------------------------------------------------------------------------------
# 修改你配置文件中的elasticsearch.hosts,改成你自己的服务器的ip地址
server.host: "0"
elasticsearch.hosts: [ "http://192.168.20.56:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
修改完成后 esc wq保存~
7、Control+D 退出容器
8、重启容器
docker restart kibana-5601
9、访问浏览器地址
其他
学习 Docker:传送门