环境准备:

操作系统:CentOS Linux release 7.4.1708 (Core) 虚拟机即可

兼容矩阵

最近软件更新换代很快啊,到底搭建哪一款ELK适合呢。来官网看下兼容矩阵:

支持矩阵 | Elastic

根据兼容矩阵,选择一款适合自己的,由于小编操作系统centos自带了openjdk1.8.因此还需要考虑到是否兼容java1.8的环境。

从兼容矩阵看到,ES8已经放弃了JDK1.8。因此小编选择了ES7.10来作为实验品。

软件列表如下:

elasticsearch-7.10.1-linux-x86_64.tar.gz

kibana-7.10.0-linux-x86_64.tar.gz

logstash-7.10.0-linux-x86_64.tar.gz

就选择这3个来搭建ELK环境。

下载地址

从开源社区下载:下载中心 - Elastic 中文社区

ElasticSearch安装

先安装elastic search,赋权给非root用户。我喜欢visudo。简单快捷方便。

ES 有点注意的是,它不能用root用户启动。所以提前建好非root用户。

如下命令暂时记下,需要再ES启动报错执行。偷懒了,记得是需要改些系统配置的。

操作命令

301  2022-03-23 11:37:28 ulimit -S -n
  302  2022-03-23 11:37:31 ls  /etc/security/limits.conf
  303  2022-03-23 11:37:34 vim  /etc/security/limits.conf
  304  2022-03-23 11:39:14 echo "fs.file-max = 1000000">> /etc/sysctl.conf
  305  2022-03-23 11:39:14 echo "net.core.somaxconn = 32768">> /etc/sysctl.conf
  306  2022-03-23 11:39:14 echo "net.ipv4.tcp_tw_recycle = 0">> /etc/sysctl.conf
  307  2022-03-23 11:39:14 echo "net.ipv4.tcp_syncookies = 0">> /etc/sysctl.conf
  308  2022-03-23 11:39:14 echo "vm.overcommit_memory = 1">> /etc/sysctl.conf
  309  2022-03-23 11:39:15 sysctl -p
  310  2022-03-23 11:39:39 cat  >> /etc/systemd/system/cpupower.service << EOF
  311  2022-03-26 16:41:00 [Unit]
  312  2022-03-26 16:41:00 Description=CPU performance
  313  2022-03-26 16:41:00 [Service]
  314  2022-03-26 16:41:00 Type=oneshot
  315  2022-03-26 16:41:00 ExecStart=/usr/bin/cpupower frequency-set --governor performance
  316  2022-03-26 16:41:00 [Install]
  317  2022-03-26 16:41:00 WantedBy=multi-user.target
  318  2022-03-26 16:41:00 EOF
  319  2022-03-23 11:39:44 systemctl daemon-reload
  320  2022-03-23 11:39:48 systemctl enable cpupower.service
  321  2022-03-23 11:39:54 systemctl start cpupower.service
  322  2022-03-23 11:40:14 echo never > /sys/kernel/mm/transparent_hugepage/enabled

323  2022-03-23 11:40:15 echo never > /sys/kernel/mm/transparent_hugepage/defrag
  324  2022-03-23 11:40:23 vi /etc/udev/rules.d/60-tidb-schedulers.rules
  325  2022-03-23 11:40:42 udevadm control --reload-rules
  326  2022-03-23 11:40:43 udevadm trigger --type=devices --action=change
  327  2022-03-23 11:40:46 cat  >> /etc/systemd/system/cpupower.service << EOF
  328  2022-03-26 16:41:00 [Unit]
  329  2022-03-26 16:41:00 Description=CPU performance
  330  2022-03-26 16:41:00 [Service]
  331  2022-03-26 16:41:00 Type=oneshot
  332  2022-03-26 16:41:00 ExecStart=/usr/bin/cpupower frequency-set --governor performance
  333  2022-03-26 16:41:00 [Install]
  334  2022-03-26 16:41:00 WantedBy=multi-user.target
  335  2022-03-26 16:41:00 EOF
  336  2022-03-23 11:40:50 systemctl daemon-reload
  337  2022-03-23 11:40:50 systemctl enable cpupower.service
  338  2022-03-23 11:40:51 systemctl start cpupower.service
  339  2022-03-23 11:40:55 cat /sys/kernel/mm/transparent_hugepage/enabled
  340  2022-03-23 11:40:59 cat /sys/block/sd[bc]/queue/scheduler
  341  2022-03-23 11:41:24 vim /etc/security/limits.conf

ES配置

ES配置文件更改:

