docker搭建elk

测试开发环境

使用 Git Clone 命令将项目下载到所需要的位置。

git clone https://github.com/deviantony/docker-elk.git /app/docker-elk


了解了项目工作方式后,可以使用 docker-compose up 来启动项目。

docker-compose up

为了验证,我们可以使用浏览器或者 curl 等工具访问机器地址加端口号 9200,并使用默认用户名 elastic 和默认密码 changeme 来访问 Elasticsearch HTTP 端口,如果一切正常,你将看到类似下面的结果。


{

  "name" : "0d05db8360df",

  "cluster_name" : "docker-cluster",

  "cluster_uuid" : "Mq2EZX59TqW7ysGx7Y-jIw",

  "version" : {

    "number" : "7.6.2",

    "build_flavor" : "default",

    "build_type" : "docker",

    "build_hash" : "ef48eb35cf30adf4db14086e8aabd07ef6fb113f",

    "build_date" : "2020-03-26T06:34:37.794943Z",

    "build_snapshot" : false,

    "lucene_version" : "8.4.0",

    "minimum_wire_compatibility_version" : "6.8.0",

    "minimum_index_compatibility_version" : "6.0.0-beta1"

  },

  "tagline" : "You Know, for Search"

}

现在不着急访问 Kibana ,我们继续进行配置调整。


重置内建用户密码

使用 docker-compose exec -T elasticsearch bin/elasticsearch-setup-passwords auto --batch 命令对服务默认的账户进行默认密码重置。


docker-compose exec -T elasticsearch bin/elasticsearch-setup-passwords auto --batch


Changed password for user apm_system

PASSWORD apm_system = YkELBJGOT6AxqsPqsi7I


Changed password for user kibana

PASSWORD kibana = FxRwjm5KRYvHhGEnYTM9


Changed password for user logstash_system

PASSWORD logstash_system = A4f5VOfjVWSdi0KAZWGu


Changed password for user beats_system

PASSWORD beats_system = QnW8xxhnn7LMlA7vuI7B


Changed password for user remote_monitoring_user

PASSWORD remote_monitoring_user = OvjEGR13wjkOkIbWqaEM


Changed password for user elastic

PASSWORD elastic = PGevNMuv7PhVnaYg7vJw

将密码妥善保存后,我们需要将 docker-compose.yml 配置文件中的 elasticsearch 服务的 ELASTIC_PASSWORD 去掉,这样可以确保服务启动只使用我们刚刚重置后的密码(keystore)。以及需要对 kibana 、 logstash 配置文件中的信息进行替换,将文件中的 elastic 用户的密码进行更新,相关文件我们在开篇的目录结构中有提过,暂时先修改下面三个文件就可以了:


kibana/config/kibana.yml

logstash/config/logstash.yml

logstash/pipeline/logstash.conf

需要注意的是, logstash pipeline 需要一个高权限账号,当前测试开发过程中,可以使用上面重置后的 elastic 账号和密码,如果是生产使用可以参考官方文档 Configuring Security in Logstash 进行操作,分配一个新的专用账号。


在配置修改完毕后,我们执行 docker-compose restart 重启相关服务。


docker-compose restart


Restarting docker-elk_kibana_1        ... done

Restarting docker-elk_logstash_1      ... done

Restarting docker-elk_elasticsearch_1 ... done

如果日志中没有出现任何 401 或者访问拒绝的内容,说明服务一切正常。


使用 Kibana 控制台

启动之后,我们使用浏览器访问服务器IP+端口5601,打开 kibana 控制台。

Kibana 默认登陆界面

 

使用elastic 账号和密码登录后,就能够看到 Kibana 的界面了,如果第一次使用,会看到欢迎界面。

Kibana 登陆后欢迎界面

 

在登陆之后,第一次使用,可以考虑导入示例数据,来帮助了解 Kibana 的基础功能。

Kibana 导入示例数据

 

接下来就是自由探索的过程了,: )

Kibana 默认示例面板

 

关闭付费组件

打开设置界面,选择 Elasticsearch 模块中的 License Management ,可以看到默认软件会启动为期一个月的高级功能试用。

ELK 新安装后默认授权

 

在 官方订阅 页面,我们可以看到官方支持的订阅类型,一般来说,如果没有特殊需求,使用基础版本就好。

ELK 官方付费方案

 

如果你想要了解软件当前运行状态,除了登陆机器,查看宿主机和容器状态外,在监控界面,我们也可以方便快捷的看到单节点中各个服务的运行状态和资源占用。

ELK 单节点版本健康状态

 

选择“Revert to Basic license”,选择回退到基础版本,可以看到整个界面都简洁了不少,至此如果不付费的话,就可以安心合法的使用软件了。

ELK 基础版本授权界面


打赏
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。