ELK企业内部日志分析系统(1)
ELK+Kafka+Filebeat企业内部日志分析系统(1)
Elasticsearch集群部署
1.部署环境
| IP地址 | 主机名 | 配置 | 系统版本 |
|---|---|---|---|
| 192.168.222.129 | es1 | 2核4G | RockyLinux |
| 192.168.222.130 | es2 | 2核3G | RockyLinux |
| 192.168.222.131 | es3 | 2核3G | RockyLinux |
2.配置主机名解析和主机名
#关闭防火墙与selinux
#更改主机名(三台机器均操作)
[root@localhost ~]# hostnamectl set-hostname es1
#添加主机名解析
[root@es1 ~]# vim /etc/hosts
192.168.222.129 es1
192.168.222.130 es2
192.168.222.131 es3
3.相关地址
官方地址:https://www.elastic.co
官网搭建:https://www.elastic.co/guide/index.html
4.安装配置ES
1.创建运行ES的普通用户
[root@es1 ~]# useradd es
[root@es1 ~]# echo "123" |passwd --stadin "es"
2.安装配置ES
#这里已经把包传到服务器
[root@es1 ~]# ls
anaconda-ks.cfg elasticsearch-7.13.2-linux-x86_64.tar.gz kibana-7.13.2-linux-x86_64.tar.gz node-v10.0.0-linux-x64.tar.gz
[root@es1 ~]# tar xf elasticsearch-7.13.2-linux-x86_64.tar.gz -C /usr/local/
[root@es1 ~]# cd /usr/local
[root@es1 local]# mv elasticsearch-7.13.2-linux-x86_64.tar.gz/ es
#修改配置文件(删除里面注释添加以下内容)
[root@es1 local]# vim /es/config/elasticsearch.yml
cluster.name: bjbpe01-elk
cluster.initial_master_nodes:["es1","es2","es3"]
node.name: es1
node.master: true
node.data: true
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
discovery.seed_hosts: ["es2","es3"]
discovery.zen.minimum_master_nodes: 2
discovery.zen.ping_timeout: 150s
discovery.zen.fd.ping_retries: 10
client.transport.ping_timeout: 60s
http.cors.enabled: true
http.cors.allow-origin: "*"
3. 设置JVM堆大小
[root@es1 local]# sed -i 's/## -Xms4g/-Xms4g/' /usr/local/es/config/jvm.options
[root@es1 local]# sed -i 's/## -Xmx4g/-Xmx4g/' /usr/local/es/config/jvm.options
4.创建ES数据及日志存储目录
#(三台机器均操作)
[root@es1 local]# mkdir -p /data/elasticsearch/data
[root@es1 local]# mkdir -p /data/elasticsearch/logs
5.修改安装目录及权限
#(三台机器均操作)
[root@es1 local]# chown -R es.es /data/elasticsearch
[root@es1 local]# chown -R es.es /usr/local/es
6.系统优化(三台机器均操作)
1.增加最大文件打开数
永久生效方法:
[root@es1 local]# echo "* soft nofile 65536" >> /etc/security/limits.conf
2.增加最大进程数
[root@es1 local]# echo "* soft nproc 65536" >> /etc/security/limits.conf
3.增加最大内存映射数
[root@es1 local]# echo "vm.max_map_count=262144" >> /etc/sysctl.conf
[root@es1 local]# sysctl -p
5.启动ES
[root@es1 local]# cd es
[root@es1 es]# su es
[es@es1 es]$ bin/elasticsearch
6.安装配置head监控插件
- 服务器
| 安装软件 | 主机名 | IP地址 | 系统版本 | 配置 |
|---|---|---|---|---|
| Elasticsearch-head-master | es1 | 192.168.222.129 | RockyLinux | 2核4G |
1.安装node
[root@es1 ~]# 123.txt anaconda-ks.cfg elasticsearch-7.13.2-linux-x86_64.tar.gz kibana-7.13.2-linux-x86_64.tar.gz node-v10.0.0-linux-x64.tar.gz
[root@es1 ~]# tar xf node-v10.0.0-linux-x64.tar.gz -C /usr/local
[root@es1 ~]# vim /etc/preofile
NODE_HOME=/usr/local/node-v10.0.0-linux-x64
PATH=$NODE_HOME/bin:$PATH
export NODE_HOME PATH
[root@es1 ~]# source /etc/profile
[root@es1 ~]# node --version
2.下载head插件
[root@es1 ~]# wget https://github.com/mobz/elasticsearch-head/archive/master.zip
[root@es1 ~]# yum -y install unzip
[root@es1 ~]# unzip -d /usr/local elasticsearch-head-master.zip
3.安装grunt
[root@es1 ~]# cd /usr/local/elasticsearch-head-master
[root@es1 elasticsearch-head-master]# npm install -g grunt-cli
#检查版本号
[root@es1 elasticsearch-head-master]# grunt -version
5.修改head源码
#修改成以下内容
[root@es1 ~]# vim /usr/local/elasticsearch-head-master/Gruntfile.js +99port: 9100,base: '.',keepalive: true,hostname: '*'
[root@elk ~]# vim /usr/local/elasticsearch-head-master/_site/app.js +4388this._super();this.prefs = services.Preferences.instance();this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.222.129:9200";
6.下载head必要的文件
[root@elk ~]# wget https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2
[root@elk ~]# yum -y install bzip2
[root@elk ~]# mkdir /tmp/phantomjs
[root@elk ~]# mv phantomjs-2.1.1-linux-x86_64.tar.bz2 /tmp/phantomjs/
[root@elk ~]# chmod 777 /tmp/phantomjs -R
7.运行head
[root@elk ~]# cd /usr/local/elasticsreach-head-master
[root@elk elasticsreach-head-master]# npm install
#上一行报错执行以下命令
[root@elk elasticsreach-head-master]# npm install phantomjs-prebuilt@2.1.16 --ignore-scripts
[root@elk elasticsreach-head-master]# nohup grunt server &
[root@elk elasticsreach-head-master]# ss -ntlp
7.部署kibana
| 安装软件 | 主机名 | IP地址 | 系统版本 | 配置 |
|---|---|---|---|---|
| kibana | es1 | 192.168.222.129 | RockyLinux | 2核4G |
1.安装kibana
[root@es1 ~]# tar zxf kibana-7.13.2-linux-x86_64.tar.gz -C /usr/local
4.配置文件
[root@es1 ~]# cd /usr/local
[root@es1 local]# vim kibana-7.13.2-linux-x86_64/config/kibana.yml
server.port: 5601
server.host: "192.168.222.129"
elasticsearch.hosts: ["http://192.168.222.129:9200"]
kibana.index: ".kibana"
i18n.locale: "zh-CN"
[root@es1 local]# cd kibana-7.13.2-linux-x86_64/
[root@es1 kibana-7.13.2-linux-x86_64]# ./bin/kibana --allow-root
相关文章:
ELK企业内部日志分析系统(1)
ELKKafkaFilebeat企业内部日志分析系统(1) Elasticsearch集群部署 1.部署环境 IP地址主机名配置系统版本192.168.222.129es12核4GRockyLinux192.168.222.130es22核3GRockyLinux192.168.222.131es32核3GRockyLinux 2.配置主机名解析和主机名 #关闭防火墙与selinux #更改主机…...
反序列化POP链技术详解
POP( Procedure Oriented Programming )链是反序列化安全问题中相对比较重要的技术点,相比于其他的反序列化问题,这种漏洞的产生更加难以发现,以及在利用上也比较复杂。 要掌握这个东西首先要先了解面向对象中的几个特…...
process.env.VUE_APP_BASE_API
前端:process.env.VUE_APP_BASE_API 在Vue.js项目中,特别是使用Vue CLI进行配置的项目,process.env.VUE_APP_BASE_API 是一个环境变量的引用。Vue CLI允许开发者在不同环境下配置不同的环境变量,这对于管理API基础路径、切换开发…...
面试题--SpirngCloud
SpringCloud 有哪些核心组件?(必会) Eureka: 注册中心, 服务注册和发现 Ribbon: 负载均衡, 实现服务调用的负载均衡 Hystrix: 熔断器 Feign: 远程调用 Zuul: 网关 Spring Cloud Config: 配置中心 (1)Eureka 提供服务注册和发现, 是注册中心. 有两个组…...
中位数贪心,3086. 拾起 K 个 1 需要的最少行动次数
一、题目 1、题目描述 给你一个下标从 0 开始的二进制数组 nums,其长度为 n ;另给你一个 正整数 k 以及一个 非负整数 maxChanges 。 Alice 在玩一个游戏,游戏的目标是让 Alice 使用 最少 数量的 行动 次数从 nums 中拾起 k 个 1 。游戏开始…...
xml_woarchive undefined symbol
最近在linux中编译一个自己写的老代码。是个C动态库。可以编译成功,但直到运行的时候才报 boost xml_woarchive undefined symbol. 解决的方法是在编译时要加上 wserialization 库。 注意,这个库有含 w 和不含 w 两个。在我这里需要使用含 w 的。 如果…...
SiCat:一款多功能漏洞利用管理与搜索工具
关于SiCat SiCat是一款多功能漏洞利用管理与搜索工具,该工具基于纯Python 3开发,旨在帮助广大研究人员有效地识别和收集来自开源和本地存储库的漏洞信息。 SiCat专注于网络安全管理方面的实践工作,允许研究人员快速实现在线搜索,…...
毕业论文初稿写作方法与过程
毕业论文初稿写作方法与过程 毕业论文是大学生在学业结束前必须完成的一项重要任务,它不仅是对学生所学知识的综合运用,也是对学生研究能力和写作能力的检验。写好毕业论文初稿是完成高质量毕业论文的关键一步。下面将具体阐述毕业论文初稿的写作方法和过…...
SLAM 精度评估
SLAM 精度的评估有两个最重要的指标,即绝对轨迹误差(ATE)和相对位姿误差(RPE)的 均方根误差(RMSE): 绝对轨迹误差:直接计算相机位姿的真实值与 SLAM 系统的估计值之间的差值,首先将…...
Postman使用教程
传统接口风格 RESTful风格 使用Postman完成测试用例目标: Postman教程 (1)准备工作,下载Postman新建 (2)登录接口调试-获取验证码 (3)登录接口调试-登录 (4)…...
UDP协议深入解析
一. UDP报文结构 UDP报文由以下4个字段组成: 源端口号(Source Port):16位,标识发送方的端口号。如果发送方没有使用端口号,则该字段为0。 目标端口号(Destination Port):16位,标识接收方的端口号。 长度(Length):16位,表示UDP报文的总长度,…...
Rethinking Federated Learning with Domain Shift: A Prototype View
CVPR2023,针对分布式数据来自不同的域时,私有模型在其他域上表现出退化性能(具有域转移)的问题。提出用于域转移下联邦学习的联邦原型学习(FPL)。核心思想是构建集群原型和无偏原型,提供富有成效的领域知识和公平的收敛目标。将样本嵌入拉近到属于相同语义的集群原型,而…...
打卡第2天----数组双指针,滑动窗口
今天是参与训练营第二天,这几道题我都看懂了,自己也能写出来了,实现思路很重要,万事开头难,希望我可以坚持下去。希望最后的结果是量变带来质变。 一、理解双指针思想 leetcode编号:977 不止是在卡尔这里…...
Running cmake version 2.8.12.2解决方案
Centos7安装mysql8.0,编译环节出现如下报错: Running cmake version 2.8.12.2 CMake Warning at CMakeLists.txt:82 (MESSAGE):Please use cmake3 rather than cmake on this platform-- Please install cmake3 (yum install cmake3) CMake Error at CMa…...
stm32中IIC通讯协议
参考资料:大部分均引用b站江协科技课程、GPT及网络资料 什么是IIC(i2C)通讯协议? 关键字:SCL、SDA、半双工、同步、串行。 IIC(Inter-Integrated Circuit),也称为I2C(In…...
允许防火墙通过端口 6379(通常用于 Redis 服务)那些年因为连接失败而一起熬过的夜
要允许防火墙通过端口 6379(通常用于 Redis 服务),您可以按照以下步骤在防火墙中添加规则。这里提供了使用 firewalld 和 ufw 两种常见防火墙管理工具的方法。 使用 firewalld (CentOS、Red Hat 等) 1. 启动并启用 f…...
tsconfig.json的include和exclude作用
tsconfig.json中的include和exclude属性用于指定需要被编译的TypeScript文件和需要被排除的文件。 include属性:用于指定哪些.ts、.tsx或.d.ts文件需要被编译。如果不指定include属性,则默认当前目录下除了exclude之外的所有.ts、.d.ts、…...
firewalld(8) policies
简介 前面的文章中我们介绍了firewalld的一些基本配置以及NAT的相关配置。在前面的配置中,我们所有的策略都是与zone相关的,例如配置的rich rule,--direct,以及NAT,并且这些配置都是数据包进入zone或者从zone发出时设置的策略。 我们在介绍…...
为什么进口主食冻干那么高贵?必入榜主食冻干总结分享
新手养猫人常常会有这样的疑问:为何进口主食冻干价格如此昂贵,但仍有大量养猫达人对其推崇备至?与国产主食冻干相比,进口产品的价格高出3-4倍之多,那么这高昂的价格背后,进口主食冻干是否真的值得推荐&…...
状态模式在金融业务中的应用及其框架实现
引言 状态模式(State Pattern)是一种行为设计模式,它允许对象在内部状态改变时改变其行为。状态模式通过将状态的相关行为分离到独立的状态类中,使得状态转换更加明确和简洁。在金融业务中,状态模式可以用于实现交易状…...
用Linux内核模块复现AMDGPU的dma-fence:一个可运行的Ring Buffer同步模型Demo
从零构建Linux内核模块:AMDGPU风格dma-fence环形缓冲区同步模型实战在Linux内核开发领域,GPU驱动开发一直被认为是技术门槛较高的方向之一。AMDGPU作为现代显卡的开源驱动,其内部实现涉及复杂的同步机制,其中dma-fence作为核心同步…...
CVPR 2019 RKD论文复现踩坑记:从理论公式到可运行的PyTorch代码全解析
CVPR 2019 RKD论文复现实战:从数学推导到工业级PyTorch实现的关键细节当我在实验室第一次尝试复现CVPR 2019的Relational Knowledge Distillation(RKD)算法时,原以为按照论文公式直接编码就能快速跑通实验。但实际动手后才发现&am…...
从零到一:用Python+微分方程模拟传染病传播(以SIR模型为例)
从零到一:用Python微分方程模拟传染病传播(以SIR模型为例)在公共卫生领域,传染病传播模型一直是预测疫情发展趋势的重要工具。SIR模型作为经典的传染病动力学模型,通过微分方程组描述了易感者(S)、感染者(I)和康复者(R…...
华为openEuler系统下,永久配置JAVA_HOME环境变量的三种方法(含/etc/profile与~/.bashrc对比)
华为openEuler系统下永久配置JAVA_HOME的深度实践指南在openEuler系统中部署Java应用时,环境变量配置的持久性直接影响开发效率和系统稳定性。许多开发者遇到过这样的困扰:明明在终端中配置了JAVA_HOME,重启服务器后所有设置"消失"…...
从塔防到RPG:在Unity里用A*算法实现不同游戏类型的敌人AI(实战案例)
从塔防到RPG:在Unity里用A*算法实现不同游戏类型的敌人AI(实战案例)当你在玩一款塔防游戏时,是否好奇那些怪物为何总能找到通往终点的最优路径?或者在RPG游戏中,NPC为何能绕过复杂地形精准追踪玩家…...
OpenSSH ssh-agent动态链接劫持漏洞CVE-2023-38408深度修复指南
1. 这不是一次普通升级:CVE-2023-38408为什么必须亲手编译修复 OpenSSH-ssh-agent CVE-2023-38408——这个编号在2023年7月刚披露时,很多运维和安全工程师第一反应是“又一个高危漏洞”,点开NVD页面扫一眼CVSS 8.8分,记下补丁版本…...
2026校招人才整体素质洞察
导读:这份《2026 校招人才素质洞察报告》由前程无忧发布,围绕 AI 时代校招变局,依托 800 万 测评数据,系统剖析应届毕业生的素质特征,提出人才筛选新坐标,为企业校招提供战略方向与实操参考。关注公众号&a…...
Taotoken 用量看板如何帮助个人开发者管理月度成本
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Taotoken 用量看板如何帮助个人开发者管理月度成本 对于独立开发者而言,在项目开发中调用多个大模型 API 时࿰…...
Arknights-Mower:解放双手的明日方舟智能基建管理工具
Arknights-Mower:解放双手的明日方舟智能基建管理工具 【免费下载链接】arknights-mower 《明日方舟》长草助手 项目地址: https://gitcode.com/gh_mirrors/ar/arknights-mower 在《明日方舟》的日常游戏过程中,基建管理、资源刷取和日常任务占据…...
上下文是新的算力吗?
在过去六个月里,前沿级AI能力的推理成本下降了约85%。来自Meta、阿里巴巴等公司的开放权重模型,如今在关键基准测试上已经能匹敌上个季度最好的闭源模型。一个曾经每月花费数千美元运行在领先专有模型上的生产工作负载,现在可以用开源替代方案…...
