Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unsupported architecture "arm64" since ETCD_UNSUPPORTED_ARCH is set #9077

Closed
gititk opened this issue Jan 2, 2018 · 18 comments
Closed

unsupported architecture "arm64" since ETCD_UNSUPPORTED_ARCH is set #9077

gititk opened this issue Jan 2, 2018 · 18 comments

Comments

@gititk
Copy link

gititk commented Jan 2, 2018

Hi
I'm trying to install devstack on arm64. while doing so I got:

etcdmain: running etcd on unsupported architecture "arm64" since ETCD_UNSUPPORTED_ARCH is set
2018-01-02 09:58:39.132476 W | pkg/flags: unrecognized environment variable ETCD_UNSUPPORTED_ARCH=arm64
2018-01-02 09:58:39.132516 I | etcdmain: etcd Version: 3.2.9
2018-01-02 09:58:39.132527 I | etcdmain: Git SHA: f1d7dd8
2018-01-02 09:58:39.132536 I | etcdmain: Go Version: go1.8.4
2018-01-02 09:58:39.132544 I | etcdmain: Go OS/Arch: linux/arm64

How can I solve it?
Thanks
Gitit

@hexfusion
Copy link
Contributor

@gititk this is a known issue. Duplicates, #5054.

Not sure where this fork stands. https://github.com/glevand/coreos--etcd

@hexfusion
Copy link
Contributor

Hmm but we do provide arm64 release binaries. IE https://github.com/coreos/etcd/releases/tag/v3.2.12. That is confusing. I guess can you confirm that this is a 64bit arm system? I believe Raspberry Pi are still 32bit.

/cc @xiang90

@gititk
Copy link
Author

gititk commented Jan 2, 2018

Thanks. my server is 64bit arm.
Ill try 3.2.12

@gyuho
Copy link
Contributor

gyuho commented Jan 3, 2018

@gititk If you run with arm, this is an expected warning.

https://github.com/coreos/etcd/blob/master/Documentation/op-guide/supported-platform.md#32-bit-and-other-unsupported-systems

To avoid inadvertently running a possibly unstable etcd server, etcd on unstable or unsupported architectures will print a warning message and immediately exit if the environment variable ETCD_UNSUPPORTED_ARCH is not set to the target architecture.

@gyuho gyuho closed this as completed Jan 3, 2018
@xiang90
Copy link
Contributor

xiang90 commented Jan 3, 2018

@gyuho

unrecognized environment variable ETCD_UNSUPPORTED_ARCH=arm64

why this line showed up?

@xiang90 xiang90 reopened this Jan 3, 2018
@gyuho
Copy link
Contributor

gyuho commented Jan 3, 2018

@xiang90 We only support ETCD_UNSUPPORTED_ARCH through environment variable (no such flag as --unsupported-arch), so it warns at flags.SetFlagsFromEnv.

@xiang90
Copy link
Contributor

xiang90 commented Jan 3, 2018

the logging is pretty confusing. we probably should get it fixed.

@gyuho
Copy link
Contributor

gyuho commented Jan 3, 2018

yeah, how about just adding --unsupported-arch flag, or say the flag doesn't exist?

unrecognized environment variable ETCD_UNSUPPORTED_ARCH=arm64 (or no flag "unsupported-arch" found)

@hexfusion
Copy link
Contributor

why do we ship unsupported binaries? that in itself is confusing.

@gititk
Copy link
Author

gititk commented Jan 3, 2018

Hi
I get this error with 3.2.12
tar xzvf /opt/stack/devstack/files/etcd-v3.2.12-linux-arm64.tar.gz -C /opt/stack/devstack/files
2018-01-03 12:40:59.693 |
2018-01-03 12:40:59.693 | gzip: stdin: not in gzip format
2018-01-03 12:40:59.693 | tar: Child returned status 1
2018-01-03 12:40:59.694 | tar: Error is not recoverable: exiting now

@hexfusion
Copy link
Contributor

Hi @gititk sounds like a bad download I can not reproduce. As @xiang90 noted the message you reported is expected so the version will not change that.

