github.com/jingruilea/kubeedge@v1.2.0-beta.0.0.20200410162146-4bb8902b3879/README_zh.md (about) 1 # KubeEdge 2 [![Build Status](https://travis-ci.org/kubeedge/kubeedge.svg?branch=master)](https://travis-ci.org/kubeedge/kubeedge) 3 [![Go Report Card](https://goreportcard.com/badge/github.com/kubeedge/kubeedge)](https://goreportcard.com/report/github.com/kubeedge/kubeedge) 4 [![LICENSE](https://img.shields.io/github/license/kubeedge/kubeedge.svg?style=flat-square)](https://github.com/kubeedge/kubeedge/blob/master/LICENSE) 5 [![Releases](https://img.shields.io/github/release/kubeedge/kubeedge/all.svg?style=flat-square)](https://github.com/kubeedge/kubeedge/releases) 6 [![Documentation Status](https://readthedocs.org/projects/kubeedge/badge/?version=latest)](https://kubeedge.readthedocs.io/en/latest/?badge=latest) 7 8 9 ![logo](./docs/images/KubeEdge_logo.png) 10 11 KubeEdge 是一个开源的系统,可将本机容器化应用编排和管理扩展到边缘端设备。 它基于Kubernetes构建,为网络和应用程序提供核心基础架构支持,并在云端和边缘端部署应用,同步元数据。KubeEdge 还支持 **MQTT** 协议,允许开发人员编写客户逻辑,并在边缘端启用设备通信的资源约束。KubeEdge 包含云端和边缘端两部分。 12 13 ## 优势 14 15 ### 边缘计算 16 17 通过在边缘端运行业务逻辑,可以在本地保护和处理大量数据。KubeEdge 减少了边和云之间的带宽请求,加快响应速度,并保护客户数据隐私。 18 19 ### 简化开发 20 21 开发人员可以编写常规的基于 http 或 mqtt 的应用程序,容器化并在边缘或云端任何地方运行。 22 23 ### Kubernetes 原生支持 24 25 使用 KubeEdge 用户可以在边缘节点上编排应用、管理设备并监控应用程序/设备状态,就如同在云端操作 Kubernetes 集群一样。 26 27 ### 丰富的应用程序 28 29 用户可以轻松地将复杂的机器学习、图像识别、事件处理等高层应用程序部署到边缘端。 30 31 ## 介绍 32 33 KubeEdge 由以下组件构成: 34 35 ### 云上部分 36 - [CloudHub](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/cloud/cloudhub.md): CloudHub 是一个 Web Socket 服务端,负责监听云端的变化, 缓存并发送消息到 EdgeHub。 37 - [EdgeController](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/cloud/controller.md): EdgeController 是一个扩展的 Kubernetes 控制器,管理边缘节点和 Pods 的元数据确保数据能够传递到指定的边缘节点。 38 - [DeviceController](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/cloud/device_controller.md): DeviceController 是一个扩展的 Kubernetes 控制器,管理边缘设备,确保设备信息、设备状态的云边同步。 39 40 41 ### 边缘部分 42 - [EdgeHub](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/edgehub.md): EdgeHub 是一个 Web Socket 客户端,负责与边缘计算的云服务(例如 KubeEdge 架构图中的 Edge Controller)交互,包括同步云端资源更新、报告边缘主机和设备状态变化到云端等功能。 43 - [Edged](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/edged.md): Edged 是运行在边缘节点的代理,用于管理容器化的应用程序。 44 - [EventBus](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/eventbus.md): EventBus 是一个与 MQTT 服务器(mosquitto)交互的 MQTT 客户端,为其他组件提供订阅和发布功能。 45 - ServiceBus: ServiceBus是一个运行在边缘的HTTP客户端,接受来自云上服务的请求,与运行在边缘端的HTTP服务器交互,提供了云上服务通过HTTP协议访问边缘端HTTP服务器的能力。 46 - [DeviceTwin](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/devicetwin.md): DeviceTwin 负责存储设备状态并将设备状态同步到云,它还为应用程序提供查询接口。 47 - [MetaManager](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/metamanager.md): MetaManager 是消息处理器,位于 Edged 和 Edgehub 之间,它负责向轻量级数据库(SQLite)存储/检索元数据。 48 49 50 ### 架构 51 52 ![架构图](docs/images/kubeedge_arch.png) 53 54 ## 兼容性 55 56 ### Kubernetes 版本兼容 57 58 | | Kubernetes 1.11 | Kubernetes 1.12 | Kubernetes 1.13 | Kubernetes 1.14 | Kubernetes 1.15 | Kubernetes 1.16 | Kubernetes 1.17 | 59 |---------------------|-----------------|-----------------|-----------------|-----------------|-----------------|-----------------|-----------------| 60 | KubeEdge 1.0 | ✓ | ✓ | ✓ | ✓ | ✓ | - | - | 61 | KubeEdge 1.1 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | 62 | KubeEdge HEAD | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | 63 64 说明: 65 * `✓` KubeEdge和Kubernetes的版本是完全兼容的 66 * `+` KubeEdge中有些特性或API对象可能在对应的Kubernetes版本中不存在 67 * `-` Kubernetes中有些特性或API对象可能在对应的KubeEdge版本中不可用 68 69 ### Golang 版本依赖 70 71 | | Golang 1.10 | Golang 1.11 | Golang 1.12 | Golang 1.13 | 72 |---------------------|----------------|-----------------|-----------------|-----------------| 73 | KubeEdge 1.0 | ✓ | ✓ | ✓ | ✗ | 74 | KubeEdge 1.1 | ✗ | ✗ | ✓ | ✗ | 75 | KubeEdge HEAD | ✗ | ✗ | ✓ | ✓ | 76 77 ## 使用 78 79 * [先决条件](./docs/setup/setup.md#prerequisites) 80 * [运行KubeEdge](./docs/setup/setup.md) 81 * [部署应用](./docs/setup/setup.md#deploy-application-on-cloud-side) 82 * [运行测试](./docs/setup/setup.md#run-tests) 83 84 ## 路线图 85 86 * [2019 Q4 Roadmap](./docs/getting-started/roadmap_zh.md#2019-q4-roadmap) 87 88 ## 社区例会 89 90 例会时间: 91 - 欧洲时间:**北京时间 周三 16:30-17:30** (每双周一次,从2020年2月19日开始)。 92 ([查询本地时间](https://www.thetimezoneconverter.com/?t=16%3A30&tz=GMT%2B8&)) 93 - 太平洋时间:**北京时间 周三 10:00-11:00** (每双周一次,从2020年2月26日开始)。 94 ([查询本地时间](https://www.thetimezoneconverter.com/?t=10%3A00&tz=GMT%2B8&)) 95 96 会议资源: 97 - [会议纪要和议程](https://docs.google.com/document/d/1Sr5QS_Z04uPfRbA7PrXr3aPwCRpx7EtsyHq7mp6CnHs/edit) 98 - [会议视频记录](https://www.youtube.com/playlist?list=PLQtlO1kVWGXkRGkjSrLGEPJODoPb8s5FM) 99 - [会议链接](https://zoom.us/j/4167237304) 100 - [会议日历](https://calendar.google.com/calendar/embed?src=8rjk8o516vfte21qibvlae3lj4%40group.calendar.google.com) | [订阅日历](https://calendar.google.com/calendar?cid=OHJqazhvNTE2dmZ0ZTIxcWlidmxhZTNsajRAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbQ) 101 102 ## 文档 103 104 通过该链接 [https://docs.kubeedge.io](https://docs.kubeedge.io) 可用找到有关 KubeEdge 的各个模块的详细信息。 105 一些说明 KubeEdge 平台的使用案例的示例应用程序和演示可以在[这个仓库](https://github.com/kubeedge/examples) 中找到。 106 107 ## 支持 108 109 <!-- 110 如果您需要支持,请从 [故障排除指南] 开始,然后按照我们概述的流程进行操作。 111 --> 112 如果您有任何疑问,请以下方式与我们联系: 113 114 - [mailing list](https://groups.google.com/forum/#!forum/kubeedge) 115 - [slack](https://join.slack.com/t/kubeedge/shared_invite/enQtNjc0MTg2NTg2MTk0LWJmOTBmOGRkZWNhMTVkNGU1ZjkwNDY4MTY4YTAwNDAyMjRkMjdlMjIzYmMxODY1NGZjYzc4MWM5YmIxZjU1ZDI) 116 - [twitter](https://twitter.com/kubeedge) 117 118 ## 贡献 119 120 如果您有兴趣成为一个贡献者,也想参与到KubeEdge的代码开发中, 121 请查看[CONTRIBUTING](CONTRIBUTING.md)获取更多关于如何提交Patch和贡献的流程。 122 123 ## 许可证 124 125 KubeEdge基于Apache 2.0许可证,查看[LICENSE](LICENSE)获取更多信息。