作者
梁豪,腾讯TEG工程师,云原生开源爱好者,SuperEdge 开发者,现负责TKEX-TEG容器平台运维相关工作。
王冬,腾讯云TKE后台研发工程师,专注容器云原生领域,SuperEdge 核心开发人员,现负责腾讯云边缘容器TKE Edge私有化相关工作。
李腾飞,腾讯容器技术研发工程师,腾讯云TKE后台研发,SuperEdge核心开发成员。
Addon SuperEdge让原生K8s集群可管理边缘应用和节点视频链接
边缘能力
先说说 Addon SuperEdge 后,您的普通 Kubernetes 集群将具备哪些能力:
既能管理中心应用和节点,也能管理边缘应用和节点
可以用一个Kubernetes集群管理中心的应用和节点,也可以同时管理边缘的应用和节点,使用上没有任何区别
。此设计将Kubernetes分布式的逻辑概念和实际IDC机房的物理位置完美契合,实现真正意义的云边一朵云。
能Join任意位置的节点
只要节点能访问到kube-apiserver,无论节点位于哪里,或以怎么的状存在,一个edgeadm join
命令就能将节点加入到中心集群。用一个Kubernetes集群就可以统一管理各个地方的机器,汇聚各个IDC机房的算力,将机器的利用率发挥到极致
。
同时管理数十个边缘网点,并具备灰度能力
SuperEdge 的 ServiceGroup 设计,一个应用只要提交一次,就能同时部署到数十个网点,并且在各个网点内实现流量闭环
,而且允许各个网点在基础应用的基础上有差异,无论灰度,还是差异化配置都可以支持。
边缘节点具备边缘自治能力
边缘节点和 kube-apiserver 之间网络情况不可预测,可能是专线,也可能是WIFI,公网和内网可能都存在。SuperEdge 让边缘节点即使云边断网也不影响边缘的服务,就是断电重启,边缘服务也能被正常拉起。
Addon SuperEdge的边缘能力
安装条件
用户已有 Kubernetes 集群,所有 kube-controller-manager 已开启
--controllers=*,bootstrapsigner,tokencleaner
参数
- 目前仅支持通过 kubeadm 搭建的 Kubernetes 集群,其他方式搭建的 Kubernetes 集群并不是不支持,而是可能会有兼容性问题,可看原理部分;
- 要是没有 kubeadm 搭建的 Kubernetes 集群,可用
edgeadm init
一键创建一个原生的Kubernetes 集群,可参考: 用edgeadm一键创建边缘k8s集群或原生k8s集群;
支持的 Kubernetes 版本:v1.16~v1.19,edgeadm 提供的安装包是 Kubernetes v1.18.2 版本;
- 用户需要考虑边缘节点
kubelet
和原始 Kubernetes 版本的兼容性,统一最好; - 其他 Kubernetes 版本可参考 一键安装边缘Kubernetes集群中的 5. 自定义 Kubernetes 静态安装包,自行制作。
- 用户需要考虑边缘节点
下载 edgeadm 静态安装包
在任意一个 Master 节点上下载 edgeadm 静态安装包,并拷贝到准备加入集群的边缘节点中。
arch=amd64 version=v0.4.0 && rm -rf edgeadm-linux-* && wget https://superedge-1253687700.cos.ap-guangzhou.myqcloud.com/$version/$arch/edgeadm-linux-$arch-$version.tgz && t