es单节点
先启动容器。将config文件的下目录拷贝出来
docker cp es8:/usr/share/elasticsearch/config ./
拷贝完成后将其映射到容器内。方便后续修改配置
version: '3.8'
networks:
common:
name: mynet
services:
nexus3:
image: elasticsearch:8.9.2
container_name: es8
restart: always
# 使用该参数,container内的root拥有真正的root权限。
privileged: true
networks:
common:
ipv4_address: 192.168.0.13
ports:
- "6210:9200"
- "6211:9300"
volumes:
# 数据和查询映射
- ./es-data:/usr/share/elasticsearch/data
- ./es-plugins:/usr/share/elasticsearch/plugins
- ./es-config:/usr/share/elasticsearch/config
environment:
- ES_JAVA_OPTS=-Xms512m -Xmx1024m
- discovery.type=single-node
- ELASTIC_PASSWORD=your_password
这里设置的密码仅仅是elastic超级管理员的密码。而用于kibana等的密码还是需要进入容器单独设置(因为8开始默认xpack.security.enabled: true)
进入容器后,进入当前目录的bin目录(/usr/share/elasticsearch/bin)。执行
./elasticsearch-setup-passwords interactive
开始重置默认账户的密码。
内置六个用户:
elastic:内置超级用户
apm_system:
kibana_system:仅可用于kibana用来连接elasticsearch并与之通信, 不能用于kibana登录
logstash_system:用于Logstash在Elasticsearch中存储监控信息时使用
beats_system:
remote_monitoring_user:
分别重置这六个账户的密码
kibana-es可视化页面
先启动容器。将config文件的下目录拷贝出来
docker cp kibana8:/usr/share/kibana/config ./
拷贝完成后将其映射到容器内。方便后续修改配置
version: '3.8'
networks:
common:
name: mynet
services:
kibana:
image: kibana:8.9.2
container_name: kibana8
restart: "no"
# 使用该参数,container内的root拥有真正的root权限。
privileged: true
networks:
common:
ipv4_address: 192.168.0.16
ports:
- "6200:5601"
environment:
ELASTICSEARCH_HOSTS: http://es8:9200 #设置访问elasticsearch的地址
I18N_LOCALE: zh-CN
volumes:
# 配置和插件映射
- ./kibana-config:/usr/share/kibana/config
- ./kibana-plugins:/usr/share/kibana/plugins
修改配置文件
server.host: "192.168.0.16"
server.shutdownTimeout: "5s"
elasticsearch.hosts: [ "http://es8:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
# 这里需要使用kibana_system这个账户,不能使用超级管理员,不然报错
elasticsearch.username: "kibana_system"
elasticsearch.password: "your_password"
# 这些主要是启动的一些告警,配置上不再告警。还有一个session不安全连接的告警,也就是需要配置https连接,先不搞了
xpack.reporting.roles.enabled: false
# 使用32个字符或更长的任何文本字符串作为加密密钥
xpack.security.encryptionKey: "c2LkuJzopb/phY3nva7nnJ/otLnlirI="
# 设置多次重启和kibana的多个实例之间保留相同的密钥
xpack.reporting.encryptionKey: "c2LkuJzopb/phY3nva7nnJ/otLnlirI="
# 注意:参数值至少32位,否则启动会报错提示
xpack.encryptedSavedObjects.encryptionKey: "c2LkuJzopb/phY3nva7nnJ/otLnlirI="
分词器安装
原生分词器对于中文不太支持,需要额外安装支持中文的分词器插件
下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases