通过 docker-compose 安装 ELK 的问题总结

栏目: 编程工具 · 发布时间: 6年前

内容简介:如果需要 X-Pack 功能支持,需要选择如果使用了阿里云的容器镜像服务,可以用阿里云的镜像加速器

docker-elk Git repo

X-Pack support

如果需要 X-Pack 功能支持,需要选择 docker-elk 的 x-pack 分支

镜像拉取超时

如果使用了阿里云的容器镜像服务,可以用阿里云的镜像加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://yourcode.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

failed to authenticate user [logstash_system]

创建了 logstash 的 pipline,但是数据却没有被索引到 elasticsearch

解决方案:需要自己新建一个 user 和 role,分配足够的权限

在 Kibana UI 上新建 logstash pipeline 不生效

解决方案:可以更改仓库中的配置文件,重启镜像后 pipeline 可生效

疑问:如何让界面配置的 logstash pipeline 可以生效呢?

logstash 镜像不能安装 mongo-shell

添加 USER root 到 logstash dockerfile,然后重新 build 镜像

然后运行:

docker-compose up -d --force-recreate --build

Elasticsearch health is Yellow

设置索引副本为 0

curl -H "Content-Type: application/json" -XPUT http://localhost:9200/nginx*/_settings -d '{"index":{"number_of_replicas":"0"}}'

删除已经生成的索引

curl -X DELETE "http://localhost:9200/nginx*"

如何持久化数据?

docker-compose.yml 加入以下配置:

elasticsearch:

  volumes:
    - /path/to/storage:/usr/share/elasticsearch/data

Error: Address already in use

5000 端口已经被使用:

[2018-09-14T15:26:05,003][INFO ][org.logstash.beats.Server] Starting server on port: 5000
[2018-09-14T15:26:11,256][ERROR][logstash.pipeline        ] A plugin had an unrecoverable error. Will restart this plugin.
  Pipeline_id:nginx_log
  Plugin: <LogStash::Inputs::Beats port=>5000, id=>"2f86f95bf2055694fb69b6c74e35dfe71c1ad2125d68ddbdd92c28429ad222cc", enable_metric=>true, codec=><LogStash::Codecs::Plain id=>"plain_7000b63c-197c-4165-b2c2-b716246aff4e", enable_metric=>true, charset=>"UTF-8">, host=>"0.0.0.0", ssl=>false, add_hostname=>true, ssl_verify_mode=>"none", ssl_peer_metadata=>false, include_codec_tag=>true, ssl_handshake_timeout=>10000, tls_min_version=>1, tls_max_version=>1.2, cipher_suites=>["TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256"], client_inactivity_timeout=>60, executor_threads=>2>
  Error: Address already in use
  Exception: Java::JavaNet::BindException
  Stack: sun.nio.ch.Net.bind0(Native Method)
sun.nio.ch.Net.bind(sun/nio/ch/Net.java:433)
sun.nio.ch.Net.bind(sun/nio/ch/Net.java:425)

解决方案:去掉默认的 pipeline.yml 中的 main pipeline

如何在 Dockerfile 中安装 mongo-shell?

添加以下代码到 Dockerfile:

RUN touch /etc/yum.repos.d/mongodb-org-4.0.repo

RUN echo $'[mongodb-org-4.0]\n\
name=MongoDB Repository\n\
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/\n\
gpgcheck=1\n\
enabled=1\n\
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc\n'\
>> /etc/yum.repos.d/mongodb-org-4.0.repo

RUN yum install -y mongodb-org-shell

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C#图解教程

C#图解教程

索利斯 / 苏林、朱晔 / 人民邮电出版社 / 2009-1 / 65.00元

本书是一本广受赞誉的C# 教程。它以图文并茂的形式,用朴实简洁的文字,并辅之以大量表格和代码示例,精炼而全面地阐述了最新版C# 语言的各种特性,使读者能够快速理解、学习和使用C#。同时, 本书还讲解了C#与VB 、C++ 等主流语言的不同点和相似之处。 本书是一本经典的C# 入门书,不仅适合没有任何编程语言基础的初级读者,而且还是有VB 、C++ 等语言基础的C# 初学者的最佳选择。一起来看看 《C#图解教程》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试