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"

相关推荐
weixin_307779133 小时前
Clickhouse统计指定表中各字段的空值、空字符串或零值比例
运维·数据仓库·clickhouse
bubiyoushang8884 小时前
Windows11 WSL2 Ubuntu编译安装perf工具
linux·运维·ubuntu
xuanwojiuxin5 小时前
linux panic-propagation
linux·运维·服务器
柒间6 小时前
Elasticsearch 常用操作命令整合 (cURL 版本)
大数据·数据库·elasticsearch
藥瓿亭7 小时前
K8S认证|CKS题库+答案| 9. 网络策略 NetworkPolicy
linux·运维·docker·云原生·容器·kubernetes·cks
LFloyue7 小时前
Linux离线(zip方式)安装docker
linux·docker
liuzhenghua668 小时前
Python任务调度模型
java·运维·python
黎相思8 小时前
应用层自定义协议与序列化
运维·服务器·网络
G皮T8 小时前
【Elasticsearch】映射:fielddata 详解
大数据·elasticsearch·搜索引擎·映射·搜索·mappings·fielddata
ID_云泽8 小时前
Elasticsearch中多索引数据合并与Nested嵌套类型操作全解析
elasticsearch·搜索引擎·全文检索