Giter VIP home page Giter VIP logo

do-later's People

Contributors

ls889 avatar

Watchers

 avatar  avatar

do-later's Issues

如何使用Kubernetes管理**高速公路上的10万边缘节点?

https://mp.weixin.qq.com/s?__biz=MzI5ODk5ODI4Nw==&mid=2247493468&idx=1&sn=1cd2053536804a6c8b2caed5d9944671&chksm=ec9fe83cdbe8612a540e2536b7fada08fb2c26662074e025e80b7c0c2123090605cef4c75f3a&scene=0&xtrack=1#rd

导读:在KubeCon 2020 线上峰会,张琦与董晓龙共同分享了使用Kubernetes和KubeEdge管理高速公路10万个边缘节点这样场景和规模下的成功实践。

董晓龙是北京数软科技公司的架构师,本项目架构系统的主要设计者之一,也是项目落地的推动者。张琦是华为云智能边缘平台首席架构师,负责华为云智能边缘平台IEF的架构设计和研发。

作者:华为云原生团队

本文来自于KubeCon 2020 同名Keynote的文稿记录。此议题主要由5个方面组成:

  1. 项目背景

  2. 为什么选择Kubernetes?

  3. 为什么选择KubeEdge?

  4. 项目整体方案

  5. 总结

项目背景

本项目是在高速公路ETC联网和推动取消省界收费站的大前提下,门架系统的落地,也就是要把门架部署在覆盖全国范围的高速公路上,收集车辆通行的牌示信息,以及相应的交易信息。

整体的情况是在边缘侧,即高速公路上会部署大量的门架和相应的控制器,相应的边缘终端,这些终端大概10万台,其上部署了相关的应用以收集相关信息。超过50万个应用部署到边缘节点,收集到信息后,通过收费专网向省中心以及路网中心上传对应的数据。

本次项目的工作挑战主要有两个方面:

将近10万台异构设备的管理,包括arm,x86等异构设备。

50余万个应用的生命周期管理

为保证项目的成功落地,我们对整体架构做了选型,最终选择了K8s和KubeEdge来进行整体的应用和边缘节点管理。

为什么选择Kubernetes

在项目里,虽然说是部署在边缘侧的应用,但它的复杂程度已经和云上是类似的了,在边缘侧部署的应用已经是由很多个微服务组成的。所以Kubernetes对于支撑这种微服务化的、云原生化的应用部署和大规模管理的能力,同样也适用于这个项目在边缘侧的使用。

具体来说,有一些典型的部署需求:

双机热备

多机多活互备

有关联的应用同节点部署以提升应用间交互效率

同一应用的不同实例跨节点部署以提升可用性

依据边缘节点的不同属性将应用部署于不同分组中

定义独立于节点的应用部署以及实现满足条件的新边缘节点上线后自动安装应用

这些需求,用K8s的这些Deployment、Pod、ReplicaSet、DaemonSet等核心对象来表示,是非常适合的。所以我们就选择了Kubernetes。

当然,还有一些重要的边缘侧特有的需求是原生的Kubernetes不具备的,但Kubernetes的架构是非常好的,易于扩展,灵活性很高,可以基于原生Kubernetes架构基础,根据边缘管理的特殊需求进行扩展。

为什么选择KubeEdge

一是业务自身的特点来决定的。这个业务的量非常大,涉及的边缘节点分布在全国各地,所以它的边缘侧是多硬件架构、多厂家的,我们需要异构的支持; 边缘工控机低至4核ARM SOC、1G可用内存,我们需要低资源占用的方案来管理边缘侧的节点;管理运维复杂,从路网中心到最终路段,分为6级管理层次,管理成本高,我们需要高集成度边缘的方案,让边缘足够简单,把出问题的概率降到最低,降低运维成本。

二是从边缘环境的特点来看的。从网络的角度来看,网络分为部省、省站两层,多次转发,我们需要边缘接入具有高灵活性,可支持专线、代理、公网、有线和无线接入等多种方式;各地基础设施的建设不同,有些省份的网络带宽低至3M,我们需要边缘和云之间的管理带宽占用降到最低;有些高速公路上的网络条件是非常差的,经常出现断网的情况。我们需要边缘方案有离线自治的能力。

整体方案

接下来我会把整体方案打开成几层来分别介绍。

应用部署

首先是应用部署,就像我刚才说的,在边缘侧要部署的业务非常复杂,它是由多个微服务所构成的云原生化的架构。所以我们这些微服务以及中间件都容器化之后可以非常好的适应各种不同的异构操作系统,方便统一管理。

如下图所示,微服务架构分成前端和后端,前端主要把业务通过Deployment的方式部署到门架上,与后端之间是通过EdgeMesh实现的。通过这种服务发现的方式,实现微服务前后端业务的通信。而后端业务容器本身是无状态的,可以通过Deployment来部署。

后面的Redis包括MySql就可以通过Statefulset的方式来进行部署。通过这样的部署模型,我们可以很完美的进行封装和自动化管理高可用的边缘侧的整套业务系统。

但如果仅仅是用原生的K8s部署方式,并不能完全满足我们的需求,因为在项目里要部署的量非常大,左图的环境只是应用于一个收费站,而一个路段要管理几百上千个收费站,逐个部署成本过高。所以我们基于K8s之上又构建了一个任务工作流的引擎系统,把每一个部署微服务的步骤定义为一个job。用批量的方式大量、快速部署成百上千个同样的微服务系统和环境。

大规模节点接入

除了上面提到的挑战,在应对大规模节点接入的情况下也遇见过一些问题:

每个省有自己的管理权限,我们按K8s集群的配置配了多个K8s集群来进行管理,一个省对应一个K8s集群,然后在K8s之上通过统一的管理层处理复杂跨集群数据统计等操作,从中心侧管理每个省的边缘侧,这就是多集群的管理手段。

我们曾遇见一种现象,路网中心或省中心做网络升级等动作之后,网络有时候会出现问题,所有省的边缘节点,失去与K8s的连接,等网络恢复之后,又会发生所有节点同时连接中心侧的K8s集群,引起大量的并发连接,对中心侧的系统造成冲击,导致应用异常。为了应对这种情况,我们通过动态退避算法缓解节点同时接入所形成的流量冲击。

需要精简NodeStatus和PodStatus上报的信息。就前文所提到的,各地基础设施的建设不同,有些省份的网络带宽低至3M,所以我们需要减小状态信息的大小,降低上报流量的冲击,降低对网络的影响。

镜像仓库Mirror分级加速,有效降低了对网络的冲击,提高大批量部署的部署效率。

边缘业务高可用

接下来的是边缘业务高可用,按照原生K8s的升级状态,它会先删除旧版本Pod,再创建新Pod并在这个过程中去拉取新版本镜像。这种操作在公有云网络条件较好的情况下,是没太大问题的。但在边缘侧,这样就会造成业务长时间的中断,收费数据缺失。所以针对这一个流程,我们也是做了相应的升级和优化。

我们先把升级下载镜像的通知下发做预下载,下载成功之后再删除已有的旧Pod,启动新应用,优化了应用升级对服务中断的时间的影响,将业务升级时整体业务中断的时间从分钟级缩减到了10s内。

同时,考虑到边缘设备有主备部署的情况,而边缘侧又不像云上有ELB服务。我们又在边缘节点中容器化部署了Keepalived,通过VIP,为门架的摄像头等设备提供对应的K8s集群内的容器服务。

总结

当前基于KubeEdge的边缘管理系统管理着全国29个省、自治区的将近100,000个边缘节点,超过500,000边缘应用的部署。支撑了高速公路门架业务的不断调整、更新,满足了每日3亿条以上的信息采集。

为日后车路协同、自动驾驶等创新业务的发展提供了良好的平台支撑。

K8s提供的通用部署和调度模型很适合部署大规模边缘应用。

单纯原生K8s不能满足边缘侧业务的所有需求,KubeEdge集成K8s云原生管理能力,同时对边缘业务部署和管理提供了很好的支持。

RSA算法背后的数学原理

RSA算法背后的数学原理 - Luyu Huang's Tech Blog

https://luyuhuang.tech/2019/10/24/mathematics-principle-of-rsa-algorithm.html

  1. 引言
    RSA算法(RSA algorithm)是一种非对称加密算法, 广泛应用在互联网和电子商务中. 它使用一对密钥进行加密和解密, 分别称为公钥(public key)和私钥(private key). 使用公钥加密的内容只能用私钥解密, 使用私钥加密的内容只能用公钥解密, 并且不能通过公钥在可行的时间内计算出私钥. 这使得加密通信不需要交换私钥, 保证了通信的安全. 那么它是怎么做到这一点的呢? 背后有哪些数学原理? 这篇文章我们来讨论这个问题.

