冠状沟溃疡是什么病| 空调一级能效什么意思| 鸽子公主是什么意思| 杀鸡给猴看什么意思| 发热门诊属于什么科| 肾精是什么| 高血压属于什么系统疾病| hx是什么| 梦见自己流鼻血是什么预兆| 舌头发白吃什么药| 什么叫调剂| 李商隐是什么朝代的| 当你从我眼前慢慢走过是什么歌| 精神病人最怕什么刺激| 双肺斑索是什么意思| com代表什么意思| wbc是什么意思| 小孩头晕是什么原因| 什么是回迁房| 甾体是什么意思| 2020年是属什么生肖| 八月份什么星座| 雷人是什么意思啊| 什么是福报| 尿多是什么问题| 草木皆兵的意思是什么| 燕窝是什么东西做成的| 手心发热什么原因| 复古红是什么颜色| 男人喝红糖水有什么好处| 出水痘吃什么药| 武昌鱼是什么鱼| 尿毒症小便有什么症状| 打完疫苗不能吃什么| 10月21日是什么星座| 月经失调是什么原因引起的| 加鸡腿什么意思| 两个子是什么字| 脚旁边骨头突出叫什么| 教师节给老师送什么礼物| 想一出是一出什么意思| 逆时针揉肚子起什么作用| 骨膜炎吃什么药| 自燃是什么意思| 治疗幽门螺旋杆菌用什么药| 7月18日什么星座| 艾草有什么功效| 卵泡破裂是什么意思| grace什么意思| 手掌疼是什么原因| 什么是钙化灶| 眼白有黄斑是什么原因| 身体缺钠会有什么症状| 前脚底板痛是什么原因| 中国最长的河流是什么| 孕前检查挂什么科室| 工事是什么意思| 抖m是什么意思| 蛋蛋疼是什么原因| 霸王别姬讲的是什么故事| 脾氨肽是什么| 斯里兰卡用什么货币| 口嗨是什么意思| 鬼一般找什么人压床| 阑尾有什么作用| 睡眠不好会引起什么症状| 阴茎中途疲软吃什么药| 竖心旁的字有什么| 维生素b12有什么用| 黄鳝喜欢吃什么| 为什么人会流泪| 2000年属什么生肖| 日斤读什么字| 控制血糖吃什么食物| 明哲保身是什么生肖| 草鱼又叫什么鱼| 肌酐低是什么原因| 脂肪肝吃什么药好| 问号是什么意思| 昭和是什么意思| 痢疾吃什么药最有效| 来月经不能吃什么| 药食同源是什么意思| 白莲子和红莲子有什么区别| 茼蒿和什么相克| 宫腔内囊性结构是什么意思| 镜里观花是什么生肖| 分别心是什么意思| apm是什么品牌| 淋巴结有血流信号预示着什么| 属牛跟什么属相最配| ih医学上是什么意思| 叶黄素什么时间吃最好| o型b型生的孩子是什么血型| 合肥有什么玩的| 肠胃不舒服吃什么| cyan是什么颜色| 早上口干口苦是什么原因| 小便无力是什么原因| 青蛙怕什么| esr是什么| 看望病人送什么花| 胃气胀是什么原因怎么解决| ecl是什么意思| 检查肠胃挂什么科| 什么叫双开| 巨人观什么意思| 胚胎生化是什么意思| 为什么家里有蚂蚁| 艾滋病是什么样的| 八戒是什么意思| 如字五行属什么| 死是什么感觉| 宝宝惊跳反射什么时候消失| 调理是什么意思| 分泌物过氧化氢阳性是什么意思| 痤疮用什么药治最好效果最快| a型血和ab型血生的孩子是什么血型| cool什么意思中文| 靶子是什么意思| 小腿酸什么原因| 梦到孩子丢了是什么征兆| 哥们是什么意思| 舌苔厚白腻是什么原因引起的| 矢什么意思| 逍遥丸是治什么的| 凤毛麟角是什么生肖| 渗透率是什么意思| 胃酸吃什么食物好得快| 大人睡觉流口水是什么原因引起的| 男朋友昵称叫什么好听| 舌自心念什么| asus是什么牌子| 脚趾抽筋是什么原因| 大龄补贴需要什么条件| 小孩为什么会得手足口病| 1971年属猪的是什么命| 及时是什么意思| 银杏叶片有什么作用| 投诉医生打什么电话| 禄蠹是什么意思| 吃什么紧致皮肤抗衰老| 性功能障碍挂什么科| 罗贯中和施耐庵是什么关系| 喵喵喵是什么意思| 讳莫如深什么意思| wuli是什么意思| 2000属什么生肖| 历法是什么意思| 定点医院什么意思| 胸口疼痛是什么原因| 游离前列腺特异性抗原是什么意思| 竖心旁的字有什么| 检查宫颈做什么检查| 小恙是什么意思| 关羽使用的武器是什么| 远山含黛是什么意思| 女人吃秋葵有什么好处| 昭字五行属什么| 经期适合喝什么汤| 安是什么单位| 钱学森发明了什么| 英特纳雄耐尔是什么意思| 女人脾胃虚弱吃什么好| 月黑风高什么意思| 仙姑是什么意思| 全身酸痛吃什么药| 龟头发炎用什么药| 什么时间立秋| 肋骨外翻有什么危害| 天秤座跟什么星座最配| 雷同是什么意思| 多管闲事是什么意思| mua是什么意思| 吃避孕药有什么危害| 竹升面是什么面| 什么样的长城| 六尘不染的生肖是什么| 背疼什么原因| 什么是皮包公司| 结肠炎吃什么药效果最好| 腿部抽筋是什么原因| 老虎吃什么食物| 血糖高能吃什么肉| 口腔癌早期有什么征兆| mt是什么单位| 三黄鸡为什么那么便宜| 八月三日是什么星座| 坐怀不乱是什么生肖| 月经期适合做什么运动| 打白条是什么意思| 黑暗料理是什么意思| 什么是优质碳水| 异常灌注是什么意思| 什么含钾最多| 肚子疼应该吃什么药| 雷特综合症是什么症状| 粉刺长什么样图片| 熊猫尾巴什么颜色| 孕囊形态欠规则是什么意思| 寂寞的近义词是什么| 丁克是什么意思| 中专属于什么学历| 河豚吃什么食物| 蛇为什么怕鹅| 香芋紫是什么颜色| 同归于尽是什么意思| bgm网络语什么意思| 地黄泡水喝有什么好处| 心脏跳的慢吃什么好| 孕妇多吃什么水果比较好| 甲状旁腺激素高吃什么药| 教师节送老师什么礼物最好| brunch是什么意思| 水鱼是什么意思| 菓是什么意思| rhe阴性是什么意思| 什么锤百炼| 腋下检查挂什么科| 辣木籽有什么功效| 踩雷是什么意思| 前年是什么年| 白细胞低有什么症状| 蓝猫为什么叫蓝猫| 布病挂什么科| 女人味是什么| 来月经头晕是什么原因| 流清水鼻涕吃什么药| 甲泼尼龙是什么药| 小腿为什么会抽筋| 尿酸高是为什么| 智齿长什么样子图片| 吃什么排出全身毒素| 妈妈桑是什么意思| 接触隔离什么意思| 排除是什么意思| 男人要的归属感是什么| 肾阳虚吃什么食物| ccc是什么意思| 代表友谊的花是什么花| 敛财是什么意思| 血压测不出来什么原因| 海绵体充血不足吃什么药| 农历七月十五是什么节| 吃什么食物能补钾| 虎头虎脑是什么生肖| 人参有什么作用| 头层牛皮除牛反绒是什么意思| 布衣蔬食是什么意思| 胃溃疡吃什么药好| 颈动脉斑块吃什么药| pgi2在医学是什么意思| 捡帽子有什么说法吗| 指背煞是什么意思| 11.22什么星座| 6月份是什么星座| aki医学上是什么意思| 坐月子哭了会有什么后遗症| 肾挂什么科| 学前教育学什么| 晚的反义词是什么| 砸是什么意思| 同房出血是什么原因造成的| 药食同源是什么意思| 百度
Skip to content

