Comments (11)
@lentzi90 kube-rbac-proxy project does not publish images in gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
. Those images are published by kubebuilder project and are not multi-arch.
Correct images are published only in quay.io at quay.io/brancz/kube-rbac-proxy
and those are working as expected on arm64, arm, and amd64 platforms (continuously testing in https://github.com/thaum-xyz/ankhmorpork as the environment is multi-arch one 😃 )
from kube-rbac-proxy.
cc @paulfantom
from kube-rbac-proxy.
Yes, this is expected when using manifest-tool
. Did any of the following commands failed for you on arm64 arch :
docker run -it quay.io/brancz/kube-rbac-proxy@sha256:a178cadf8a6de431e8a72a08f77e0cf377efcabd3a9bedbd8f9f6501947596e7
docker run -it quay.io/brancz/kube-rbac-proxy:v0.6.0
?
I especially wonder if you get standard_init_linux.go:211: exec user process caused "exec format error"
error message.
from kube-rbac-proxy.
@paulfantom Thanks for the response, I pull the arm64 image by digest on a amd64 machine.
It works for other images like prometheus
docker pull quay.io/prometheus/prometheus@sha256:cb0d34292e086d2beab33b399a26b6f8dd8f5bd446feb1946960b20abad22769
from kube-rbac-proxy.
This is a side-effect of building all images on amd64 and not manipulating source manifests. Such an approach was chosen for simplicity, but if this is causing issues with running images, we would need to rethink how images are built.
I pull the arm64 image by digest on a amd64 machine. It works for other images like prometheus
I understand that and I am trying to figure out the severity of this issue. If kube-rbac-proxy image is not working for you then this is quite a big issue. However, as far as I know, this field is not taken into consideration by container runtimes and the image should run just fine.
Last time I checked everything was working correctly on arm (raspbian) and arm64 (ubuntu).
from kube-rbac-proxy.
For me this results in image pull backoff. I guess it just refuses to even try to use the image since it doesn't find the correct arch in the manifest.
Failed to pull image "gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0": rpc error: code = NotFound desc = failed to pull and unpack image "gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0": no match for platform in manifest: not found
I guess I could pull the correct image if I don't try to use the manifest, but that sort of defeats the purpose since I have a cluster with both amd64 and arm64 Nodes.
from kube-rbac-proxy.
Oh, thanks for pointing that out! Nothing to see here then, move along 😄
I ended up here while trying out kubegres.io, which uses the kubebuilder image from GCR...
from kube-rbac-proxy.
root@ubuntu:~# docker run -it quay.io/brancz/kube-rbac-proxy:v0.11.0
Unable to find image 'quay.io/brancz/kube-rbac-proxy:v0.11.0' locally
v0.11.0: Pulling from brancz/kube-rbac-proxy
0d7d70899875: Pull complete
f3347552f9fa: Pull complete
Digest: sha256:b62289c3f3f883ee76dd4e8879042dd19abff743340e451cb59f9654fc472e4f
Status: Downloaded newer image for quay.io/brancz/kube-rbac-proxy:v0.11.0
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
F0928 19:16:48.469526 1 main.go:421] cannot find Service Account in pod to build in-cluster rest config: unable to load in-cluster configuration, KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT must be defined
goroutine 1 [running]:
k8s.io/klog/v2.stacks(0x40001a2001, 0x4000282000, 0xdc, 0x130)
/home/runner/go/pkg/mod/k8s.io/klog/[email protected]/klog.go:996 +0xac
k8s.io/klog/v2.(*loggingT).output(0x1c56c60, 0x4000000003, 0x0, 0x0, 0x40002ad110, 0x1ba76bd, 0x7, 0x1a5, 0x0)
/home/runner/go/pkg/mod/k8s.io/klog/[email protected]/klog.go:945 +0x168
k8s.io/klog/v2.(*loggingT).printf(0x1c56c60, 0x3, 0x0, 0x0, 0x114d7a6, 0x46, 0x40000e7888, 0x1, 0x1)
/home/runner/go/pkg/mod/k8s.io/klog/[email protected]/klog.go:733 +0x124
k8s.io/klog/v2.Fatalf(...)
/home/runner/go/pkg/mod/k8s.io/klog/[email protected]/klog.go:1463
main.initKubeConfig(0x0, 0x0, 0x0)
/home/runner/work/kube-rbac-proxy/kube-rbac-proxy/main.go:421 +0x160
main.main()
/home/runner/work/kube-rbac-proxy/kube-rbac-proxy/main.go:142 +0xc10
goroutine 34 [chan receive]:
k8s.io/klog/v2.(*loggingT).flushDaemon(0x1c56c60)
/home/runner/go/pkg/mod/k8s.io/klog/[email protected]/klog.go:1131 +0x70
created by k8s.io/klog/v2.init.0
/home/runner/go/pkg/mod/k8s.io/klog/[email protected]/klog.go:416 +0x118
root@ubuntu:~# docker version
Client:
Version: 20.10.7
API version: 1.41
Go version: go1.13.8
Git commit: 20.10.7-0ubuntu1~20.04.1
Built: Wed Aug 4 22:53:01 2021
OS/Arch: linux/arm64
Context: default
Experimental: true
Server:
Engine:
Version: 20.10.7
API version: 1.41 (minimum version 1.12)
Go version: go1.13.8
Git commit: 20.10.7-0ubuntu1~20.04.1
Built: Wed Aug 4 19:07:47 2021
OS/Arch: linux/arm64
Experimental: false
containerd:
Version: 1.5.2-0ubuntu1~20.04.2
GitCommit:
runc:
Version: 1.0.0~rc95-0ubuntu1~20.04.2
GitCommit:
docker-init:
Version: 0.19.0
GitCommit:
root@ubuntu:~# uname -a
Linux ubuntu 5.4.0-1043-raspi #47-Ubuntu SMP PREEMPT Mon Aug 23 09:41:31 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
root@ubuntu:~# docker inspect quay.io/brancz/kube-rbac-proxy:v0.11.0 | grep Arch
"Architecture": "amd64",
root@ubuntu:~#
from kube-rbac-proxy.
We are also having an issue with this. We read the manifest to determine which image to pull based on the architecture. We are getting the following error when we try and deploy to an arm node:
Failed to pull image "quay.io/brancz/kube-rbac-proxy:v0.10.0": rpc error: code = Unknown desc = no matching manifest for linux/arm64/v8 in the manifest list entries
from kube-rbac-proxy.
When I run docker inspect quay.io/brancz/kube-rbac-proxy:v0.12.0-arm | grep -i Architecture
, I receive "Architecture": "arm",
as a result.
When I run docker manifest inspect --verbose quay.io/brancz/kube-rbac-proxy:v0.12.0-arm | grep platform -A2
, I receive
"platform": {
"architecture": "arm",
"os": "linux"
Is it still an issue?
from kube-rbac-proxy.
Over a month has passed. I assume it isn't an issue any more. If you object, please reopen the issue.
from kube-rbac-proxy.
Related Issues (20)
- Bump golang version HOT 2
- Sig-Auth Pre-Acceptance 2nd Review HOT 10
- Cut a new release with golang version 1.20 HOT 3
- Add livenessProbe support for kube-rbac-proxy HOT 2
- Twistlock reporting CVE PRISMA-2022-0227 HOT 2
- kube-rbac-proxy failing authentication and authorization intermittently with error: HOT 2
- Option to output the logs as JSON HOT 1
- vulnerabilities on kube-rbac-proxy v0.14.2 HOT 2
- Image of kube-rbac-proxy new version (v0.14.3) wasn't pushed to quay.io repository HOT 4
- Failing to instantiate OIDC authenticator when --oidc-ca-file is not specified HOT 6
- vulnerabilities on kube-rbac-proxy v0.14.4 HOT 6
- Can they be friends --ignore-path and --allow-path? HOT 3
- CVE high security vulnerabilities found in image: quay.io/brancz/kube-rbac-proxy:v0.15.0 HOT 14
- Compability with new K8S versions HOT 2
- Can kube rbac proxy be used for kubeedge? HOT 3
- CVE vulnerabilities found for golang-runtime:1.20.4 (usr/local/bin/kube-rbac-proxy) HOT 3
- Multi Arch Image pulled from quay.io does not work in arm64/graviton nodes HOT 3
- 0.16 Image does not appear to be available HOT 3
- CVE-2023-47108 "Vulnerability detected affecting otelgrpc v0.42.0" found in kube-rbac-proxy v0.16.0 HOT 7
- [HELP] Trying to expose Hubble UI with kube-rbac-proxy HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kube-rbac-proxy.