本文会先介绍RSA算法中用到的数论概念和定理: 模算术, 最大公约数与贝祖定理, 线性同余方程, **余数定理, 费马小定理; 然后再介绍RSA算法的原理, 并证明其是有效的. 本文会假设你了解数论的基本概念, 如素数, 最大公约数, 互素等.

  1. 模算术
    2.1 整数除法
    我们用一个正整数去除一个整数, 可以得到一个商和一个余数. 形式化定义为:

定理 1 令 a 为整数, d 为正整数, 则存在唯一的整数 q 和 r, 满足 0⩽r<d, 使得 a=dq+r.

当 r=0 时, 我们称 d 整除 a, 记作 d∣a; 否则称 d 不整除 a, 记作 d∤a

整除有以下基本性质:

定理 2 令 a, b, c 为整数, 其中 a≠0. 则:

如果 a∣b 且 a∣c, 则 a∣(b+c)
如果 a∣b, 则对于所有整数 c 都有 a∣bc
如果 a∣b 且 b∣c, 则 a∣c
2.2 模算术
在数论中我们特别关心一个整数被一个正整数除时的余数. 我们用 amodm=b 表示整数 a 除以正整数 m 的余数是 b. 为了表示两个整数被一个正整数除时的余数相同, 人们又提出了同余式(congruence).

定义 1 如果 a 和 b 是整数而 m 是正整数, 则当 m 整除 a - b 时称 a 模 m 同余 b. 记作 a≡b(modm)

a≡b(modm) 和 amodm=b 很相似. 事实上, 如果 amodm=b, 则 a≡b(modm). 但他们本质上是两个不同的概念. amodm=b 表达的是一个函数, 而 a≡b(modm) 表达的是两个整数之间的关系.

模算术有下列性质:

定理 3 如果 m 是正整数, a, b 是整数, 则有

(a+b)modm=((amodm)+(bmodm))modmabmodm=(amodm)(bmodm)modm
根据定理3, 可得以下推论

推论 1 设 m 是正整数, a, b, c 是整数; 如果 a≡b(modm) , 则 ac≡bc(modm)

证明 ∵ a≡b(modm) , ∴ (a−b)modm=0 . 那么

(ac−bc)modm=c(a−b)modm=(cmodm⋅(a−b)modm)modm=0
∴ ac≡bc(modm) ◼

需要注意的是, 推论1反之不成立. 来看推论2:

推论 2 设 m 是正整数, a, b 是整数, c 是不能被 m 整除的整数; 如果 ac≡bc(modm), 则 a≡b(modm)

证明 ∵ ac≡bc(modm) , 所以有

(ac−bc)modm=c(a−b)modm=(cmodm⋅(a−b)modm)modm=0
∵ cmodm≠0 , ∴ (a−b)modm=0 , ∴a≡b(modm) . ◼

  1. 最大公约数
    如果一个整数 d 能够整除另一个整数 a, 则称 d 是 a 的一个约数(divisor); 如果 d 既能整除 a 又能整除 b, 则称 d 是 a 和 b 的一个公约数(common divisor). 能整除两个整数的最大整数称为这两个整数的最大公约数(greatest common divisor).

定义 2 令 a 和 b 是不全为零的两个整数, 能使 d∣a 和 d∣b 的最大整数 d 称为 a 和 b 的最大公约数. 记作 gcd(a,b)

3.1 求最大公约数
如何求两个已知整数的最大公约数呢? 这里我们讨论一个高效的求最大公约数的算法, 称为辗转相除法. 因为这个算法是欧几里得发明的, 所以也称为欧几里得算法. 辗转相除法基于以下定理:

引理 1 令 a=bq+r, 其中 a, b, q 和 r 均为整数. 则有 gcd(a,b)=gcd(b,r)

证明 我们假设 d 是 a 和 b 的公约数, 即 d∣a 且 d∣b, 那么根据定理2, d 也能整除 a−bq=r. 所以 a 和 b 的任何公约数也是 b 和 r 的公约数;

类似地, 假设 d 是 b 和 r 的公约数, 即 d∣b 且 d∣r, 那么根据定理2, d 也能整除 a=bq+r. 所以 b 和 r 的任何公约数也是 a 和 b 的公约数;