baidu/ote-stack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

?

History

94 Commits
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?

Repository files navigation

OTE-Stack

Build Status Go Report Card GoDoc

OTE-Stack is an edge computing platform for 5G and AI. By virtualization it can shield heterogeneous characteristics and gives a unified access of cloud edge, mobile edge and private edge. For AI it provides low-latency, high-reliability and cost-optimal computing support at the edge through the cluster management and intelligent scheduling of multi-tier clusters. And at the same time OTE-Stack makes device-edge-cloud collaborative computing possible.

Note: OTE-Stack is a heavy work in progress.

Advantages

Large scale and hierarchical cluster management

Through the standard interface, hierarchical clusters can be built quickly. The number of clusters can be theoretically unlimited which can effectively solve the management and scheduling problems of large-scale mobile edge clusters in 5G era.

Support third cluster

It supports kubernetes and k3s now. Because edge is a logical cluster,it can support any clusters by cluster-shim in theory. So in 5G era, it can be compatible with different implementations of different operators'MEC platforms. Use k8s cluster shim for both k8s and k3s when WebFrontend is used. k3s cluster shim is a lightweight version of k8s cluster shim without edge resource reporter. For better k3s support, we commit a pull request to make flannel config template, and offer a way to support GPU with k3s.

Lightweight cluster controller

Only one component and one customize shim can make the third cluster controlled by OTE-Stack. So it's very light and easy to use.

Cluster autonomy

