安装环境: centos7 ,EKL全套为7.5.2版本

前期工作

拉取已下三个镜像

docker.io/logstash        7.5.2               b6518c95ed2f        6 months ago        805 MB
docker.io/kibana 7.5.2 a6e894c36481 6 months ago 950 MB
docker.io/elasticsearch 7.5.2 929d271f1798 6 months ago 779 MB

修改系统配置

修改系统配置文件,不修改会报错ERROR: bootstrap checks failed,参考链接

#一次生效
sudo sysctl -w vm.max_map_count=262144
#永久生效
sudo vi /etc/sysctl.conf
#添加这一行
vm.max_map_count=262144 #加载配置
sudo sysctl -p

正文

  1. 准备 config,data,logs三个文件夹,文件夹里需要有配置的就config文件夹

config 是elasticsearch容器默认的配置文件,我们需要修改elasticsearch.yml文件,不然还是启动不了,配置如下:

#cluster.name: "docker-cluster"
#network.host: 0.0.0.0
cluster.name: "docker-cluster"
node.name: node-1
network.host: 0.0.0.0
bootstrap.system_call_filter: false
cluster.initial_master_nodes: ["node-1"]
xpack.license.self_generated.type: basic

注意: 配置文件需按照以上配置,不然起不来,有个说明我给忘了找不到了,有兴趣的可以去查查。

data,logs文件夹可手动创建,需要给他们root账号的读写执行权限,我这给的是775 权限足够了,权限可参考如下:

[root@localhost elasticsearch]# ls -al
总用量 0
drwxr-xr-x 6 root root 89 7月 21 16:45 .
drwxr-xr-x 5 root root 73 7月 21 16:25 ..
drwxr-xr-x 2 root root 178 7月 21 16:44 config
drwxrwxr-x 3 root root 27 7月 21 16:53 data
drwxrwxr-x 10 root root 283 7月 21 16:40 elasticsearch.bak
drwxrwxr-x 2 root root 133 7月 21 16:55 logs
  1. docker run

docker run --name elasticsearch -p 9200:9200 -v /data/EKL/elasticsearch/config:/usr/share/elasticsearch/config -v /data/EKL/elasticsearch/data://usr/share/elasticsearch/data -v /data/EKL/elasticsearch/logs:/usr/share/elasticsearch/logs -v /etc/localtime:/etc/localtime:ro -itd elasticsearch:7.5.2

端口可以自己改,我这就默认了

确认一下是否起来了

[root@localhost elasticsearch]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1b0763e52708 elasticsearch:7.5.2 "/usr/local/bin/do..." 14 minutes ago Up 9 minutes 0.0.0.0:9200->9200/tcp, 9300/tcp elasticsearch

起来了后用浏览器访问一下 127.0.0.1:9200 (127.0.0.1是你自己宿主机的IP地址),如下图:

  1. 准备 kibana的 config 文件夹,配置内容如下
#
## ** THIS IS AN AUTO-GENERATED FILE **
##
#
## Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://127.0.0.1:9200" ] # 127.0.0.1:9200改为你自己的elasticsearch地址
xpack.monitoring.ui.container.elasticsearch.enabled: true # 解释链接https://blog.csdn.net/u011311291/article/details/100041912
i18n.locale: zh-CN #汉化
kibana.index: ".kibana" #配置本地索引
  1. docker run 启动

docker run -itd --name kibana -p 5601:5601 -v /data/EKL/kibana/config:/usr/share/kibana/config -v /etc/localtime:/etc/localtime:ro kibana:7.5.2

注意:开放所用到的端口,我这里是9200,5601,浏览器访问127.0.0.1:5601 (127.0.0.1是你自己宿主机的IP),开放端口命令

  1. 准备好logstash的 config跟pipeline文件

修改config下的 logstash.yml ; logstash-sample.conf 两个配置文件中的 elasticsearch 地址

logstash.ymlpipelines.ymllogstash-sample.conf配置地址如下

[root@test config]# cat logstash.yml
http.host: "0.0.0.0"
xpack.monitoring.elasticsearch.hosts: [ "http://127.0.0.1:9200" ] [root@test config]# cat pipelines.yml
# This file is where you define your pipelines. You can define multiple.
# For more information on multiple pipelines, see the documentation:
# https://www.elastic.co/guide/en/logstash/current/multiple-pipelines.html - pipeline.id: main
path.config: "/usr/share/logstash/pipeline" #这是服务配置路径,可改。我这暂且不改。 [root@test config]# cat logstash-sample.conf # Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline. input {
beats {
port => 5044
}
} output {
elasticsearch {
hosts => ["http://127.0.0.1:9200"]
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
#user => "elastic"
#password => "changeme"
}
}

注意:以上 127.0.0.1:9200 需改为自己宿主机的地址

其实到这一步就差不多了,接下来就是对监控的logs做相关的配置了,我是对java的logs做个监控,需在 pipeline 下创建一个 java.conf (命名可改随你喜欢),配置如下


[root@test pipeline]# vim java.conf input {
file{
path => "/DATA/logs/chenfan-base.log" #log路径
type => "base" # 打个标签
start_position => "beginning"
}
} output {
if [type] == "base" { # 条件
elasticsearch {
hosts => ["127.0.0.1:9200"] #elasticsearch 服务地址
index => "base-%{+YYYY.MM.dd}" # 索引名字命名
codec => "json" #需将java日志装成json格式
}
}
}

参考链接

  1. Docker run

    docker run -itd --name logstash -p 5044:5044 -p 9600:9600 -v /DATA/logstash/docker/logstash/config:/usr/share/logstash/config -v /DATA/logstash/docker/logstash/pipeline:/usr/share/logstash/pipeline -v /DATA/logstash/log:/DATA/logs -v /etc/localtime:/etc/localtime:ro logstash:7.5.2

  2. 配置kibana索引