因此, a 与 b 和 b 与 r 拥有相同的公约数. 所以 gcd(a,b)=gcd(b,r). ◼

辗转相除法就是利用引理1, 把大数转换成小数. 例如, 求 gcd(287,91), 我们就把用较大的数除以较小的数. 首先用 287 除以 91, 得

287=91⋅3+14
我们有 gcd(287,91)=gcd(91,14). 问题转换成求 gcd(91,14). 同样地, 用 91 除以 14, 得

91=14⋅6+7
有 gcd(91,14)=gcd(14,7). 继续用 14 除以 7, 得

14=7⋅2+0
因为 7 整除 14, 所以 gcd(14,7)=7. 所以 gcd(287,91)=gcd(91,14)=gcd(14,7)=7.

我们可以很快写出辗转相除法的代码:

def gcd(a, b):
if b == 0: return a
return gcd(b, a % b)
3.2 贝祖定理
现在我们讨论最大公约数的一个重要性质:

定理 4 贝祖定理 如果整数 a, b 不全为零, 则 gcd(a,b) 是 a 和 b 的线性组合集 {ax+by∣x,y∈Z} 中最小的元素. 这里的 x 和 y 被称为贝祖系数

证明 令 A={ax+by∣x,y∈Z}. 设存在 x0, y0 使 d0 是 A 中的最小正元素, d0=ax0+by0; 现在用 d0 去除 a, 这就得到唯一的整数 q(商) 和 r(余数) 满足

d0q+r=a0⩽r<d0(ax0+by0)q+r=ar=a−aqx0−bqy0r=a(1−qx0)+b(−qy0)∈A
又 0⩽r<d0, d0 是 A 中最小正元素

∴ r=0 , d0∣a.

同理, 用 d0 去除 b, 可得 d0∣b. 所以说 d0 是 a 和 b 的公约数.

设 a 和 b 的最大公约数是 d, 那么 d∣(ax0+by0) 即 d∣d0

∴ d0 是 a 和 b 的最大公约数. ◼

我们可以对辗转相除法稍作修改, 让它在计算出最大公约数的同时计算出贝祖系数.

def gcd(a, b):
if b == 0: return a, 1, 0
d, x, y = gcd(b, a % b)
return d, y, x - (a / b) * y
4. 线性同余方程
现在我们来讨论求解形如 ax≡b(modm) 的线性同余方程. 求解这样的线性同余方程是数论研究及其应用中的一项基本任务. 如何求解这样的方程呢? 我们要介绍的一个方法是通过求使得方程 ˉaa≡1(modm) 成立的整数 ˉa. 我们称 ˉa 为 a 模 m 的逆. 下面的定理指出, 当 a 和 m 互素时, a 模 m 的逆必然存在.

定理 5 如果 a 和 m 为互素的整数且 m>1, 则 a 模 m 的逆存在, 并且是唯一的.

证明 由贝祖定理可知, ∵ gcd(a,m)=1 , ∴ 存在整数 x 和 y 使得

ax+my=1
这蕴含着

ax+my≡1(modm)
∵ my≡0(modm) , 所以有

ax≡1(modm)
∴ x 为 a 模 m 的逆. ◼

这样我们就可以调用辗转相除法 gcd(a, m) 求得 a 模 m 的逆.

a 模 m 的逆也被称为 a 在模m乘法群 Z∗m 中的逆元. 这里我并不想引入群论, 有兴趣的同学可参阅算法导论

求得了 a 模 m 的逆 ˉa, 现在我们可以来解线性同余方程了. 具体的做法是这样的: 对于方程 ax≡b(modm) , 我们在方程两边同时乘上 ˉa, 得

ˉaax≡ˉab(modm)
把 ˉaa≡1(modm) 带入上式, 得

x≡ˉab(modm)
x≡ˉab(modm) 就是方程的解. 注意同余方程会有无数个整数解, 所以我们用同余式来表示同余方程的解.

例 1 求线性同余方程 34x≡77(mod89)

解 调用 gcd(34, 89), 得 gcd(34,89)=1=13⋅89−34⋅34 , 34 模 89 的逆为 -34. 方程两边同时乘 -34 得

−34⋅34x≡−34⋅77(mod89)x≡−34⋅77(mod89)x≡−2618≡52(mod89)
5. **余数定理
**南北朝时期数学著作 孙子算经 中提出了这样一个问题:

