Skip to content

Add blog post for KubeEdge deployment and validation on VisionFive2#787

Open
ddc-baiye wants to merge 1 commit intokubeedge:masterfrom
ddc-baiye:blog/visionfive2-riscv-validation
Open

Add blog post for KubeEdge deployment and validation on VisionFive2#787
ddc-baiye wants to merge 1 commit intokubeedge:masterfrom
ddc-baiye:blog/visionfive2-riscv-validation

Conversation

@ddc-baiye
Copy link
Copy Markdown

Summary

This PR adds a new blog post about deploying and validating KubeEdge on VisionFive2, a real RISC-V board.

The post shares a hands-on deployment and validation process covering dependency preparation, native build of KubeEdge components, edge node join, and basic workload deployment on riscv64.

Changes

  • add a new blog post under blog/kubeedge-riscv-validation/
  • add related images for the article
  • update blog/authors.yml with author information

Notes

This post focuses on validating the basic deployment path on VisionFive2 rather than full production readiness.

@kubeedge-bot
Copy link
Copy Markdown
Collaborator

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
To complete the pull request process, please assign shelley-baoyue after the PR has been reviewed.
You can assign the PR to them by writing /assign @shelley-baoyue in a comment when ready.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubeedge-bot kubeedge-bot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Apr 21, 2026
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds a new author and a detailed blog post documenting the validation of KubeEdge on the VisionFive2 RISC-V platform. The feedback identifies several issues in the provided shell commands and YAML manifests, including insecure download practices, missing sudo permissions for configuration edits, and the use of a container image that lacks RISC-V architecture support.

### Install Go

```bash
wget --no-check-certificate https://mirrors.aliyun.com/golang/go1.22.4.linux-riscv64.tar.gz
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

security-high high

Bypassing certificate validation with --no-check-certificate is insecure as it allows for man-in-the-middle attacks. It is recommended to ensure the system environment (such as the system clock and CA certificates) is correctly configured instead of disabling security checks.

wget https://mirrors.aliyun.com/golang/go1.22.4.linux-riscv64.tar.gz

sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml

sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The sed command is missing sudo. Since /etc/containerd/config.toml is typically owned by root, this command will fail with a "Permission denied" error.

sudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this it true, we need to add sudo or root user is required to issue this command.

containerd config default | sudo tee /etc/containerd/config.toml

sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
sed -i "s#registry.k8s.io/pause:3.10.1#registry.k8s.io/pause:3.9#g" /etc/containerd/config.toml
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This sed command is missing sudo and relies on a specific version string (3.10.1) that may not match the default configuration of containerd v2.2.2. If the match fails, the pause image won't be updated to your locally built version, causing the edge node to fail when pulling the default image. Using a more generic pattern to match the sandbox_image key is more robust.

sudo sed -i 's#sandbox_image = ".*"#sandbox_image = "registry.k8s.io/pause:3.9"#' /etc/containerd/config.toml

automountServiceAccountToken: false
containers:
- name: nginx-edge
image: nginx
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The official nginx image does not currently support the riscv64 architecture. Readers following this tutorial will encounter errors when the edge node attempts to pull the image. Using a community-maintained RISC-V image like riscv64/nginx ensures the workload can run on the VisionFive2 board.

        image: riscv64/nginx

@ddc-baiye ddc-baiye force-pushed the blog/visionfive2-riscv-validation branch from 649e93f to 0abba61 Compare April 21, 2026 10:03
Signed-off-by: ddc-baiye <dongdong.chen@bluedotai.cn>
@ddc-baiye ddc-baiye force-pushed the blog/visionfive2-riscv-validation branch from 0abba61 to ffefc93 Compare April 21, 2026 10:22
ddc-baiye:
name: Baiye
url: https://github.com/ddc-baiye
image_url: https://avatars.githubusercontent.com/u/240869683?v=4 No newline at end of file
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

missing the last empty line, detected by github.

sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml

sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this it true, we need to add sudo or root user is required to issue this command.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants