I built MetricBeat from source on an ARMv7 device running Debian Stretch. To do this, I installed Go, then downloaded the Beats source code from GitHub, switched to the matching version for my ElasticSearch and Kibana installations, and successfully ran 'make' under metricbeat, then 'make update'. All this was successful, and I am able to run the metricbeat executable with default configuration.
Question is - How can I create a tarball to deploy this to several other servers running on the same platform (and include all the metricbeat modules and any kibana-related stuff as well)?
The make package target produces .tar.gz, .rpm, and .deb. It requires an x86_64 machine because it uses Docker to cross-compile for all targets. To get it to produce armv7 artifacts use.
cd metricbeat
git checkout v6.6.1 # for example
PLATFORMS='+all linux/armv7' make package
ls -la build/distributions
Hi @andrewkroh - Is the "make package" command to be run after a plain "make"? Right now when I run it I get a "make: Nothing to be done for 'package'." message.
I also tried to do a plain "make" on an x86_64 machine and am getting out of memory errors with the Go linker.
Is there a manual way to package the build into a .tar? I could simply do that for now if I knew what would need to be packaged.
No, that's not necessary. make package should do everything that is required to produce the packages. Doing a make clean before hand is generally a good practice though.
They should work, but I would only use them for testing purposes (non-production). The latest 6.x release tag is what I would use.
The package target takes a lot resources. It's running multiple compiles inside of Docker. I'm curious how much memory you had available on this host?
Thanks @andrewkroh. Seems like my AWS instance might indeed be too small to handle the full-blown build. Since you are doing the v6.6.1 build for armv7, I'll simply use that instead, after upgrading my ELK stack to v6.6.1.
Thanks so much for doing that, btw. Good to have a build that matches the latest GA version of the stack.
@andrewkroh - I was able to test this out and I can confirm that it works fine. Something must have gone wrong during my previous download attempt. Thanks again for making packages from the latest stable release available.
Just out of curiosity, I see a modules.d sub-directory but not a separate modules sub-directory. I'm assuming they are all integrated with the metricbeat executable now?
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.