有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?

用现代的数学语言表述就是: 下列同余方程组的解释多少?

{x≡2(mod3)x≡3(mod5)x≡2(mod7)
孙子算经 中首次提到了同余方程组问题及其具体解法. 因此**剩余定理称为孙子定理.

定理 6 **余数定理 令 m1,m2,…,mn 为大于 1 且两两互素的正整数, a1,a2,…,an 是任意整数. 则同余方程组

{x≡a1(modm1)x≡a2(modm2)...x≡an(modmn)
有唯一的模 m=m1m2…mn 的解.

证明 我们使用构造证明法, 构造出这个方程组的解. 首先对于 i=1,2,…,n, 令

Mi=mmi
即, Mi 是除了 mi 之外所有模数的积. ∵ m1,m2,…,mn 两两互素, ∴ gcd(mi,Mi)=1. 由定理 5 可知, 存在整数 yi 是 Mi 模 mi 的逆. 即

Miyi≡1(modmi)
上式等号两边同时乘 ai 得

aiMiyi≡ai(modmi)
就是第 i 个方程的一个解; 那么怎么构造出方程组的解呢? 我们注意到, 根据 Mi 的定义可得, 对所有的 j≠i, 都有 aiMiyi≡0(modmj). 因此我们令

x=a1M1y1+a2M2y2+...+anMnyn=n∑i=1aiMiyi
就是方程组的解. ◼

有了这个结论, 我们可以解答 孙子算经 中的问题了: 对方程组的每个方程, 求出 Mi , 然后调用 gcd(M_i, m_i) 求出 yi:

{x≡2(mod3)M1=35y1=−1x≡3(mod5)M2=21y2=1x≡2(mod7)M3=15y3=1
最后求出 x=−2⋅35+3⋅21+2⋅15=23≡23(mod105)

  1. 费马小定理
    现在我们来看数论中另外一个重要的定理, 费马小定理(Fermat's little theorem)

定理 7 费马小定理 如果 a 是一个整数, p 是一个素数, 那么

ap≡a(modp)
特别地, 当 a 不是 p 的倍数时, 有

ap−1≡1(modp)
证明 假设 n 是整数, p 是素数, 考虑组合数

(np)=p!n!(p−n)!
当 n 不为 p 或 0 时, 由于分子有质数p, 但分母不含p; 故分子的p能保留, 不被约分而除去. 即 p∣(np).

令 b 为任意整数, 根据二项式定理, 我们有

(b+1)p=(pp)bp+(pp−1)bp−1+(pp−2)bp−2+...+(p1)+(p0)b0=p∑i=0(pp−i)bp−i
对上式模 p, 可得同余式

(b+1)p≡(pp)bp+(p0)b0≡bp+1(modp)
通过不断地令 b=b−1 , 可得

(b+1)p≡bp+1(modp)bp≡(b−1)p+1(modp)(b−1)p≡(b−2)p+1(modp)(b−2)p≡(b−3)p+1(modp)...
依次代入, 得

(b+1)p≡bp+1(modp)≡(b−1)p+2(modp)≡(b−2)p+3(modp)≡(b−3)p+4(modp)...≡b+1(modp)
令 a=b+1, 即得 ap≡a(modp).

当 p 不整除 a 时, 根据推论 2, 有 ap−1≡1(modp) . ◼

  1. RSA算法
    我们终于可以来看 RSA 算法了. 先来看 RSA 算法是怎么运作的:

RSA 算法按照以下过程创建公钥和私钥:

随机选取两个大素数 p 和 q, p≠q;
计算 n=pq;
选取一个与 (p−1)(q−1) 互素的小整数 e;
求 e 模 (p−1)(q−1) 的逆, 记作 d;
将 P=(e,n) 公开, 是为公钥;
将 S=(d,n) 保密, 是为私钥.
要把明文 M 加密成密文 C, 计算

C=Memodn
要把密文 C 解密成明文 M, 计算

M=Cdmodn
下面证明 RSA 算法是有效的:

证明 要证明 RSA 加密算法的有效性, 我们只需要证明 Cd≡M(modn) 也就是 Med≡M(modn). 注意到 d 为 e 模 (p−1)(q−1) 的逆, 所以有

ed≡1(mod(p−1)(q−1))
这蕴含着存在整数 k, 使得 ed=1+k(p−1)(q−1). 由此可得

Med≡M1+k(p−1)(q−1)(modn)
如果 M 不是 p 的倍数, 那么根据费马小定理, 可得 Mp−1≡1(modp). 因此

Med≡M1+k(p−1)(q−1)≡M⋅(Mp−1)k(q−1)≡M(modp)
如果 M 是 p 的倍数, 那么 Med≡0≡M(modp). 所以对所有的 M 都有

Med≡M(modp)
类似地, 对于所有的 M 都有

Med≡M(modq)
由于 p, q 都是素数, 所以 gcd(p,q)=1. 由**余数定理 可得

Med≡M(modn)
所以 RSA 加密算法是有效的. ◼

(1) 式表明, 不仅可以用公钥加密, 私钥解密, 还可以用私钥加密, 公钥解密. 即加密计算 C=Mdmodn, 解密计算 M=Cemodn.

RSA 算法的安全性基于大整数的质因数分解的困难性. 由于目前没有能在多项式时间内对整数作质因数分解的算法, 因此无法在可行的时间内把 n 分解成 p 和 q 的乘积. 因此就无法求得 e 模 (p−1)(q−1) 的逆, 也就无法根据公钥计算出私钥.

  1. 总结
    RSA 算法是一个能体现数学之美的算法. 因为有 RSA 这样的非对称加密算法, 我们的互联网才变得安全, 电子商务, 移动支付, 网银等才得以存在. 在这些的背后都是数学家和计算机科学家的研究成果. 本文主要讨论的是 RSA 算法背后的数学原理而不是其实现, 因此, 限于篇幅, 像模取幂, 寻找大素数, 大整数运算之类的算法未予讨论. 感兴趣的同学可参阅参考资料中的文献.

参考资料

离散数学及其应用(原书第7版), 机械工程出版社
算法导论第三版, 机械工业出版社
费马小定理

gartner-top-10-strategic-technology-trends-for-2020

https://www.gartner.com/smarterwithgartner/gartner-top-10-strategic-technology-trends-for-2020/

Trend No. 7: The distributed cloud
Distributed cloud refers to the distribution of public cloud services to locations outside the cloud provider’s physical data centers, but which are still controlled by the provider. In distributed cloud, the cloud provider is responsible for all aspects of cloud service architecture, delivery, operations, governance and updates. The evolution from centralized public cloud to distributed public cloud ushers in a new era of cloud computing.

Distributed cloud allows data centers to be located anywhere. This solves both technical issues like latency and also regulatory challenges like data sovereignty. It also offers the benefits of a public cloud service alongside the benefits of a private, local cloud.

KubeEdge@MEC:Kubernetes容器生态与5G的结合

link: https://mp.weixin.qq.com/s/r00EhmsJzPH0f6gTd-uavA

边缘计算技术快速发展,5G MEC进入商业部署快车道,边云协同成为MEC的普遍诉求,KubeEdge社区洞悉这一趋势,按照CNCF成熟治理模式,成立MEC SIG。

在MEC场景下,通过对边云协同面临的挑战分析,MEC SIG从应用管理、网络、开放生态等几个角度,提出了相应的解决方案,主要是5G网络结合的跨边云的应用部署、服务发现、微服务流量治理、能力开放和生态集成。

最后,MEC SIG表示希望能联合运营商和开发者共同推广5G MEC技术,实现产业共赢。

背景介绍

根据Frost&Sullivan报告,多接入边缘计算(MEC)市场预计将以惊人的复合年增长率157.4%增长,预计到2024年将从2019年的6410万美元获得72.3亿美元的收入。

Gartner发布基础设施和运营领域10大技术趋势[1]. 认为边缘计算是在未来五年内成为主流、对I&O产生最大影响的十项技术之一。边缘计算技术快速发展,5G MEC边云协同成为最新的发展趋势。

下面对5G边云协同发展现状进行简单分析:

OTT视角
AWS发布软硬一体化边缘云服务Wavelength切入5G网络边缘,提供5G边缘网络和边缘云服务,与Version、Vodafone、SK Telecom、KDDI 等运营商合作,并在美国,欧洲,韩国,日本逐步推出。

Google发布全球移动边缘云(GMEC)战略,通过GMEC构筑5G网络边缘PaaS平台,和AT&T, Orange等运营商共同构建全球5G解决方案和生态。计划将Anthos生态通过运营商网络,推送到企业客户和个人客户。

Azure发布Azure Edge Zones with Carrier和Azure Private Edge Zones,将中心云的能力下沉到运营商5G网络边缘和企业专网,并与AT&T、Telefonica、Vodafone等运营商达成合作伙伴关系。

运营商视角
在**,联通推出的CUC-MEC边缘云平台[2],实现CT+IT+OT的融合,积极和 OTT厂商合作,实现与公有云、行业云、私有云生态的无缝对接。联通边缘业务管理平台整体架构如下图所示,明确了边云协同是MEPM边缘管理器功能的一部分。

联通、电信等专家均认为云边协同将会是MEC平台的重要特性:

移动sigma边缘计算平台架构[3]

电信边缘计算平台架构[4]

产业视角
GSMA联合全球22家运营商发起了Operator Platform[5]项目,加速和简化MEC App跨运营商和云的部署,方便MEC App提供商或运营商更便捷的推广边缘应用。

边云协同如何助力运营商进行云网融合? 会面临哪些挑战呢?

5G边云协同面临的挑战

云边协同在MEC场景下面临的挑战主要包括:

如何简单高效的管理海量物理离散的边缘站点?如何基于5G网络事件优化边缘应用匹配不同层级的边缘计算资源。资源层级包括:现场边缘、运营商网络边缘、中心云。

终端如何高效的发现处于不同层级的目标服务,就近接入,获得最低时延体验?

如何简化应用在跨边云部署时的网络配置,并保证网络安全?如何实现跨边云的微服务流量治理,简化应用开发的复杂度和应用运行的可靠性?

如何通过云原生的方式,将第三方的能力集成进MEC平台并开放给用户,如5G网络能力、区块链、AI等技术?如何实现云和5G生态的快速集成?

KubeEdge MEC SIG介绍

KubeEdge作为目前业界最为典型的一款边云协同的开源项目,由社区成员发起,经过多次社区会议的讨论,KubeEdge社区按照CNCF成熟治理模式,成立MEC SIG,负责5G边缘计算场景下技术和生态的拓展,以更好的应对如上所述的那些挑战。

如下图所述,MEC SIG将关注如下几个方向:

Service Resource Manager: 跨边云的全局应用部署和网络资源管理。和5GC NEF对接,实现基于5G网络事件的应用调度,5G流量的分发,QoS配置,应用迁移等。边缘站点支持多租户管理。

Edge Service Discovery: 跨边云服务发现,就近接入,可与Service Resource Manager配合,结合地理位置和网络传输最短路径,实现触发式的按需部署应用。

EdgeMesh: 跨边云L3容器网络配置和安全管理;跨边云微服务通信全链路路由、限流、熔断等治理能力。

ServiceHub: 基于云原生的方式实现能力开放平台,配合Service Broker实现生态协同,将网络能力和第三方开发者的能力快速集成进MEC平台并开放给用户,如区块链、通用AI,网络高精度室内定位能力、无线网络测量信息能力、QoS保障能力。还将提供服务注册、鉴权校验、访问控制等APIG的能力。

结束语

边云协同是MEC的普遍诉求,也是边缘计算发展过程中面临的重要课题,如何实现边云协同,更好的帮助运营商实现云网融合战略转型?更好的帮助应用开发者更好的使用5G网络的能力?更好的实现产业共赢?KubeEdge MEC SIG将这些方向上继续进行深入讨论和探索。

参考文献:
[1] Gartner基础设施和运营领域10大技术趋势:https://www.gartner.com/smarterwithgartner/gartner-top-10-strategic-technology-trends-for-2020/

[2] **联通5G MEC 边缘云平台架构及商用实践白皮书

[3] 5G边缘计算新趋势高峰论坛 – **移动边缘计算技术愿景与产业实践:http://www.bianyuanyun.com/archives/289

[4] 5G边缘计算新趋势高峰论坛 – **电信:开放MEC创新环境,携手赋能行业未来:
http://www.ecconsortium.net/Lists/show/id/391.html

[5] GSMA Operator Platfrom whitepaper:
https://www.gsma.com/futurenetworks/resources/operator-platform-concept-whitepaper/

[6]CNCF特别兴趣小组(SIG)说明:https://jimmysong.io/kubernetes-handbook/cloud-native/cncf-sig.html

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.