config文件夹下的jvm.options更改。

-Xms10g
-Xmx10g
来它10个G的内存,否则会很慢。

config文件夹下的elasticsearch.yml,有效配置为:

cluster.name: my-application

node.name: node-1

path.logs: /data/path/to/logs

path.logs: /data/path/to/logs

network.host: 0.0.0.0

http.port: 9200

cluster.initial_master_nodes: ["node-1"]

其他配置暂且搁置,不影响Es使用。启动即可使用。

保证高可用

为了保证一个高可用,用脚本实现下单机版本的高可用

#!/bin/bash
nnn1=$(ps -ef | grep elasticsearch | grep -v grep | grep -v monitor | wc -l)
echo $nnn1

for i in $(ps -ef | grep elasticsearch | grep -v grep | grep -v monitor |awk '{print $2}');do echo $i;done;
ps -ef | grep elasticsearch | grep -v grep | grep -v monitor

if [ $nnn1 -ne 2 ]; then
  echo 'wrong,pease restart the elasticsearch'
  for i in $(ps -ef | grep elasticsearch | grep -v grep |grep -v monitor |awk '{print $2}');do kill -9 $i;done;
  echo "restart now ...."
  /data/software/elasticsearch/bin/elasticsearch -d
  echo "restart over ....."
fi

在系统定时器里加上

[sysadm@tidb196 config]$ crontab -l
*/2 * * * * sh /data/software/elasticsearch/bin/monitor.sh &

只要ES有变动,两分钟监控一次,然后启动,可以保证ES不会挂掉吧。。。。

哈哈。这样,只要发现es服务器挂,就启动。优点low。

kibana安装

这个更简单了,直接把压缩包解压即可。

有效配置

server.port: 5601

server.host: "0.0.0.0"

server.name: "your-hostname"

elasticsearch.requestTimeout: 60000

i18n.locale: "zh-CN"

然后sbin目录下kiban运行即可。

也用脚本和监控来了下。

#!/bin/bash
kn=$(ss -antlup | grep 5601 | wc -l)
echo $kn

for i in $(ss -antlup | grep 5601 | awk '{print $7}' | awk -F"," '{print $2}' | awk -F"=" '{print $2}');do echo $i;done;

if [ $kn -ne 2 ]; then
  echo 'wrong,pease restart the kibana'
  for i in $(ss -antlup | grep 5601 | awk '{print $7}' | awk -F"," '{print $2}' | awk -F"=" '{print $2}');do kill -9 $i;done;
  echo "kibana restart now ...."
  /data/software/kibana/bin/kibana &
  echo "kibana restart over ....."
fi

[sysadm@tidb196 bin]$ crontab -l
*/2 * * * * sh /data/software/elasticsearch/bin/monitor.sh &
*/2 * * * * sh /data/software/kibana/bin/monitor.sh &
*/2 * * * * sh /data/software/logstash/bin/monitor.sh &

logstash安装和配置

input {
    gelf {
          port => 1560
          use_tcp => true
    }
}

filter {
   grok {
       match => { "message" => "%{COMBINEDAPACHELOG}" }
    }
   geoip {
       source => "clientip"
    }
}

output {
     elasticsearch {
         hosts => ["http://11.10.32.196:9200"]
         index => "logstash-%{service_name}-%{+YYYY-MM-dd}"
     }
}

#!/bin/bash
ln=$(ps -ef | grep logstash | grep -v grep | grep -v monitor | wc -l)
echo $ln
if [ $ln -ne 1 ]; then
  echo 'wrong,pease restart the logstash'
  for i in $(ps -ef | grep logstash | grep -v grep |grep -v monitor |awk '{print $2}');do kill -9 $i;done;
  echo "logstash restart now ...."
  /data/software/logstash/bin/logstash -f /data/software/logstash/config/logstash.conf --config.reload.automatic &
  echo "logstash restart over ....."
fi

