-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
安装 k3s
curl -sfL https://get.k3s.io | sh -
安装 Helm
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
helm version # 验证
安装kata-deploy(会创建runtimeclass等等)
export VERSION=$(curl -sSL https://api.github.com/repos/kata-containers/kata-containers/releases/latest | jq .tag_name | tr -d '"')
export CHART="oci://ghcr.io/kata-containers/kata-deploy-charts/kata-deploy"
helm install kata-deploy "${CHART}" --version "${VERSION}"
配置containerd
k3s用的不是系统级的containerd,而是自身的,需要单独做配置
配置文件路径为/var/lib/rancher/k3s/agent/etc/containerd/config.toml,但是这个文件是k3s自动生成的,不能对此进行更改,而是更改(手动创建)一个模板文件进行配置,路径为/var/lib/rancher/k3s/agent/etc/containerd/config.toml.tmpl
sudo cp /var/lib/rancher/k3s/agent/etc/containerd/config.toml /var/lib/rancher/k3s/agent/etc/containerd/config.toml.tmpl
sudo vim /var/lib/rancher/k3s/agent/etc/containerd/config.toml.tmpl
加上如下配置
[plugins.'io.containerd.cri.v1.runtime'.containerd.runtimes.kata]
runtime_type = "io.containerd.kata.v2"
[plugins.'io.containerd.cri.v1.runtime'.containerd.runtimes.kata.options]
ConfigPath = "/opt/kata/share/defaults/kata-containers/configuration-qemu.toml"
[plugins.'io.containerd.cri.v1.runtime'.containerd.runtimes.kata-qemu]
runtime_type = "io.containerd.kata.v2"
[plugins.'io.containerd.cri.v1.runtime'.containerd.runtimes.kata-qemu.options]
ConfigPath = "/opt/kata/share/defaults/kata-containers/configuration-qemu.toml"
验证
创建一个test.yaml
apiVersion: v1
kind: Pod
metadata:
name: test-kata
spec:
runtimeClassName: kata-qemu
containers:
- name: sleep
image: busybox
command: ["sleep", "3600"]
nodeSelector:
katacontainers.io/kata-runtime: "true"
然后kubectl apply -f test.yaml即可
Metadata
Metadata
Assignees
Labels
No labels