作者
SuperEdge 开发者团队,腾讯云容器核心 TKE Edge 团队
摘要
SuperEdge 是基于原生 Kubernetes 的分布式边缘云容器管理系统,由腾讯云牵头,联结英特尔、VMware 威睿、虎牙、寒武纪、美团、首都在线等多家厂商在 2020 年 12 月独特发动的边缘计算开源我的项目,旨在将把 Kubernetes 弱小的容器治理能力无缝的扩大到边缘计算和分布式资源管理的场景中,为边缘 IoT,边缘 AI,边缘智慧行业等赋能,推动物联网和数字化的落地。目前已成为 CNCF Sandbox 我的项目,由 CNCF 基金会进行托管。
SuperEdge v0.7.0 版本正式公布
SuperEdge 在 2022-02-09 公布了 v0.7.0 版本,详情扫下方二维码理解。
本次版本次要是生产落地过程中性能的提炼,有边缘站点资源的形象和利用的形象,进行资源和利用的灵便搭配;有实例落地过程中用户对边缘利用高可用和断网更新的理论需要;有边缘 Webhook 无感知拜访诉求的解决;有社区强烈呼吁的 K8s 的 1.20 版本、Containerd 运容器行时,云边节点混部……性能。也有 WasmEdge、GPU 和 NANO-GPU、云边互通 Fabedge 的应用案例,以下是性能细节:
新的性能点
通过 NodUnit 和 NodeGroup CRD 去治理边缘泛滥的站点资源
- 用 NodeUnit 的 CR 代表一个边缘的逻辑站点;
- 用 NodeGroup 的 CR 代表领有同一属相的边缘站点,比方所有领有 GPU 的边缘站点;
NodeGroup 是边缘资源的形象,ServiceGroup 是边缘利用的形象,两者依据利用的须要进行不同资源属性的绑定,将边缘利用调度到正当的边缘节点上。
该性能应用文档见:
反对云边断网边缘 Pod 可更新
这个性能是边缘利用高可用的初版,边缘利用不同于 K8s 的原生利用,硬搬 K8s 的原生利用并不适宜边缘场景,特地是应答边缘利用的高可用和弹性扩大。
本性能本次只提供在云边断网时,边缘 Pod 可更新,次要是通过 Static Pod 实现。后续还会提供更加优雅的形式,以反对边缘利用的高可用和弹性扩大。
该性能应用文档见:
反对 kube-apiserver 拜访边缘侧的 webhook
在边缘利用中存在 webhook,那么 kube-apiserver 是无奈间接拜访到的。本次在 tunnel 中反对了 ANP,通过 kube-apiserver 的 EgressSelector 性能把申请边侧 webhook 的申请通过 Tunnel 转发给边缘,实现了边缘集群中 webhook 的无感知拜访。
该性能应用文档见:
edge-health 反对用户自定义 Check 插件
edge-health 是定时 Check 边缘站点内节点健康状况的组件。本次借助 kube-scheduler 的 out-of-tree 插件注册思维,实现了 edge-health 的自定义插件性能。用户毋庸批改 edge-health 的源码,便可注册本人的 Check 逻辑。
反对 Kubernetes v1.20.6 版本
本次反对了 Kubernetes 的 v1.20.6 版本,目前社区提供了 Kubernetes 的 v1.18.2 和 Kubernetes 的 v1.20.6 eageadm 的一键部署,其余版本可按用 edgeadm 一键装置边缘 K8s 集群和原生 K8s 集群,SuperEdge 须要做组件代码的降级,感兴趣的同学也可来社区,为 SuperEdge 做出您的奉献。
用 edgeadm 一键装置边缘 K8s 的安装包可执行如下命令下载,留神机器的体系:
arch=amd64 version=v0.7.0 kubernetesVersion=1.20.6 && rm -rf edgeadm-linux-* && wget https://attlee-1251707795.cos.ap-chengdu.myqcloud.com/superedge/$version/$arch/edgeadm-linux-$arch-$version-k8s-$kubernetesVersion.tgz && tar -xzvf edgeadm-linux-* && cd edgeadm-linux-$arch-$version-k8s-$kubernetesVersion && ./edgeadm
具体装置请参考用 edgeadm 一键装置边缘 K8s 集群和原生 K8s 集群,或者 SuperEdge 的 Quickstart。
演示短视频:视频链接)
视频链接: https://attlee-1251707795.cos…
反对 Containerd 容器运行时
在用 edgeadm 一键装置边缘 K8s 集群和原生 K8s 集群时,可通过参数 --runtime=containerd/dockerd
来抉择你须要的容器运行时,默认--runtime=dockerd
, dockerd 版本是19.03.8
, cotainerd 版本是1.3.4
, 其余版本可替换安装包中的组件二进制。
反对在 SuperEdge 边缘 K8s 集群外面同时增加原生 K8s 节点和边缘 K8s 节点
在用 edgeadm 一键装置边缘 K8s 集群和原生 K8s 集群 时,edgedam join 节点时可通过参数 --enable-edge=true
来抉择 Join 原生的 K8s 节点还是边缘 K8s 节点。默认--enable-edge=true
Join 边缘节点,明确指定--enable-edge=false
Join 原生的 K8s 节点。Join 原生 K8s 节点要留神 Join 的节点要和 Kubernetes master 二层网络互通,也就是内网互通,否则可当边缘节点解决。
lite-apiserver 反对多网卡进口和应用 Pebble 作为存储
lite-apiserver 是 SuperEdge 的边缘自治组件,本次加强的重要性能如下:
- lite-apiserver 反对多网卡进口 :因为生产环境机器上通常会有多网卡,网络品质并不均等,为了保障 lite-apiserver 和云端 kube-apiserver 的品质,能够通过
--network-interface
参数填入多个网卡,在多个网卡中抉择好的网络品质和 kube-apiserver 放弃连贯。当然基于多网卡的性能扩大也正在进行。 - lite-apiserver 反对应用 Pebble 作为缓存存储:Pebble 是受 LevelDB/RocksDB 启发的键值存储,专一于 CockroachDB 的性能。
更多功能的具体介绍,可查看 SuperEdge changelog 0.7.
三个生态单干案例
- 在 SuperEdge 中部署 WasmEdge 运行时,来部署 WebAssembly 利用;
- 用博云开源的 Fabedge 反对云边网络和边边网络的互通;
- 在 SuperEdge 应用 gpu 和 nano-gpu,别离来进步计算能力和资源利用率;
新晋 Member 和 Reviwer
SuperEdge 0.7 版本社区很多同学做出了卓越的奉献,经评审有两名同学达到 Member 级别,有两名同学达到了 Reviwer 级别,现颁布如下:
2 名 Reviwer:
- @JaneLiuL
- @malc0lm
2 名 Member:
- @luhaopei
- @huweihuang
携手社区
扫描上面的二维码退出咱们的交换群,独特探讨 SuperEdge、钻研边缘容器技术。
【从 0 到 N 理解 SuperEdge,30+ 篇干货合集】
我的项目链接:https://github.com/superedge/…
Release 链接:https://github.com/superedge/superedge/releases/tag/v0.7.0
变更记录:https://github.com/superedge/superedge/blob/main/CHANGELOG/CHANGELOG-0.7.md
我的项目文档:https://github.com/superedge/…
对于咱们
更多对于云原生的案例和常识,可关注同名【腾讯云原生】公众号~
福利:
①公众号后盾回复【手册】,可取得《腾讯云原生路线图手册》&《腾讯云原生最佳实际》~
②公众号后盾回复【系列】,可取得《15 个系列 100+ 篇超实用云原生原创干货合集》,蕴含 Kubernetes 降本增效、K8s 性能优化实际、最佳实际等系列。
③公众号后盾回复【白皮书】,可取得《腾讯云容器平安白皮书》&《降本之源 - 云原生老本治理白皮书 v1.0》
④公众号后盾回复【光速入门】,可取得腾讯云专家 5 万字精髓教程,光速入门 Prometheus 和 Grafana。
⑤公众号后盾回复【精选集】,可取得腾讯 24 位腾讯云专家精彩演讲——4 万字《腾讯云技术实际精选集 2021》。
【腾讯云原生】云说新品、云研新术、云游新活、云赏资讯,扫码关注同名公众号,及时获取更多干货!!