wget https://github.com/coreos/etcd/releases/download/v3.2.12/etcd-v3.2.12-linux-arm64.tar.gz
mkdir test
tar -xzvf etcd-v3.2.12-linux-arm64.tar.gz -C test/
[..]
etcd-v3.2.12-linux-arm64/etcd

@glevand
Copy link
Contributor

glevand commented Jan 3, 2018

@hexfusion arm64 etcd binaries are published to fulfill the user request for them, and also to allow the rkt test suite to complete without failure on arm64 machines. See #8085 (v3.2.0-arm64 release).

@hexfusion
Copy link
Contributor

@glevand, could rkt build the binaries during testing? Issue is when a binary is released and we get a request like the above it is confusing. Technically this is unsupported yet we offer it pre-built in the release. Maybe if the name of the binary included unsupported or some other direct indication? How far off is arm64 from being supported?

@glevand
Copy link
Contributor

glevand commented Jan 3, 2018

masselstine added a commit to masselstine/meta-overc that referenced this issue Oct 17, 2019
The etcd maintainers have yet to declare arm64 "officially"
supported. Even though they make binaries available and are aware of
folks using etcd on arm64 targets they still have you "sign the dotted
line" to say you are aware of the lack of support.

See etcd-io/etcd#9077 for some related
discussions.

We update the install to add the ETCD_UNSUPPORTED_ARCH environment
setting to allow etcd to run on arm64.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
zeddii pushed a commit to OverC/meta-overc that referenced this issue Oct 19, 2019
The etcd maintainers have yet to declare arm64 "officially"
supported. Even though they make binaries available and are aware of
folks using etcd on arm64 targets they still have you "sign the dotted
line" to say you are aware of the lack of support.

See etcd-io/etcd#9077 for some related
discussions.

We update the install to add the ETCD_UNSUPPORTED_ARCH environment
setting to allow etcd to run on arm64.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
akraino-github pushed a commit to akraino-edge-stack/ta-caas-etcd that referenced this issue Dec 16, 2019
By default, etcd won't start on arm64 unless the proper env var or
flag are set, see [1].

[1] etcd-io/etcd#9077

Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Change-Id: I3e04972848847f4979ed882f22fe81a82c8ee04e
@Doorer
Copy link

Doorer commented Feb 20, 2020

I export ETCD_UNSUPPORTED_ARCH=mips64le set. on/etc/profile
still running error:

2020-01-09 17:03:30.370991 E | etcdmain: etcd on unsupported platform without ETCD_UNSUPPORTED_ARCH=mips64le set.

@duchuanLX
Check the os.LookupEnv("ETCD_UNSUPPORTED_ARCH") return or run export |grep "ETCD_UNSUPPORTED_ARCH " in bash
It works for me

@sri-vathsa
Copy link

Hey! I am trying to start the etcd daemon using the command sudo systemctl start etcd.service and then I ran the command journalctl -xe. It says I should set ETCD_UNSUPPORTED_ARCH to arm64. I set the environment variable as said and am still receiving the same error. Am I doing something wrong? Can someone help me out? Thanks :D

@leo-frank
Copy link

Hey! I am trying to start the etcd daemon using the command sudo systemctl start etcd.service and then I ran the command journalctl -xe. It says I should set ETCD_UNSUPPORTED_ARCH to arm64. I set the environment variable as said and am still receiving the same error. Am I doing something wrong? Can someone help me out? Thanks :D

You simply need to add one line to /etc/default/etcd: ETCD_UNSUPPORTED_ARCH=arm64 and then run sudo systemctl enable etcd && sudo systemctl restart etcd.

@Clivern
Copy link
Contributor

Clivern commented Nov 10, 2021

you need to remove the check from the main Clivern@1665224

then

$ go get ./...
$ GOOS=linux GOARM=7 GOARCH=arm ARCH=arm GO_BUILD_FLAGS='-v -mod=readonly' ./build.sh

binaries will work on raspberry pi

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

9 participants