Linux系统ARM版Filebeat-7.3.2源码编译

说明

本文Linux系统版本是ARM,专门针对ARM版本的linux系统的Jdk进行编译
在这里插入图片描述

1 下载对应版本的源码

https://github.com/elastic/beats/releases?after=v6.8.5
在这里插入图片描述

2 解压并进入目录

在这里插入图片描述
在官网对应的目录下,有源码编译的相关说明
https://github.com/elastic/beats/blob/v7.3.2/docs/devguide/contributing.asciidoc

3 安装go语言

在这里插入图片描述
Filebeat依赖go,因此要先安装go。
特别说明:这里的GOPATH指的是需要你要编译的项目地址,而不是GO安装目录,如果填写为GO安装目录则会报错。GOROOT才配置成GO语言的安装目录!
附:我的/etc/profile配置文件
在这里插入图片描述
配置完成后,执行source /etc/profile使其生效
为了确保已经加入环境变量中,可以分别执行

go version
go env 

在这里插入图片描述
创建编译filebeat的目录

mkdir -p ${GOPATH}/src/github.com/elastic

在这里插入图片描述

4 编译Filebeat

这里已经下载了beat-7.3.2,直接把其拷贝到相应的目录下

git clone https://github.com/elastic/beats 
${GOPATH}/src/github.com/elastic/beats

在这里插入图片描述

然后进入filebeat目录,执行命令make

报错如下:
在这里插入图片描述
报错原因,在main.go中指定的路径不一样,所以找不到
在这里插入图片描述
将beats-7.3.2修改为beats,重新执行,报错如下:
在这里插入图片描述
执行成功,看到编译完成后生成了可执行文件filebeat
修改配置文件filebeat.yml,将enable改为true,其他不变。

在这里插入图片描述

./filebeat –e export template > temp.json

可以看到如下的输出结果,则表示filebeat编译成功,可以在arm中使用。

在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