From b1c16c8107b09d78849e7d80aac981c44eab029b Mon Sep 17 00:00:00 2001 From: Zha Bin Date: Wed, 27 Jul 2022 13:13:28 +0800 Subject: [PATCH 1/2] configure use oss Signed-off-by: Zha Bin --- .../cloud-native/running_runD/step4.md | 27 +++---------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/anolis-courses/cloud-native/running_runD/step4.md b/anolis-courses/cloud-native/running_runD/step4.md index 899efa1..4b065ef 100644 --- a/anolis-courses/cloud-native/running_runD/step4.md +++ b/anolis-courses/cloud-native/running_runD/step4.md @@ -5,34 +5,15 @@ [[ tar -zxvf crictl-v1.24.2-linux-amd64.tar.gz -C /usr/local/bin/ ]] 3. 配置crictl命令 -[[ cat << EOF > /etc/crictl.yaml -runtime-endpoint: unix:///run/containerd/containerd.sock -image-endpoint: unix:///run/containerd/containerd.sock -timeout: 10 -debug: false -EOF ]] + +[[ wget https://cloud-native.oss-cn-shanghai.aliyuncs.com/runtime/crictl.yaml ]] +[[ cp crictl.yaml /etc/ ]] 4. 使用crictl来pull需要启动的镜像 [[ crictl pull busybox ]] 5. 添加运行pod的配置文件 -[[ cat << EOF > sandbox-config.json -{ - "metadata": { - "name": "test-sandbox", - "namespace": "default", - "attempt": 1, - "uid": "95cb1cf47c4abb12d437f3" - }, - "linux": { - "security_context": { - "namespace_options": { - "network" : 2 - } - } - } -} -EOF ]] +[[ wget https://cloud-native.oss-cn-shanghai.aliyuncs.com/runtime/sandbox-config.json ]] 6. 使用rund来运行pod [[ crictl runp -r rund sandbox-config.json ]] -- Gitee From 629ff4d23ef1db694a105f562035905f52c07e88 Mon Sep 17 00:00:00 2001 From: Zha Bin Date: Wed, 27 Jul 2022 13:30:23 +0800 Subject: [PATCH 2/2] add some changes Signed-off-by: Zha Bin --- .../cloud-native/compile_runD/step3.md | 2 ++ .../cloud-native/compile_runD/step4.md | 7 +++-- .../cloud-native/running_runD/step4.md | 30 ++++++++++++++++++- 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/anolis-courses/cloud-native/compile_runD/step3.md b/anolis-courses/cloud-native/compile_runD/step3.md index 0d2e07e..a2c9da7 100644 --- a/anolis-courses/cloud-native/compile_runD/step3.md +++ b/anolis-courses/cloud-native/compile_runD/step3.md @@ -1,4 +1,5 @@ 1. 可以尝试修改runD的代码,可以修改一些日志输出或者不影响功能的地方, 比如: +```s --- a/src/runtime-rs/crates/runtimes/virt_container/src/sandbox.rs +++ b/src/runtime-rs/crates/runtimes/virt_container/src/sandbox.rs @@ -135,7 +135,7 @@ impl Sandbox for VirtSandbox { @@ -7,3 +8,4 @@ self.hypervisor.start_vm(10_000).await.context("start vm")?; - info!(sl!(), "start vm"); + info!(sl!(), "start vm for myself!"); +``` diff --git a/anolis-courses/cloud-native/compile_runD/step4.md b/anolis-courses/cloud-native/compile_runD/step4.md index e609ee6..ee45bd6 100644 --- a/anolis-courses/cloud-native/compile_runD/step4.md +++ b/anolis-courses/cloud-native/compile_runD/step4.md @@ -3,13 +3,16 @@ [[ container-image=cloud-native-registry.cn-shanghai.cr.aliyuncs.com/runtime/rund:shim-builder-latest ]] -[[ nerdctl run --rm -i -v "${repo-root-dir}:${repo-root-dir}" \ +```s +nerdctl run --rm -i -v "${repo-root-dir}:${repo-root-dir}" \ -w "${repo-root-dir}/src/runtime-rs" \ "${container-image}" \ - bash -c "git config --global --add safe.directory ${repo-root-dir} && make -j8" ]] + bash -c "git config --global --add safe.directory ${repo-root-dir} && make -j8" +``` 2. 上面编译需要一段时间,需要等编译完,然后运行下面的命令替换最新的runD,并运行查看日志结果 [[ cp $repo-root-dir/src/runtime-rs/target/x86_64-unknown-linux-musl/release/containerd-shim-kata-v2 /opt/kata/bin/containerd-shim-rund-v2 ]] +如果发现有file busy的错误,可能是存在当前正在运行的rund实例,需要把rund实例都删除掉 [[ time nerdctl run --runtime io.containerd.rund.v2 busybox /bin/sh -c "uname -a" ]] diff --git a/anolis-courses/cloud-native/running_runD/step4.md b/anolis-courses/cloud-native/running_runD/step4.md index 4b065ef..5127115 100644 --- a/anolis-courses/cloud-native/running_runD/step4.md +++ b/anolis-courses/cloud-native/running_runD/step4.md @@ -5,7 +5,15 @@ [[ tar -zxvf crictl-v1.24.2-linux-amd64.tar.gz -C /usr/local/bin/ ]] 3. 配置crictl命令 - +```s +cat << EOF > /etc/crictl.yaml +runtime-endpoint: unix:///run/containerd/containerd.sock +image-endpoint: unix:///run/containerd/containerd.sock +timeout: 10 +debug: false +EOF +``` +或者直接使用下面的链接进行下载配置文件 [[ wget https://cloud-native.oss-cn-shanghai.aliyuncs.com/runtime/crictl.yaml ]] [[ cp crictl.yaml /etc/ ]] @@ -13,6 +21,26 @@ [[ crictl pull busybox ]] 5. 添加运行pod的配置文件 +```s +cat << EOF > sandbox-config.json +{ + "metadata": { + "name": "test-sandbox", + "namespace": "default", + "attempt": 1, + "uid": "95cb1cf47c4abb12d437f3" + }, + "linux": { + "security_context": { + "namespace_options": { + "network" : 2 + } + } + } +} +EOF +``` +或者直接用下面的链接下载配置文件 [[ wget https://cloud-native.oss-cn-shanghai.aliyuncs.com/runtime/sandbox-config.json ]] 6. 使用rund来运行pod -- Gitee