helm-charts
helm-charts copied to clipboard
Image for ARM64
Is your feature request related to a problem? Please describe.
I would like to deploy this chart on a cluster with both amd64 and arm64 nodes. Unfortunately, the provided image quay.io/fluentd_elasticsearch/fluentd
only supports amd64
.
Describe the solution you'd like A multi-arch image would solve the problem.
Describe alternatives you've considered
Who owns this image: quay.io/fluentd_elasticsearch/fluentd
? Where is its Dockerfile
? If I had access to the Dockerfile
I could easily built it on arm64
.
I guess i could build arm images too but the question is which arm version should be supported? Arm 64 only? Or also arm 32?
That would be awesome 👍
Looking at fluentd-kubernetes-daemonset: it provides x86_64
and arm64
images.
Btw what are the differences (if any) between the image provided here and in this fluentd-kubernetes-daemonset image?
You can compare with: https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/fluentd-elasticsearch/fluentd-es-image
Have you tried to use the image you posted? Might work as well with the chart.
No haven't tried it, and probably won't be so easily possible because a lot of people depend on it ;) But I will take a close look. In the mean time, would be really appreciate if you push the multi-arch image 🚀
I have a github action pipeline in place, which builds for arm64 too :)
https://github.com/monotek/fluentd-elasticsearch/runs/1456493963
Image can be downloaded an tested via: https://quay.io/repository/monotek/fluentd-elasticsearch?tab=tags
Be aware, that you have to set the LD_PRELOAD env var manually for ARM64 at the moment. See: https://github.com/monotek/fluentd-elasticsearch/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-image/Dockerfile#L69
@t089 have you tried the image i've build?
@t089 ping
Hello @monotek,
I'm trying to run your image and on start, I see the following in the log:
standard_init_linux.go:219: exec user process caused: exec format error
I use LD_PRELOAD env variable pointing to /usr/lib/aarch64-linux-gnu/libjemalloc.so.2 Can you point please what could be wrong here?
I don't have an arm setup to test :/
Which version of the image do you use?
2a6f58506a18
let me know if I can help you to debnug
At least setting the preload var is not needed anymore as it was moved to the entrypoint: https://github.com/monotek/fluentd-elasticsearch/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-image/entrypoint.sh#L23
can you run the container with a shell entrypoint and try to start fluentd manually?
Hey, FWIW, for me the image works on both amd64
and arm64
. Thanks!
$ docker run -it quay.io/monotek/fluentd-elasticsearch:5
2021-02-02 10:28:39 +0000 [info]: parsing config file is succeeded path="/etc/fluent/fluent.conf"
2021-02-02 10:28:39 +0000 [info]: gem 'fluent-plugin-concat' version '2.4.0'
2021-02-02 10:28:39 +0000 [info]: gem 'fluent-plugin-detect-exceptions' version '0.0.13'
2021-02-02 10:28:39 +0000 [info]: gem 'fluent-plugin-elasticsearch' version '4.3.3'
2021-02-02 10:28:39 +0000 [info]: gem 'fluent-plugin-kubernetes_metadata_filter' version '2.6.0'
2021-02-02 10:28:39 +0000 [info]: gem 'fluent-plugin-multi-format-parser' version '1.0.0'
2021-02-02 10:28:39 +0000 [info]: gem 'fluent-plugin-prometheus' version '1.8.5'
2021-02-02 10:28:39 +0000 [info]: gem 'fluent-plugin-systemd' version '1.0.2'
2021-02-02 10:28:39 +0000 [info]: gem 'fluentd' version '1.12.0'
2021-02-02 10:28:40 +0000 [info]: using configuration file: <ROOT>
<label @FLUENT_LOG>
<match fluent.*>
@type stdout
</match>
</label>
</ROOT>
2021-02-02 10:28:40 +0000 [info]: starting fluentd-1.12.0 pid=1 ruby="2.7.2"
2021-02-02 10:28:40 +0000 [info]: spawn command to main: cmdline=["/usr/local/bin/ruby", "-Eascii-8bit:ascii-8bit", "/usr/local/bundle/bin/fluentd", "--under-supervisor"]
2021-02-02 10:28:40 +0000 [info]: adding match in @FLUENT_LOG pattern="fluent.*" type="stdout"
2021-02-02 10:28:40 +0000 [info]: #0 starting fluentd worker pid=14 ppid=1 worker=0
2021-02-02 10:28:40 +0000 [info]: #0 fluentd worker is now running worker=0
Thanks for your work on this @monotek. I'm using your latest image on my multi-arch cluster and it's working perfectly so far!
I've commented on this issue to get fluentd-elasticsearch moved out of kubernetes/kubernetes. I imagine that's the main blocker in adding ARM64 support to the main image? I'm happy to help in whatever way I can to get this done. https://github.com/kubernetes/kubernetes/issues/79432