The edge is a complete logical cluster which caches almost all the states. So it will run normally when it is disconnected from the center which can effectively solve the problem of cluster autonomy in the case of weak edge networks.

Automatic disaster recovery

Because of the hierarchical design of clusters, Cluster Controller at each level will automatically acquire the alternate nodes. Once the connection with the parent node is lost, the connection with the center will be restored through the alternate nodes.

Global scheduling

Through Cluster Controller, all the clusters can be integrated into the unified scheduling, and the global optimal use of edge resources can be achieved.

Support multi-runtimes

OTE-Stack leverages virtlet for VM-based workloads, and also adds VM operation(start,stop, mount,etc.) via CustomResourceDefinition. So it supports VM,Kata containers and runc which can orchestrate in a unified way. Also, kubevirt can be used to manage VMs inside edge cluster with better support for GPU. WebFrontend of OTE-Stack would support VM operations in future work.

Kubernetes native support

With OTE-Stack, users can orchestrate dockers/VM on Edge clusters just like a traditional kubernetes cluster in the Cloud.

Support multi-arch

OTE-Stack can run on both x86 and arm architecture. All components of OTE-Stack has been tested on arm except GPU support. Images are avalible on docker hub.

Support edge autonomy

OTE-Stack has the autonomy of edge nodes and supports edge autonomy of k8s and k3s clusters.

Architecture

architecture

OTE-Stack features a pluggable architecture, making it much easier to build on.

  • The global scheduler is fully compatible with kubernetes. Users can operate directly using kubectl;
  • Using websocket for the edge-cloud communication;
  • In addition to the cluster name, the cluster tag can be added customically. Cluster tag matching through intelligent cluster-selecter to achieve accurate routing of messages;
  • Through k8s-cluster-shim to achieve the management of kubernetes cluster, shielding the native implementation within the kubernetes cluster;
  • According to the interface of OTE-Stack, the cluster shim of the third party cluster can be realized to access and schedule the third party cluster. The internal implementation of the third party cluster is shielded;
  • Each layer can be used as a control entry to control all sub-clusters below this layer. Users can also use kubectl or API to implement custom cluster management and scheduling.

architecture

On the edge, OTE-Stack provides the ability to support node autonomy within the cluster.

  • Use EdgeHub to take over the kubelet, kube-proxy or k3s agent components of the node.
  • EdgeHub provides load balancing capabilities for node requests.
  • During node autonomy, you can use EdgeController instead of node to complete node status reporting and updating.
  • EdgeHub and EdgeController have both the autonomy capabilities of k8s and k3s clusters.

Components

  • WebFrontend
  • WebBackend
  • OpenAPI
  • Scheduler
  • ChartManager
  • EdgeTunnel

Northbound interface of Controller. By establishing websocket connection with CloudTunnel of upper cluster, messages between clusters can be transmitted smoothly.

  • EdgeHandler

It can add tags to cluster, receive and process messages from upper cluster, transmit messages to ClusterHandler, receive messages from ClusterHandler and realize cluster disaster recovery automatically.

  • Users can configure their own cluster name or add cluster tags to achieve complex cluster management.
  • Used for receiving messages sent by EdgeTunnel and forwarding them to Cluster Selecter for routing or direct transmission to ClusterHandler after processing.
  • Receive messages sent back by ClusterHandler or shim (such as changes in sub-cluster, status, etc.) and pass them to the upper cluster through EdgeTunnel after processing.
  • Once the connection between the current cluster and the parent cluster is established, the sibling cluster of the parent, the parent cluster of the parent and the sibling cluster of itself will be automatically acquired as the alternative cluster. When Disconnected,the alternative one is connected automatically. The connection to the central can be quickly restored. Meanwhile, it regularly checks whether the previous parent cluster is restored, and once restored, it restores the previous connection topology.
  • ClusterSelecter

It is used to complete the routing of cluster messages, and it accepts the processing of two kinds of cluster routing rules.

  • If it is a real list of cluster names, it matches the names according to the cluster routing rules and looks for the next hop until it reaches the specified cluster accurately.
  • If it's a cluster's fuzzy rules, such as* tagA*, it matches all tagA-containing clusters in the tag and maps them to the real names of the clusters. Then it uses the above rules to pass down until it reaches the specified cluster accurately.
  • ClusterHandler

It's core components of cluster management.

  • Store the names and labels of all subclusters.
  • Establish routing rules that store the next hop cluster name to any sub-cluster to support accurate delivery of messages.
  • Notify the upper cluster in time when the sub-cluster changes (such as disconnection, status updates, etc.)
  • CloudTunnel

Southbound interface of Controller. By establishing websocket connection with EdgeTunnel of sub-cluster, messages between clusters can be transmitted smoothly.

  • k8s-cluster-shim

