搭建Elasticsearch环境
docker启动es容器
docker run --name es7 -p 9200:9200 -d elasticsearch:7.3.2
错误1
启动失败,查看docker logs --tail=100 es7
错误日志
max virtual memory areas 报错vm.max_map_count [65530] is too low, increase to at least 262144
曾经遇到过内存问题,猜测这里也是内存太小,扩展机器内存发现没有效果,最后修改vm_map_count
参数(对这里不太熟悉)
临时修改
这种方式是临时性的,修改后es容器可以启动成功
sysctl -w vm.max_map_count=262144
可以查看效果
sysctl -a|grep vm.max_map_count
永久生效
永久生效需要修改系统配置文件vi /etc/sysctl.conf
,添加
vm.max_map_count=262144
执行sysctl -p
可以使配置文件加载生效
vm.max_map_count:
错误2
查看容器日志
the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured
单节点方式启动
参数-e "discovery.type=single-node"
控制单节点启动
docker run -d -e ES_JAVA_POTS="-Xms512m -Xmx512m" \
-e "discovery.type=single-node" \
-p 9200:9200 -p 9300:9300 --name es7 elasticsearch:7.3.2
集群方式启动
修改文件配置集群vi config/elasticsearch.yml
,添加
discovery.seed_hosts: ["127.0.0.1"]
cluster.initial_master_nodes: ["node-1"]
搭建Kibana环境
docker run --name kibana --link=es7 -p 5601:5601 -d elastic/kibana:7.2.0
kibana容器状态正常,localhost:5601
访问提示kibana未准备好,docker logs --tail=300 kibana
查看日志
{“type”:“log”,“@timestamp”:“2022-08-19T03:07:05Z”,“tags”:[“warning”,“task_manager”],“pid”:1,“message”:“PollError No Living connections”}
{“type”:“log”,“@timestamp”:“2022-08-19T03:07:07Z”,“tags”:[“warning”,“elasticsearch”,“admin”],“pid”:1,“message”:“Unable to revive connection: http://elasticsearch:9200/”}
{“type”:“log”,“@timestamp”:“2022-08-19T03:07:07Z”,“tags”:[“warning”,“elasticsearch”,“admin”],“pid”:1,“message”:“No living connections”}
可以看出kibana连接elasticsearch失败,docker inspect es7
查看es7容器IP地址,进入kibana容器vi config/kibana.yml
修改连接地址
elasticsearch.hosts: [ "http://172.17.0.2:9200" ]
重启docker restart kibana
容器成功