On Mar 7, 2022, KubeEdge released v1.10. The new version introduces several enhancements, significantly improving the installation experience, performance testing, network communication, and Kubernetes version compatibility.
v1.10 What's New
- Installation Experience Improvement with Keadm
- Preview version for Next-gen Edged: Suitable for more scenarios
- Edgemark: Support large-scale KubeEdge cluster performance testing
- EdgeMesh proxy tunnel supports quic
- EdgeMesh supports proxy for udp applications
- EdgeMesh support SSH login between cloud-edge/edge-edge nodes
- Kubernetes Dependencies Upgrade
Release Highlights
Installation Experience Improvement with Keadm
Keadm adds some new sub-commands to improve the user experience, including containerized deployment, offline installation, etc. New sub-commands including: beta, config.
beta
provides some sub-commands that are still in testing, but have complete functions and can be used in advance. Sub-commands including: beta init, beta manifest generate, beta join, beta reset.
beta init
: CloudCore Helm Chart is integrated in beta init, which can be used to deploy containerized CloudCore.beta join
: Installing edgecore as system service from docker image, no need to download from github release.beta reset
: Reset the node, clean up the resources installed on the node bybeta init
orbeta join
. It will automatically detect the type of node to clean up.beta manifest generate
: Generate all the manifests to deploy the cloudside components.
config
is used to configure kubeedge cluster, like cluster upgrade, API conversion, image preloading.
Now the image preloading has supported, sub-commands including: config images list, config images pull.
config images list
: List all images required for kubeedge installation.config images pull
: Pull all images required for kubeedge installation.
Refer to the links for more details. (#3517, #3540, #3554, #3534)
Preview version for Next-gen Edged: Suitable for more scenarios
A new version of the lightweight engine Edged, which is optimized from kubelet and integrated in edgecore, and occupies less resource. Users can customize lightweight optimization according to their needs.
Refer to the links for more details. (Dev-Branch for previewing: feature-new-edged)
Edgemark: Support large-scale KubeEdge cluster performance testing
Edgemark is a performance testing tool inherited from Kubemark. The primary use case of Edgemark is also scalability testing, it allows users to simulate edge clusters, which can be much bigger than the real ones.
Edgemark consists of two parts: real cloud part components and a set of "Hollow" Edge Nodes. In "Hollow" Edge Nodes, EdgeCore runs in container. The edged module runs with an injected mock CRI part that doesn't do anything. So the hollow edge node doesn't actually start any containers, and also doesn't mount any volumes.
Refer to the link for more details. (#3637)
EdgeMesh proxy tunnel supports quic
Users can choose edgemesh's proxy tunnel as quic protocol to transmit data. In edge scenarios, nodes are often in a weak network environment. Compared with the traditional tcp protocol, the quic protocol has better performance and QoS in the weak network environment.
Refer to the link for more details. (#281)
EdgeMesh supports proxy for udp applications
Some users' services use the udp protocol, and now edgemesh can also support the proxy of udp applications.
Refer to the link for more details. (#295)
EdgeMesh support SSH login between cloud-edge/edge-edge nodes
Edge nodes are generally distributed in the Private network environment, but it is often necessary to ssh login and operate the edge node. EdgeMesh provide a socks5proxy based on the tunnel inside EdgeMesh, which supports forwarding ssh requests from cloud/edge nodes to edge nodes.
Refer to the links for more details. (#258, #242)
Kubernetes Dependencies Upgrade
Upgrade the vendered kubernetes version to v1.22.6, users now can use the feature of new version on the cloud and on the edge side.
Refer to the link for more details. (#3624)
Important Steps before Upgrading
If you want to deploy the KubeEdge v1.10.0, please note that the Kubernetes dependency is 1.22.6.
Other Notable Changes
Remove dependency on os/exec and curl in favor of net/http (#3409, @mjlshen)
Optimize script when create stream cert (#3412, @gujun4990)
Modify the log view command after edgecore is running (#3456, @zc2638)
Optimize the iptables manager (#3461, @zhu733756)
Change the resourceType of msg issued by synccontroller (#3496, @Rachel-Shao)
Add a basic image for building various components of KubeEdge (#3513, @zc2638)
Supporting crossbuild all components (#3515, [@fisher