当前位置: 首页 > news >正文

ELK企业内部日志分析系统(1)

ELK+Kafka+Filebeat企业内部日志分析系统(1)

Elasticsearch集群部署

1.部署环境

IP地址主机名配置系统版本
192.168.222.129es12核4GRockyLinux
192.168.222.130es22核3GRockyLinux
192.168.222.131es32核3GRockyLinux

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-masteres1192.168.222.129RockyLinux2核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地址系统版本配置
kibanaes1192.168.222.129RockyLinux2核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)是一种行为设计模式,它允许对象在内部状态改变时改变其行为。状态模式通过将状态的相关行为分离到独立的状态类中,使得状态转换更加明确和简洁。在金融业务中,状态模式可以用于实现交易状…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...

Debian系统简介

目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版&#xff…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

在rocky linux 9.5上在线安装 docker

前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)

一、OpenBCI_GUI 项目概述 (一)项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台,其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言,首次接触 OpenBCI 设备时,往…...

Rust 开发环境搭建

环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行: rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu ​ 2、Hello World fn main() { println…...