草庐IT

centos7搭建elastiflow

旅途丶 2023-10-23 原文

抽空写了一下elastiflow部署,网上大多数文章都太杂太乱多数会部署失败获取不到数据,我记录一下部署过程,希望能帮到大家

概念性的东西这里不过多介绍,自行百度,下面主要介绍elastiflow的部署和使用

1.环境:centos7最小安装

[root@elastiflow ~]# cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)

2.基础环境配置

yum -y install vim bash-c* net-tools lrzsz wget unzip gcc gcc-c++ epel-release tree 

3.软件包更新

yum update -y
yum clean all
yum makecache

4.关闭防火墙、关闭selinux(生产环境请自行配置防火墙规则、匹配selinux上下文)并重启系统

systemctl stop firewalld
systemctl disable firewalld

[root@elastiflow ~]# vim /etc/selinux/config
SELINUX=disabled

[root@elastiflow ~]# reboot

5.java环境安装,elastiflow是基于java来后台运行的

yum -y install java-openjdk  java-1.8.0-openjdk-devel

6.安装elk(此elk非彼elk,这里是指三个软件包的简写)
注意:这三个包下载链接都在国外,我这里把路径改到了国内

[root@elastiflow src]# cd /usr/local/src/
wget -c http://itityunwei.cn/tools/elastiflow/elasticsearch-7.8.1-x86_64.rpm
wget -c http://itityunwei.cn/tools/elastiflow/logstash-7.8.1.rpm
wget -c http://itityunwei.cn/tools/elastiflow/kibana-7.8.1-x86_64.rpm

下载完直接rpm安装
rpm -ivh elasticsearch-7.8.1-x86_64.rpm logstash-7.8.1.rpm kibana-7.8.1-x86_64.rpm 

7.配置开机自动启动

 systemctl daemon-reload
 systemctl enable elasticsearch.service
 systemctl enable kibana.service
 systemctl enable logstash.service

8.配置文件修改

vim /etc/elasticsearch/elasticsearch.yml


9.jvm内存修改,这个地方要注意,很多人部署完没法获取数据,是因为只改了一个配置文件,另外还需要启用一下java默认路径否则会报权限不足

vim /etc/elasticsearch/jvm.options

vim /etc/logstash/jvm.options

vim /etc/logstash/startup.options

10.修改kibana配置文件

vim /etc/kibana/kibana.yml


然后跳到最下面,修改一下语言显示,默认为英文

11.重启一下服务

systemctl restart elasticsearch.service
systemctl restart kibana.service

12.logstash核心模块安装,请一条执行完了再继续下一条

 /usr/share/logstash/bin/logstash-plugin install logstash-codec-sflow
 /usr/share/logstash/bin/logstash-plugin install logstash-codec-netflow
 /usr/share/logstash/bin/logstash-plugin install logstash-input-udp
 /usr/share/logstash/bin/logstash-plugin install logstash-input-tcp
 /usr/share/logstash/bin/logstash-plugin install logstash-filter-dns
 /usr/share/logstash/bin/logstash-plugin install logstash-filter-geoip
 /usr/share/logstash/bin/logstash-plugin install logstash-filter-translate

13.权限设置

chown -R kibana:kibana /etc/kibana
chown -R kibana:kibana /usr/share/kibana
chown -R kibana:kibana /etc/default/kibana

chown -R elasticsearch:elasticsearch /etc/elasticsearch
chown -R elasticsearch:elasticsearch /usr/share/elasticsearch
chown -R elasticsearch:elasticsearch /var/lib/elasticsearch
chown -R elasticsearch:elasticsearch /var/log/elasticsearch
chown -R elasticsearch:elasticsearch /etc/sysconfig/elasticsearch

chown -R logstash:logstash /etc/logstash
chown -R logstash:logstash /usr/share/logstash
chown -R logstash:logstash /var/lib/logstash
chown -R logstash:logstash /var/log/logstash
chown -R logstash:logstash /etc/default/logstash

14.elastiflow安装,包有1G,包在github,国内下载非常慢,大多情况都会下载失败,我已经载回国内,请使用以下链接下载安装

cd /usr/local/src
wget -c http://itityunwei.cn/tools/elastiflow/elastiflow.tar.gz
tar -zxvf elastiflow.tar.gz
cd /usr/local/src/elastiflow
cp -r logstash/elastiflow /etc/logstash/
cp -r logstash.service.d /etc/systemd/system/
chown -R logstash:logstash /etc/logstash/elastiflow
修改一下默认路径
vim /etc/logstash/pipelines.yml

15.重启一下服务

systemctl daemon-reload
systemctl enable logstash
systemctl start logstash
systemctl restart logstash

16.查看服务信息以及端口信息,这个地方比较重要,需要结合交换机侧,交换机侧我们要清楚是配置的sflow还是netflow,端口是不一样的,默认端口可以修改,修改完交换机上面也要修改,我这里测试环境不做修改

vim /etc/systemd/system/logstash.service.d/elastiflow.conf 


注意了,这个地方,我交换机是sflow协议,所以这里看sflow的ipv4端口,默认是6343,这个端口可以修改,和交换机侧一致即可,看一下端口是否被监听

[root@elastiflow kibana]# netstat -ntulp | grep 6343
udp        0      0 0.0.0.0:6343            0.0.0.0:*                           4836/java   

17.下载kibana模板

cd /usr/local/src/elastiflow/kibana/
[root@elastiflow kibana]# ls
elastiflow.kibana.7.8.x.ndjson
[root@elastiflow kibana]# sz elastiflow.kibana.7.8.x.ndjson

18.导入kibana模板
浏览器访问:http://ip:5601(建议不使用firefox浏览器)

如果没有找到这个目录,kibana这个目录下面的任意目录点进去然后再看看就有了,找到以后如上图,把上一步下载的文件导入进去即可,中文目录(管理→已保存对象→导入)

19.导入以后是没有数据的,我先说一下我们后面需要操作的界面

然后点一下下图进去即可,现在没有数据,还需要配置一下交换机

20.交换机配置(agent ip为交换机侧ip,collector 为服务器ip,注意要和服务器路由可达)
华为:

1、配置交换机的sflow流发送

[系统视图]sflow agen ip  x.x.x.x                 设置sflow输出源

[系统视图]sflow collector 1 ip x.x.x.x           设置sflow分析器组1并关联到IP x.x.x.x

[系统视图]sflow collector 1 port 6343            设置sflow分析器组1输出端口

2、应用slow,配置交换机某个端口的slow功能

[系统视图]int g0/0/14  需进入接口视图

[系统视图-GigabitEthernet0/0/14]sflow flow-sampling inbound     开启接收方向flow采集

[系统视图-GigabitEthernet0/0/14]sflow flow-sampling outbound    开启发送方向flow采集

[系统视图-GigabitEthernet0/0/14]sflow flow-sampling collector 1  设置采集数据输出至分析器组1

[系统视图-GigabitEthernet0/0/14] sflow flow-sampling rate 256    设置采样率

配置完成后就可以把有sflow功能的接口的数据转成sflow流发送到指定sflow数据采集器设备的指定端口

锐捷:

(config)# sflow agent address 10.60.0.2
(config)# sflow collector 1 destination  192.168.1.11 6343
(config)# int h0/1
 sflow counter collector 1
 sflow flow collector 1
 sflow enable

配置好以后如下图

然后等待3分钟,刷新一下kibana页面即可采集到数据,如果等了很长时间都没有数据展示,请看一下日志,多半是logstash或者java的问题,看一下日志详情就能知道什么问题了,日志路径我没有修改,默认路径/var/log/logstash,收集到数据以后我们能看到具体的数据包信息了,还能看到ip地址流量排名、服务威胁等,如下图



至此,elastiflow部署完成,觉得好用请点个赞,有问题也可留言,看见回复!

