krustlet: Krustlet-tutorial pod get stuck in init:regitered status
Hi, I followed https://github.com/deislabs/krustlet/blob/main/docs/intro/tutorial03.md to create a pod on krustlet node, the pod successfully scheduled to the krustlet node, but the pod get stuck in init:registered and I don’t know why. I think it’s because I build istio in cluster.The init containers istio-init firstly got stuck in waiting status. Istio’s version is v1.10.0. Is that krustlet’s problem or istio’s problem? How to solve this?
Another question by the way: Does krustlet use wasm-to-oci pull to pull a wasm module from registry or still use docker pull to pull from a registry?
About this issue
- Original URL
- State: open
- Created 3 years ago
- Comments: 19 (2 by maintainers)
Commits related to this issue
- Do not fail if Docker-Content-Digest not given. AWS ECR (public.ecr.aws), Red Hat (registry.redhat.io), and likely other registries do not provide the `Docker-Content-Digest` header. As discussed in ... — committed to adobe-platform/krustlet by cdmurph32 3 years ago
- Do not fail if Docker-Content-Digest not given. AWS ECR (public.ecr.aws), Red Hat (registry.redhat.io), and likely other registries do not provide the `Docker-Content-Digest` header. As discussed in ... — committed to adobe-platform/krustlet by cdmurph32 3 years ago
A couple of things to unpack here.
There is a common misconception that because Krustlet stores WebAssembly modules in OCI means that you can use
docker pullto fetch the module. There is also the other misconception that because modules are stored in OCI, they must be a Docker container. Both are untrue. WebAssembly modules are stored as WebAssembly modules. And while the push/pull mechanism is the same between Docker and Krustlet,dockeronly understands how to fetch Docker containers, not WebAssembly modules. In order to fetch modules from an OCI server, usewasm-to-oci.dockercan only build, push, pull, unpack, and run Docker containers. It does not understand how to build, push, pull, unpack, or run a WebAssembly module.Yes. This is enforced by the OCI distribution specification. All connections must be through HTTPS unless that registry is marked as “insecure”, or is listening on the local loopback address (127.0.0.1).
I was using KinD’s registry to store my wasm module. I switched to the latest tag, built from source and by passing --insecure-registries localhost:5000 flag to Krustlet-wasi I was successfully able to see it working.