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

Different containerd runtimes (spin) #3

Open
matsbror opened this issue Jun 13, 2024 · 1 comment
Open

Different containerd runtimes (spin) #3

matsbror opened this issue Jun 13, 2024 · 1 comment

Comments

@matsbror
Copy link

Has anyone tried to use different containerd runtimes with the RISCV port of k3s?

I am trying to run WebAssembly containers using the spin runtime from https://github.com/spinkube/containerd-shim-spin

I get a problem when invoking this containerd runtime shim. Below are the relevant log entries. If you have any insight in what might be happening I would be happy.

Do you know if there is a chance that k3s will accept your PR of if there is any alternative to k3s on RISCV?

Jun 13 04:46:01 k3s-riscv-1 k3s[74143]: time="2024-06-13T04:46:01.535737281Z" level=error msg="RunPodSandbox for &PodSandboxMetadata{Name:wasm-spin-85cf4f8479-t7f9r,Uid:e3c29281-3b3c-4e2e-ada1-284a7d590ff0,Namespace:default,Attempt:0,} failed, error" error="failed to create containerd task: failed to start shim: start failed: io.containerd.spin.v2: InvalidArgument(\"error loading runtime spec: serde failed\")\n: exit status 1: unknown"
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]: E0613 04:46:01.537647   74143 remote_runtime.go:176] "RunPodSandbox from runtime service failed" err=<
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:         rpc error: code = Unknown desc = failed to create containerd task: failed to start shim: start failed: io.containerd.spin.v2: InvalidArgument("error loading runtime spec: serde failed")
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:         : exit status 1: unknown
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:  >
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]: E0613 04:46:01.537892   74143 kuberuntime_sandbox.go:72] "Failed to create sandbox for pod" err=<
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:         rpc error: code = Unknown desc = failed to create containerd task: failed to start shim: start failed: io.containerd.spin.v2: InvalidArgument("error loading runtime spec: serde failed")
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:         : exit status 1: unknown
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:  > pod="default/wasm-spin-85cf4f8479-t7f9r"
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]: E0613 04:46:01.538002   74143 kuberuntime_manager.go:1122] "CreatePodSandbox for pod failed" err=<
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:         rpc error: code = Unknown desc = failed to create containerd task: failed to start shim: start failed: io.containerd.spin.v2: InvalidArgument("error loading runtime spec: serde failed")
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:         : exit status 1: unknown
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]:  > pod="default/wasm-spin-85cf4f8479-t7f9r"
Jun 13 04:46:01 k3s-riscv-1 k3s[74143]: E0613 04:46:01.538308   74143 pod_workers.go:1294] "Error syncing pod, skipping" err="failed to \"CreatePodSandbox\" for \"wasm-spin-85cf4f8479-t7f9r_default(e3c29281-3b3c-4e2e-ada1-284a7d590ff0)\" with CreatePodSandboxError: \"Failed to create sandbox for pod \\\"wasm-spin-85cf4f8479-t7f9r_default(e3c29281-3b3c-4e2e-ada1-284a7d590ff0)\\\": rpc error: code = Unknown desc = failed to create containerd task: failed to start shim: start failed: io.containerd.spin.v2: InvalidArgument(\\\"error loading runtime spec: serde failed\\\")\\n: exit status 1: unknown\"" pod="default/wasm-spin-85cf4f8479-t7f9r" podUID=e3c29281-3b3c-4e2e-ada1-284a7d590ff0
@chazapis
Copy link
Member

No, I have not tried any different container runtimes. From the log, it looks like serde does not work. Does this code work outside a container?

As for merging this work into upstream K3s, it looks like the team is reluctant to merge code that can not be tested on real hardware. I suggested to have an "experimental" build, but this has not moved forward. So I think this port of K3s is your best bet for now. I am not aware of other alternatives.

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

No branches or pull requests

2 participants