k8s调度 原理_【课后问答】KubeEdge边缘自治设计原理

本文介绍了KubeEdge的云、边、端三层架构,并深入讲解EdgeCore中Edgehub、MetaManager、EdgeD模块的设计原理。探讨了边缘应用管理,包括边缘自治的实现,以及在云边网络断开、边缘节点重启情况下的处理。同时,讨论了KubeEdge的容器编排、社区参与方式、云边消息通过EdgeHub与CloudHub的Websocket或Quic协议传递,以及如何实现云边数据一致性。
摘要由CSDN通过智能技术生成

项目地址(欢迎Star、Watch、Fork):

https://www.github.com/kubeedge/kubeedge​www.github.com

11月28日视频直播了KubeEdge系列课程第三课《KubeEdge边缘自治设计原理》。

课程首先回顾了KubeEdge的云、边、端三层整体架构。再针对KubeEdge的边缘应用管理部分,分析了EdgeCore中模块间通信原理及Edgehub、MetaManager、EdgeD三个模块的设计原理,最后演示了如何利用KubeEdge管理应用及在云边网络断开、边缘节点重启等情况下如何实现边缘自治,本次课程详情见以下回放。

9f9a34e0512545951a5e2403f5af8c23.png

本次课程的回放地址:

媒体中心​huaweicloud.bugu.mudu.tv

问1 :KubeEdge中容器编排是通过云上的controller manager来进行编排的吗?除了下发边缘完整的api对象期望状态,边缘发送ack来实现消息一致性外,边缘容器的状态还是要上报到云端,这个一致性是如何实现的?

答1:KubeEdge构建在K8s原生的调度与编排能力之上,它负责将应用的元数据可靠的下发到边缘节点。边缘端周期性上报状态node、pod信息,会不断重试上报,因此目前还未计划实现排队及ACK校验等功能。

问2:如何加入社区,参与一些工作?

答2:如果是新人刚开始参与社区,可以做一些简单的工作,例如补齐文档、添加测试用例等,社区会有标签为“help wanted”或“good first issue”的issue,都适用于新手开发者。

如果有相关开发经验,可以参与社区Bug修复、大特性的设计与实现,社区欢迎每一位贡献者!

问3:KubeEdge云边之间的消息是如何收发的,是经过edgehub~cloudhub之间的websocket吗?是否有具体的示例?

答3:KubeEdge云边消息传递是通过EdgeHub与CloudHub间的Websocket或Quic协议的长连接传递的,具体方式可参考相应源码。

问4:如果有学术想法,如何整合自己的想法到KubeEdge中?比如Kubernetes 就提供了各种语言的Client,使得可以更好的整合自己的想法,KubeEdge有没有类似的编程接口?

答4:KubeEdge构建在K8s原生的调度与编排能力之上,与K8s的API是100%兼容的,对于K8s的API对象可以使用K8s原生的Client来操作。KubeEdge中自定义的Device CRD后续也会按K8s标准生成golang语言的Client。因此可以按照K8s原生的方式来操作KubeEdge。

问5:edgecore有时候出站不稳定,该进程有时自动关闭,是什么原因?

答5:如果出现程序自动退出、重启的问题,建议查看对应的应用日志,将问题及日志以Issue的方式提到社区解决。

问6:如何实现云边数据一致性?

答6:云边数据一致性在第二次课中有详细介绍,欢迎查看第二次课程回放及PPT。

【免费直播课】KubeEdge技术详解与实战!六节课get拥抱边缘计算的正确姿势!_云容器全栈_-华为云论坛​bbs.huaweicloud.com
7e72a3b5923011d47b9133c44ee4e9fd.png

问7:KubeEdge的API调用方式,是否计划提供sdk调用方式?

答7: 目前在云边还不支持使用“kubectl logs”查看应用日志。已有计划,会在后续版本中支持,有参与意向的同学也可参与此Issue讨论。

#1014 Add `kubectl log` support to kubeege

Add `kubectl log` support to kubeege · Issue #1014 · kubeedge/kubeedge​github.com
1d3d3fc31729077fa7f769f4471d6213.png

问8:边缘端edgecore重启,不会自动拉起使用configmap的pod,未使用configmap的pod可以正常启动吗?

答8:首先考虑edgecore重启不会引起节点业务Pod的重启,如果是边缘节点宕机引起整个节点的重启,应该考虑该Pod是否已经迁移到其他节点。

问9:如何在Ubuntu下用keadm init命令部署kubeedge v1.1版本?

答9:在最后一次课程(第六课:实践篇)中会有关于部署、应用实践等详细的演示,欢迎持续关注KubeEdge直播课。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值