elk 安装

创建elk网络

复制代码
 docker network create -d bridge elk

elasticsearch

创建目录

复制代码
mkdir -p /data/elasticsearch/{conf,logs,data,plugins}

vim /data/elasticsearch/conf/elasticsearch.yml

cluster.name: "es-cluster"
network.host: 0.0.0.0
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
http.cors.allow-origin: "*"
http.cors.enabled: true

权限更改

复制代码
 chmod 666 /data/elasticsearch/conf/elasticsearch.yml
 chmod -R 777 /data/elasticsearch/data

启动

复制代码
docker run --privileged  \
--name elasticsearch  \
--restart=always  --net elk  \
-p 9200:9200 -p 9300:9300  \
-v /data/elasticsearch/data:/usr/share/elasticsearch/data  \
-v /data/elasticsearch/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml  \
-v /data/elasticsearch/logs:/data/logs  \
-v /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins  \
-v /etc/localtime:/etc/localtime  \
-e ES_JAVA_OPTS="-Xms12g -Xmx12g"  \
-e "discovery.type=single-node"  \
-d elasticsearch:7.17.7

设置密码

复制代码
# 进入容器
docker exec -it elasticsearch /bin/bash
# 进入设置密码目录
cd /usr/share/elasticsearch/bin
# 设置密码 
elasticsearch-setup-passwords interactive

#设置完成后操作 退出容器
exit
# 重启容器
docker restart elasticsearch

涉及到的用户名

复制代码
Changed password for user [apm_system]
Changed password for user [kibana_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]

验证

复制代码
curl http://127.0.0.1:9200 -u elastic:密码

es 地址

复制代码
 http://ip:9200

kibana

启动一个服务

复制代码
docker run -d --name kibana --net elk -P -e "ELASTICSEARCH_HOSTS=http://elasticsearch:9200" -e "I18N_LOCALE=zh-CN" kibana:7.17.7 

创建目录

复制代码
mkdir -p /data/kibana/{conf,logs,data,plugins}

拷贝文件

复制代码
docker cp kibana:/usr/share/kibana/config/kibana.yml /data/kibana/conf/kibana.yml

修改配置文件

复制代码
vim /data/kibana/conf/kibana.yml

server.host: "0.0.0.0"
server.shutdownTimeout: "5s"
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
elasticsearch.username: "kibana_system"
elasticsearch.password: "密码"
monitoring.ui.container.elasticsearch.enabled: true
i18n.locale: zh-CN

权限更改

复制代码
chmod 777  /data/kibana/data
chmod 666  /data/kibana/conf/kibana.yml

删除容器

复制代码
docker rm -f kibana

启动

复制代码
 docker run -d --name kibana --restart=always   --net elk  -p 5601:5601 \
    -v /data/kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml \
    -v /data/kibana/data:/usr/share/kibana/data \
    -v /data/kibana/plugins:/usr/share/kibana/plugins \
    -v /data/kibana/logs:/usr/share/kibana/logs \
  kibana:7.17.7

kibana 地址

复制代码
 http://ip:5601

logstash

启动一个服务

复制代码
docker run -d -P --name logstash --net elk docker.elastic.co/logstash/logstash:7.17.12

创建目录

复制代码
mkdir -p /data/logstash/{conf,data,pipeline}

拷贝文件

复制代码
 docker cp logstash:/usr/share/logstash/config/ /data/logstash/conf/
 docker cp logstash:/usr/share/logstash/data/ /data/logstash/data/
 docker cp logstash:/usr/share/logstash/pipeline/ /data/logstash/pipeline/

修改配置文件

复制代码
  vim /data/logstash/conf/logstash.yml

http.host: "0.0.0.0"
xpack.monitoring.elasticsearch.hosts: [ "http://elasticsearch:9200" ]

 vim /data/logstash/pipeline/logstash.conf

input {
  tcp {
    mode => "server"
    host => "0.0.0.0"
    port => 5044
    codec => json_lines
  }
}
output {
   if [appindex] =~ "xxx" 
  {
       elasticsearch {
         hosts => ["http://elasticsearch:9200"]
         index => "log-%{+YYYY.MM.dd}"
         user => "logstash_system"
          password => "密码"
       }
     }
}

权限更改

复制代码
 chmod -R 777  /data/logstash/data/
  chmod -R 666  /data/logstash/conf/

删除容器

复制代码
   docker rm -f logstash

启动

复制代码
    docker run -d  --name logstash --net elk \
    --privileged=true \
    -p 5044:5044 -p 9600:9600 \
    -v   /data/logstash/data/:/usr/share/logstash/data \
    -v  /data/logstash/conf/:/usr/share/logstash/config \
    -v  /data/logstash/pipeline/:/usr/share/logstash/pipeline \
docker.elastic.co/logstash/logstash:7.17.12

logstash 收集地址

复制代码
 ip:5044
相关推荐
没有bug.的程序员1 天前
Spring Boot 日志管理:从 Logback 深度配置到 ELK 万亿级日志中枢实战
java·spring boot·elk·logback·日志·管理
橙露3 天前
日志分析与监控:ELK栈(Elasticsearch+Logstash+Kibana)搭建全流程指南
大数据·elk·elasticsearch
信创天地4 天前
国产化数据库深度运维:性能调优与故障排查实战指南
运维·数据库·安全·elk·自动化·rabbitmq
yangminlei8 天前
Elasticsearch 全面解析:从原理到实战的分布式搜索引擎指南
java·elk
我爱娃哈哈8 天前
SpringBoot + ELK + MDC:分布式系统日志追踪,快速定位跨服务调用链问题
spring boot·后端·elk
信创天地10 天前
信创环境下数据库与中间件监控实战:指标采集、工具应用与告警体系构建
java·运维·数据库·安全·elk·华为·中间件
信创天地11 天前
信创日志全流程管控:ELK国产化版本与华为日志服务实战应用
运维·安全·elk·华为·rabbitmq·dubbo
三不原则14 天前
实战:ELK 分析 AI 系统日志,快速定位接口报错问题
人工智能·elk
BullSmall14 天前
ELK 单机版日志系统【一键自动化部署脚本 + 完整配套配置】
运维·elk·自动化
BullSmall15 天前
基于 ELK 部署单机版日志系统方案
运维·elk