It is an adapter of kubernetes cluster, which receives and parses cluster messages forwarded by OTE Cluster Controller, sends them to kubernetes cluster for corresponding processing, and returns the results and status to OTE Cluster Controller in time.

  • k3s-cluster-shim

It is an adapter of k3s cluster, which receives and parses cluster messages forwarded by OTE Cluster Controller, sends them to k3s cluster for corresponding processing, and returns the results and status to OTE Cluster Controller in time.

  • NodeAgent

It is deployed on edge nodes to retrieve data from cAdvisor and Node-Exporter which will be uploaded to NodesServer in edge clusters.

  • NodesServer

In the edge cluster, it is used to aggregate data of each node and provide it to Prometheus (Prometheus can also directly collect data of the node, but requires the node to open the corresponding ports)

  • DataQueryServer

Exposing Prometheus data as APIs to OpenAPI and Scheduler

  • VMController

Operations for a single VM, such as start, stop, etc.

  • EdgeHub

Proxy between master and node in the edge cluster.

  • EdgeController

It is used to take over the state management of the node when the node is disconnected from the master.

Current Features

  • Hierarchical cluster management
  • Support kubernetes and k3s cluster by given shim
  • Duplex channel from center to edge cluster
  • Cluster autonomy
  • Automatic disaster recovery(Previous topology is not yet restored)
  • Kubernetes native support and it's optional choice
  • Accurate routing of messages between clusters

Getting Started

Quick Start

Build from source

Use for edge autonomy

TODO

OTE-Stack aims to providing a complete solution to edge cloud, so we will gradually open and improve the following core functions in the future.

Add Cluster Tags

By adding some tags for edge cluster, you can achieve complex cluster management.

Lightweight Edge Cluster

Although k3s and kubeedge have provided reference designs for edge clusters and their design ideas are ingenious, we will still explore how lightweight clusters suitable for edge infrastructure can be designed to better support edge clouds.

Edge Cluster Interface Standard

We need to consider the scheme of edge cluster and the design of 5G MEC(Multi-access Edge Computing) to abstract the interface and form the access standard of edge cluster. Now provider interface of virtual kubelet may be a candidate for us and we'll try to see if it meets all our requirements.

Global Scheduling Strategy

Because the realization of sub-clusters is different, we need to consider how to use limited data on the basis of hierarchical clusters to schedule resources reasonably to meet the purpose of maximizing the utilization of edge cloud resources.

Message Routing Policy

In order to ensure the accurate delivery of messages, it is necessary to design the shortest path algorithm combining with the topological rules to reduce the transmission of useless messages.

We will also focus on and provide reference designs for other modules, such as Micro-Service framework, automation operation and maintenance of large-scale edge cluster, multi-tenant for edge cloud and Device-Edge-Cloud cooperation.

Contributing

If you're interested in being a contributor and want to get involved in developing the OTE-Stack code, please see CONTRIBUTING for details on submitting patches and the contribution workflow.

Discussion

Email: ote-stack@baidu.com

License

OTE-Stack is under the Apache 2.0 license. See the LICENSE file for details.

About

OTE-Stack is an edge computing platform for 5G and AI

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  
messi是什么意思 天天做梦是什么原因 辅警和协警有什么区别 什么情况需要做胃镜 命名是什么意思
变态反应是什么意思 微不足道是什么意思 戾气重是什么意思 一周年祭日有什么讲究 人参适合什么人吃
什么烟最贵 mr什么意思 Lady什么意思 月经有点黑是什么原因 待客是什么意思
脚底干裂起硬皮是什么原因怎么治 为什么会得甲减 头面是什么 秀恩爱是什么意思 小苏打可以用什么代替
特种兵是干什么的hcv9jop0ns2r.cn 香奈儿属于什么档次hcv7jop9ns6r.cn 88属什么hcv7jop5ns4r.cn 萎缩性胃炎吃什么水果好hcv8jop5ns7r.cn 什么是早教机hcv9jop2ns4r.cn
雕琢是什么意思hcv8jop7ns8r.cn 当枪使什么意思hcv8jop9ns3r.cn 草代表什么生肖hcv8jop3ns6r.cn 笔试是什么意思hcv7jop9ns4r.cn 三撇读什么hcv8jop3ns7r.cn
鼻屎多是什么原因hcv9jop7ns5r.cn 眼睛视力模糊用什么眼药水hcv9jop6ns4r.cn 姜黄与生姜有什么区别hcv8jop2ns7r.cn 什么旺土hcv9jop2ns1r.cn 为什么会得焦虑症hcv9jop0ns9r.cn
为什么右眼皮一直跳hcv8jop2ns7r.cn 1931年属什么生肖xscnpatent.com 正佳广场有什么好玩的hcv8jop6ns2r.cn 晴水翡翠属于什么档次hcv9jop8ns2r.cn fizz是什么意思hcv9jop6ns7r.cn
百度