有关centos7搭建elastiflow的更多相关文章

  1. ruby-on-rails - 无法在centos上安装therubyracer(V8和GCC出错) - 2

    我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e

  2. kvm虚拟机安装centos7基于ubuntu20.04系统 - 2

    需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc

  3. ruby - 为什么 openssl 在 windows 上产生错误但在 centos 上不产生错误:PKCS12_parse: mac verify failure (OpenSSL::PKCS12::PKCS12Error) - 2

    require'openssl'ifARGV.length==2pkcs12=OpenSSL::PKCS12.new(File.read(ARGV[0]),ARGV[1])ppkcs12.certificateelseputs"Usage:load_cert.rb"end运行它会在Windows上产生错误,但在Linux上不会。错误:OpenSSL::PKCS12::PKCS12Error:PKCS12_parse:macverifyfailurefrom(irb):21:ininitializefrom(irb):21:innewfrom(irb):21fromC:/Ruby192/

  4. centos 安装 最新版 skywalking 8.9.1 - 2

    一、相关网址1、官网(可以下载,查看文章)https://skywalking.apache.org/downloads/2、github地址:(可提问题寻求帮助)https://github.com/apache/skywalking二、 实验环境操作系统 centos7.9先安装好 elasticsearch7.16.2操作系统安装好jdk8-17,实验机器jdk11java下载地址:https://www.oracle.com/java/technologies/downloads/#java8IP地址为192.168.24.160三、安装skywalking 1、下载skywalkin

  5. Centos7-yum安装mysql-修改密码-无密码登录-安全配置 - 2

    目录1、yum安装mysql修改密码(1)在mysql里面修改(2)第二种方式,利用mysqladmin修改密码2、没有密码,登录mysql修改密码3、mysql的安全设置1、yum安装mysql在CentOS中默认安装有MariaDB(MySQL的一个分支),安装完成之后可以直接覆盖MariaDB。rpm-qa|grepmariadb查询是否安装了mariadbrpm-e--nodepsmariadb-libs-5.5.60-1.el7_5.x86_64卸载mariadwgethttp://dev.mysql.com/get/mysql57-community-release-el7-11.

  6. Linux操作系统CentOS7安装Nginx[详细版] - 2

    Nginx安装1.官网下载Nginx2.使用XShell和Xftp将压缩包上传到Linux虚拟机中3.解压文件nginx-1.20.2.tar.gz4.配置nginx5.启动nginx6.拓展(修改端口和常用命令)(一)修改nginx端口(二)常用命令1.官网下载Nginxhttp://nginx.org/en/download.html这里我下载的是1.20.2版本,大家按需下载对应稳定版即可2.使用XShell和Xftp将压缩包上传到Linux虚拟机中没有XShell可以参考《Linux操作系统CentOS7连接XShell》3.解压文件nginx-1.20.2.tar.gz1)检查是否存

  7. LinuxGUI自动化测试框架搭建(二十二)-框架主入口main.py设计&log日志调用 - 2

    (二十二)-框架主入口main.py设计&log日志调用和生成1测试目的2测试需求3需求分析4详细设计4.1新建存放日志目录log4.1.1配置config.py中写入log的目录4.2`baseInfo.py`中加入日志4.3`test_gedit.py`中加入日志4.4主函数入口main.py中调用日志5调用日志主函数main.py源码6`baseInfo.py`源码7`test_gedit.py`源码8运行效果9目前框架结构1测试目的组织运行所有的测试用例,并调用日志模块,便于问题定位。

  8. 基于ActiveMQ搭建MQTT服务备忘(二):webapp集成 - 2

    (1)为什么写这个话题(Why)读万卷书不如行千里路。这次搭建MQTT服务,遇到了一些误解,特此记录备忘。主要包括:(1)服务(Broker)的账户管理与网页管理平台的账户(2)与web应用的集成(Spring系)(2)ActiveMQ版本选择因为JAVA环境是JDK8,所以按兼容性考虑选择了ActiveMQ5.15的最后版本5.15.15。如果你是JDK11则可考虑ActiveMQ的最新版本5.17或5.18。ActiveMQ支持MQTTv3.1.1andv3.1。(3)ActiveMQ与web应用的集成主要介绍与Spring系的webapp集成(SpringBoot和SpringMVC)。

  9. 【微服务笔记23】使用Spring Cloud微服务组件从0到1搭建一个微服务工程 - 2

    这篇文章,主要介绍如何使用SpringCloud微服务组件从0到1搭建一个微服务工程。目录一、从0到1搭建微服务工程1.1、基础环境说明(1)使用组件(2)微服务依赖1.2、搭建注册中心(1)引入依赖(2)配置文件(3)启动类1.3、搭建配置中心(1)引入依赖(2)配置文件(3)启动类1.4、搭建API网关(1)引入依赖(2)配置文件(3)启动类1.5、搭建服务提供者(1)引入依赖(2)配置文件(3)启动类1.6、搭建服务消费者(1)引入依赖(2)配置文件(3)启动类1.7、运行测试一、从0到1搭建微服务工程1.1、基础环境说明(1)使用组件这里主要是使用的SpringCloudNetflix

  10. ruby - pg_config、ruby pg、postgresql 9.0 升级后出现问题,centos 5 - 2

    将postgresql8.1升级到9.0后,我注意到库依赖性存在问题。Postgresql工作正常(连接、查询)。yumlistpostgresql*InstalledPackagespostgresql.i3869.0.0-1PGDG.el5installedpostgresql-debuginfo.i3869.0.0-1PGDG.el5installedpostgresql-devel.i3869.0.0-1PGDG.el5installedpostgresql-libs.i3869.0.0-1PGDG.el5installedpostgresql-odbcng.i3860.90.

随机推荐