Trying to install InfluxDb 2.0 beta on Raspberry Pi 4b w/ 4Gb RAM

Using the instructions found here: https://v2.docs.influxdata.com/v2.0/get-started/ , I was able to download the arm version and place the executables in my PATH without issue. However, when I try to start the service with “influxd”, I get:

bash: /usr/local/bin/influxd: cannot execute binary file: Exec format error

This leads me to believe that there is a mismatch between the executable build and the rPi 4’s ARMv8 architecture. Has anyone else run into this? Are there instructions on building it locally?

Hopefully I’m just missing something obvious!

The current versions of InfluxDB 2.0 are 64-bit only. Most versions of the OS for Raspberry Pi are 32-bit, so they are not compatible. You will need to find a 64-bit version of Linux for Raspberry Pi and then install 2.0.

HTH,
dg

Thanks, that indeed explains it! I installed Gentoo (arm64) and it worked flawlessly. Maybe that could be added to the guide and/or docs? I would hate for anyone else to get stumped before they even get to the good stuff! :blush:

Thanks, I’ll look at updating the guide. I have, in recent days, managed to compile a version of InfluxDB 2.0 OSS for 32-bit Raspberry Pi, but it was not easy, and isn’t 100% functional. Yet.

Hi davidgs!

I have the same problem. I need also the Influxdb 2.0 for 32bit. Can I help in your project, or do you have a stable version?

any updates on this?
Or could you maybe outline which tricks were necessary to compile that for 32 bit arm?

I managed to somehow build v2 on an armv7l device.
First things first, influxd seems to run, I can access the ui, writing to the database also works, but every query fails with
error a panic has occurred {"log_id": "0NEwPGD0000", "handler": "panic", "error": "runtime error: invalid memory address or nil pointer dereference"}

So not really usable at the moment. There is also an open issue https://github.com/influxdata/flux/issues/2505 that flux does not support arm at the moment. For me, it even fails without these query, every query fails.

Just in case somebody wants to try.
What I had to do (please note that some steps might be unnecessary in hindsight)

  • Install libprotobuf-dev libprotoc-dev bazaar protobuf pkg-config via apt-get
  • Install clang (I install clang-8, not sure if necessary)
  • Install go according to docs.
  • Install rust via https://rustup.rs/
  • Have nodejs installed
  • install yarn via npm install -g yarn
  • I had to call rustup target add arm-unknown-linux-gnueabihf
  • go build -o ~/go/bin/ github.com/influxdata/pkg-config
  • export PATH=$PATH:/usr/local/go/bin
  • export PATH=$HOME/go/bin:${PATH}

Now to the ugly bits:

  • cypress did not install for me. Therefore, I removed the cypress dependencies from the package.json in ui. As far as I can tell, cypress is only needed for testing
  • then you can finally run make, but this will fail for influxd and influx, due to some int vs int64 error. I had to fix source code at two places. The error message will tell you where. make takes ages, especially bundling the ui and requires a lot of RAM (again ui only)

Is there any time frame when arm might be supported in flux and influxdb v2?
I can also test things, since I now have a kind of build chain

I’m in similar boat- experimenting with a pi4.
I’ve literally only been running for past 2 hours, but it looks like it runs fine for me under latest raspbian, but you have to tell it to run the new beta Aarch64 kernel

Backup everything first - just in case!

Add arm_64bit=1 to the very end of /boot/config.txt , then do the usual to update, sudo apt-get update ; sudo apt-get upgrade , then reboot.

After it comes back up, run uname -a to confirm it now shows aarch64
Linux raspiM 4.19.118-v8+ #1311 SMP PREEMPT Mon Apr 27 14:32:38 BST 2020 aarch64 GNU/Linux

From there I just followed the steps on this page:

https://v2.docs.influxdata.com/v2.0/get-started/#start-with-influxdb-oss

Hi,

unfortunately, I have a 32 bit cpu and therefore had to compile for that architecture.

Out of curiosity, does the mean and sum operation in a flux query work for you? Here people have reported that it does not work https://github.com/influxdata/flux/issues/2505

Interesting - the bug is still present for both sum and mean under the official beta arm influxdb v2 build 2.0.0-beta.10.
But apart from that, leaving this here for others to confirm that erything else I can see is working on a raspberry Pi4 now (with aarch64 kernel enabled under raspbian).

Edit: I’ve posted on that Issues ticket.

1 Like