搭建ELK-流水账-只记思路相关推荐

  1. 手把手教你搭建 ELK 实时日志分析平台

    来自:武培轩 本篇文章主要是手把手教你搭建 ELK 实时日志分析平台,那么,ELK 到底是什么呢? ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash ...

  2. 爬虫 spider10——搭建elk平台,开发服务提供者

    第一步:爬取指定数据,去重复,并存储到mysql. Springboot+ssm+定时(定时器)爬取+redis去重+mybatis保存. 详情请看爬虫 spider09--爬取指定数据,去重复,并存 ...

  3. 搭建 ELK 问题排查

    2019独角兽企业重金招聘Python工程师标准>>> 最近在电脑上开了三个虚拟机鼓捣了一下 ELK,配置成功之后,关闭虚拟机重新打开总是出现一些奇怪的问题,使得 kibana 处于 ...

  4. 搭建ELK日志分析平台(上)—— ELK介绍及搭建 Elasticsearch 分布式集群

    笔记内容:搭建ELK日志分析平台(上)-- ELK介绍及搭建 Elasticsearch 分布式集群 笔记日期:2018-03-02 27.1 ELK介绍 27.2 ELK安装准备工作 27.3 安装 ...

  5. 手把手教你如何快速搭建 ELK 实时日志分析平台

    本篇文章主要是手把手教你搭建 ELK 实时日志分析平台,那么,ELK 到底是什么呢? ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash 和 Kiban ...

  6. 【实战】本机用docker搭建elk环境并接入frostmourne,实现监控报警效果

    本篇文章着重的是实战方面,基于本机使用docker来搭建elk环境,然后接入frostmourne来实现监控.报警.分析系统,后续会再发文来介绍如何将此监控报警发布到生产环境. 本机用docker搭建 ...

  7. 快速搭建ELK日志分析系统

    官网地址:https://www.elastic.co/cn/ 官网权威指南:https://www.elastic.co/guide/cn/elasticsearch/guide/current/i ...

  8. hdu 动态规划(46道题目)倾情奉献~ 【只提供思路与状态转移方程】(转)

    HDU 动态规划(46道题目)倾情奉献~ [只提供思路与状态转移方程] Robberies http://acm.hdu.edu.cn/showproblem.php?pid=2955      背包 ...

  9. 手把手教你搭建ELK,原来这么简单

    思维导图 文章已收录Github精选,欢迎Star:https://github.com/yehongzhi/learningSummary 概述 我们都知道,在生产环境中经常会遇到很多异常,报错信息 ...

  10. 用Docker镜像搭建ELK环境

    之前在Windows上尝试过搭建ELK环境,并将MySQL或SQLServer中的数据导入到Elasticsearch中.现在用Docker提供的镜像可以快速的完成这一操作. 环境说明 系统:Wind ...

最新文章

  1. spring面试重点
  2. 《基于张量网络的机器学习入门》学习笔记5
  3. Alpha 通道的概念与功能
  4. 世界机器人冠军王宇航_★​身边的榜样,为你喝彩:我校学子摘冠第七届河南省VEX U机器人挑战赛...
  5. 百度小程序全套源码下载、免费分享,一键生成百度小程序
  6. 【转】DBMS_STATS.GATHER_TABLE_STATS详解
  7. mongodb 持久化 mysql_最详细的python爬虫指南(四):持久化操作(mongoDB、mysql)...
  8. 5_python基础—条件语句(三目运算符)
  9. 移除类名没有触发transition_epoll边缘触发模式
  10. 北京地铁挤,最挤昌平线
  11. 中兴F607ZA查看超级管理员密码
  12. 使用 NW.js 将 Web 应用打包为桌面应用nw-builder
  13. 验证(Verification) 确认(Validation)鉴定( Qualification) 的区别
  14. 【Arduino 连接DHT11 湿度和温度传感器】
  15. 小娱路由php,跟风折腾小娱路由器XY-C5,做低功耗路由+下载器+轻量化NAS.
  16. python如何赋值给元组_【Python 1-9】Python手把手教程之——元组和元组的使用技巧...
  17. Ubuntu-nome下查看笔记本电池损耗情况
  18. Loadrunner C/S关联函数(LSP)AND(LSSS)使用-案例
  19. Python批量OCR日语文字图片并输出内容至文本文档~(调用百度OCRapi)
  20. SAM无法分割一切?SAM-Adapter:首次让SAM在下游任务适应调优!

热门文章

  1. 通过TMS320F28335学习DSP的开发流程——28335的基础知识(1)
  2. C语言指针和指针变量
  3. java 生成ai矢量图_AI利用自己的工具将位图转换为矢量图
  4. Dell服务器能使用无线网卡,dell无线网卡驱动,手把手教你dell无线网卡驱动
  5. OpenCore引导配置说明第三版
  6. 选股公式 成功率测试 软件,通达信股票软件选股公式,99%的成功率,你还等什么?...
  7. VS无法启动程序调试监视器未能启动
  8. (Adobe Premiere Pro CS4)[ISO]《Adobe非线性视频编辑软件》
  9. EasyUI项目之书籍管理(CRUD)
  10. AutoCAD全面卸载的方法