直接看图吧





注意:下一步就是选择时间了,我这都已经加过了不便操作了。加完之后看下面的操作,



这就有了,如果没有选一下时间点一下更新。

完事!!!

踩坑参考链接汇总

参考一

参考二

参考三

Linux实战(20):Docker部署EKL入门环境记录文档的更多相关文章

  1. AspNetCore容器化(Docker)部署(一) —— 入门

    一.docker注册安装 Windows Docker Desktop https://www.docker.com/products/docker-desktop Linux Docker CE h ...

  2. 如何使用Docker部署PHP开发环境

    本文主要介绍了如何使用Docker构建PHP的开发环境,文中作者也探讨了构建基于Docker的开发环境应该使用单容器还是多容器,各有什么利弊.推荐PHP开发者阅读.希望对大家有所帮助. 环境部署一直是 ...

  3. 阿里云Linux CentOS 7 Docker部署使用gogs搭建自己的git服务器

    一.前言 Git是目前优秀和流行的源代码管理工具.而GitHub是一个面向开源及私有软件项目的托管云平台,但开源免费,私有收费.而公司出于商业化等目的需要搭建自己的源代码托管服务器.通过网上了解Gog ...

  4. Linux:Ubuntu下部署Web运行环境

    Linux:Ubuntu下部署Web运行环境 本次博客将会从三部分内容详述Ubuntu系统下Web运行环境的配置: 依次是:FTP服务器的搭建.MYSQL数据库的搭建.JDK的安装等. 参考文章如下: ...

  5. Docker版EKL安装记录文档

    Docker版EKL安装记录文档 拉取已下三个镜像 docker.io/logstash 7.5.2 b6518c95ed2f 6 months ago 805 MB docker.io/kibana ...

  6. 部署openstack的官网文档解读mysql的配置文件

    部署openstack的官网文档解读mysql的配置文件(使用与ubutu和centos7等系统) author:headsen chen  2017-10-12 16:57:11 个人原创,严禁转载 ...

  7. CentOS6.5下安装JDK1.7+MYSQL5.5+TOMCAT7+nginx1.7.5环境安装文档

    ----------------CentOS6.5下安装JDK1.7+MYSQL5.5+TOMCAT7+nginx1.7.5环境安装文档----------------------- [JDK1.7安 ...

  8. VUE CLI环境搭建文档

    VUE CLI环境搭建文档 1.安装Node.js 下载地址 https://nodejs.org/zh-cn/download/ 2.全局安装VUE CLI win+R键打开运行cmd窗口输入一下代 ...

  9. 环境安装文档(for Ubuntu)

    这个文档的目标是:各位小伙伴通过这个文档,可以在一台全新的 Ubuntu 电脑上搭建平常开发使用的环境,主要包含 Node.js, git 和 编辑器部分. 这是针对 Ubuntu 系统的安装文档,W ...

随机推荐

  1. keil5 使用JLink 向nrf52840DK 下载程序出现No Cortex-M SW Device Found

    今天打开52840 keil5 工程,下载程序无法下载成功,提示如下: 在Jlink 配置中(Option for target....-> Debug->Setting )SWDIO也无 ...

  2. Jmeter 常用函数(28)- 详解 __FileToString

    如果你想查看更多 Jmeter 常用函数可以在这篇文章找找哦 https://www.cnblogs.com/poloyy/p/13291704.html 作用 读取整个文件 语法格式 ${__Fil ...

  3. JavaFX桌面应用-loading界面

    上次使用JavaFX开发了一个视频转码工具,当用户点击"启动"按钮开始转码的时候,会禁用启动按钮,防止多次启动转码. 这种处理方式对用户来说可能并是很友好,其实可以在启动转码的时弹 ...

  4. Go:排序算法

    一.冒泡排序 package main import "fmt" func BubbleSort(arr []int) { /* 思路:将大的元素一步一步"冒泡" ...

  5. SpringBoot整合WebSocket实现前后端互推消息

    小编写这篇文章是为了记录实现WebSocket的过程,受不了啰嗦的同学可以直接看代码. 前段时间做项目时设计了一个广播的场景,具体业务不再赘述,最终要实现的效果就是平台接收到的信息实时发布给所有的用户 ...

  6. 【干货!!】三句话搞懂 Redis 缓存穿透、击穿、雪崩

    前言 如何有效的理解并且区分 Reids 穿透.击穿和雪崩之间的区别,一直以来都挺困扰我的.特别是穿透和击穿,过一段时间就稀里糊涂的分不清了. 为了有效的帮助笔者自己,以及拥有同样烦恼的朋友们区分这三 ...

  7. 从零开始的SpringBoot项目 ( 一 ) Spring、SpringMVC和SpringBoot

    要想开始一个SpringBoot项目 , 首先要知道SpringBoot是什么 , 可以做什么 , 再去研究怎么用 . 一.概念 1.Spring Spring是一个开源容器框架,可以接管web层,业 ...

  8. 树(Tree)解题总结

    定义 树是一种抽象数据类型(ADT)或是实现这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合.它是由 n(n>0) 个有限节点组成一个具有层次关系的集合.. 二叉搜索树(Binar ...

  9. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

  10. Fitness - 05.06

    倒计时239天 运动31分钟,共计10组,3.2公里.拉伸10分钟. 每组跑步1分钟(6.4KM/h),走路2分钟(5.8KM/h). 每组跑步1分钟的锻炼和上次比起来略显轻松,因此本次锻炼的目的主要 ...