How to install Filebeat on a ARM based SBC (eg. Raspberry Pi 3)

@Peter_Poulsen There are no releases or packages generated for ARM. But you can build a binary yourself from one of the release tags. Here's an example using a docker environment to cross-compile for ARM.

macbook$ mkdir filebeat-arm-bin && cd filebeat-arm-bin
macbook$ docker run -it --rm -v `pwd`:/build golang:1.8.3 /bin/bash
root@1465b1675279:/go# go get github.com/elastic/beats       
package github.com/elastic/beats: no buildable Go source files in /go/src/github.com/elastic/beats
root@1465b1675279:/go# cd /go/src/github.com/elastic/beats/filebeat/
root@1465b1675279:/go# git checkout v5.6.3
root@1465b1675279:/go/src/github.com/elastic/beats/filebeat# GOARCH=arm go build
root@1465b1675279:/go/src/github.com/elastic/beats/filebeat# cp filebeat /build
root@1465b1675279:/go/src/github.com/elastic/beats/filebeat# exit
exit
macbook$ file filebeat 
filebeat: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, not stripped

Now you can download the linux tar.gz file from the website and replace the filebeat binary with the one you just built for ARM.

3 Likes