docker安装elasticsearch+kibana

目录

1.安装es

2.安装kibana

3.kibana监控es


1.安装es

拉取镜像

复制代码
docker pull elasticsearch:7.6.1

创建存放配置文件、数据、插件的各个文件夹

复制代码
mkdir -p /home/docker/elasticsearch/config
mkdir -p /home/docker/elasticsearch/data
mkdir -p /home/docker/elasticsearch/plugins

创建好之后需要给/home/docker/elasticsearch目录赋予777权限 不然启动会失败

复制代码
chmod -R 777 /home/docker/elasticsearch/

创建es的配置文件:

复制代码
vi /home/docker/elasticsearch/config/elasticsearch.yml

在配置文件中添加以下配置:

注意是yml格式,kv之间有空格隔开。

复制代码
#集群名称
cluster.name: "docker-cluster" 
#节点名称
node.name: node1
#http端口
http.port: 9200
#访问权限
network.host: 0.0.0.0
http.host: 0.0.0.0
xpack.security.enabled: true

启动:

复制代码
docker run --name elasticsearch -p 9200:9200  -p 9300:9300 \
 -e "discovery.type=single-node" \
 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
 -v /home/docker/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
 -v /home/docker/elasticsearch/data:/usr/share/elasticsearch/data \
 -v /home/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
 --restart always\
 -d elasticsearch:7.6.1
  • -p 端口映射

  • -e discovery.type=single-node 单点模式启动

  • -e ES_JAVA_OPTS="-Xms512m -Xmx512m":设置启动占用的内存范围

  • -v 目录挂载

  • --restart always docker容器启动时自动启动

  • -d 后台运行

2.安装kibana

拉取镜像:

复制代码
docker pull kibana:7.6.1

创建kibana的配置文件:

复制代码
mkdir -p /home/docker/elasticsearch/kibana/config/
vi /home/docker/elasticsearch/kibana/config/kibana.yml

添加以下配置:

复制代码
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://172.16.2.109:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true
i18n.locale: "zh-CN" #汉化

启动kibana:

复制代码
docker run -d \
  --name=kibana \
  --restart=always \
  -p 5601:5601 \
  -v /home/docker/elasticsearch/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml \
  kibana:7.6.1

3.kibana监控es

因为xpack,只要kibana连接的是当前es,那么打开kibana的时候会要求我们输入es的用户名和密码,那么问题来了,es的用户名密码怎么设置喃?

进入es的容器,运行下面脚本:

./bin/elasticsearch-setup-passwords interactive

然后会提示要求我们按照顺序输入以下几个账号的用户名和密码:

elastic、apm_system、kibana、logstash_system、beats_system、remote_monitoring_user

然后记得在kibana的配置文件里面也配置好es的用户名和密码:

elasticsearch.username: "elastic"

elasticsearch.password: "123456"

这时候再登录kibana输入es的用户名密码即可。

点击左侧工具栏的监控即可监控es:

初次进入监控的时候会提示没有配置好监控,根据提示步骤一步步的走即可:

唯一需要注意的是,在启动metricbeat的时候启动命令里记得跟上es的用户名密码,否则校验不通过会直接报错:

docker run -d docker.elastic.co/beats/metricbeat:7.6.1 setup -E setup.kibana.host=192.168.31.10:5601 -E output.elasticsearch.hosts="192.168.31.10:9200" -E output.elasticsearch.username="elastic" -E output.elasticsearch.password="123456"

相关推荐
用户0328472220701 天前
如何搭建本地yum源(上)
运维
武子康1 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
Elasticsearch2 天前
如何通过 Claude Code 来写入 CSV 数据到 Elasticsearch
elasticsearch
大树884 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠4 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
大志哥1234 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
霸道流氓气质4 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工4 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
Alsn864 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
酣大智4 天前
ARP代理--工作原理
运维·网络·arp·arp代理