summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTING.md6
-rw-r--r--README.md11
-rw-r--r--README_zh.md22
-rw-r--r--docs/contributing/contribute.md119
-rw-r--r--docs/setup/local.md43
5 files changed, 56 insertions, 145 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 2cb439db5..6f12a33ef 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -27,13 +27,13 @@ Please make sure to read and observe our [Code of Conduct](https://github.com/ku
KubeEdge is a community project driven by its community which strives to promote a healthy, friendly and productive environment.
The goal of the community is to develop a cloud native edge computing platform built on top of Kubernetes to manage edge nodes and devices at scale and demonstrate resiliency, reliability in offline scenarios. To build a platform at such scale requires the support of a community with similar aspirations.
-- See [Community Membership](https://github.com/kubeedge/kubeedge/blob/master/docs/getting-started/community-membership.md) for a list of various community roles. With gradual contributions, one can move up in the chain.
+- See [Community Membership](docs/contributing/community.md) for a list of various community roles. With gradual contributions, one can move up in the chain.
# Getting started
- Fork the repository on GitHub
-- Read the [setup](https://github.com/kubeedge/kubeedge/blob/master/docs/setup/setup.md) for build instructions.
+- Read the [setup](docs/setup/keadm.md) for deployment.
# Your First Contribution
@@ -147,4 +147,4 @@ The location of the test code varies with type, as do the specifics of the envir
* Integration: These tests cover interactions of package components or interactions between KubeEdge components and Kubernetes control plane components like API server. An example would be testing whether the device controller is able to create config maps when device CRDs are created in the API server.
* End-to-end ("e2e"): These are broad tests of overall system behavior and coherence. The e2e tests are in [kubeedge e2e](https://github.com/kubeedge/kubeedge/tree/master/tests/e2e).
-Continuous integration will run these tests on PRs. \ No newline at end of file
+Continuous integration will run these tests on PRs.
diff --git a/README.md b/README.md
index 72558546c..ac463f6ef 100644
--- a/README.md
+++ b/README.md
@@ -64,17 +64,11 @@ Key:
## Guides
-### User Guide
-
See our documentation on [kubeedge.io](https://kubeedge.io).
**Quick Start** - Install KubeEdge with [keadm](./docs/setup/keadm.md).
-Try some examples of KubeEdge on [examples](https://github.com/kubeedge/examples).
-
-### Developer Guide
-
-Take a look at our [development guide], If you are interested in building and contributing KubeEdge.
+To learn deeply about KubeEdge, try some examples on [examples](https://github.com/kubeedge/examples).
## Roadmap
@@ -116,6 +110,3 @@ details on submitting patches and the contribution workflow.
## License
KubeEdge is under the Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
-
-
-[development guide]: ./docs/setup/develop_kubeedge.md
diff --git a/README_zh.md b/README_zh.md
index 7bd74d59f..a17dfe009 100644
--- a/README_zh.md
+++ b/README_zh.md
@@ -33,18 +33,18 @@ KubeEdge 是一个开源的系统,可将本机容器化应用编排和管理
KubeEdge 由以下组件构成:
### 云上部分
-- [CloudHub](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/cloud/cloudhub.md): CloudHub 是一个 Web Socket 服务端,负责监听云端的变化, 缓存并发送消息到 EdgeHub。
-- [EdgeController](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/cloud/controller.md): EdgeController 是一个扩展的 Kubernetes 控制器,管理边缘节点和 Pods 的元数据确保数据能够传递到指定的边缘节点。
-- [DeviceController](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/cloud/device_controller.md): DeviceController 是一个扩展的 Kubernetes 控制器,管理边缘设备,确保设备信息、设备状态的云边同步。
+- [CloudHub](https://github.com/kubeedge/kubeedge/blob/master/docs/components/cloud/cloudhub.md): CloudHub 是一个 Web Socket 服务端,负责监听云端的变化, 缓存并发送消息到 EdgeHub。
+- [EdgeController](https://github.com/kubeedge/kubeedge/blob/master/docs/components/cloud/controller.md): EdgeController 是一个扩展的 Kubernetes 控制器,管理边缘节点和 Pods 的元数据确保数据能够传递到指定的边缘节点。
+- [DeviceController](https://github.com/kubeedge/kubeedge/blob/master/docs/components/cloud/device_controller.md): DeviceController 是一个扩展的 Kubernetes 控制器,管理边缘设备,确保设备信息、设备状态的云边同步。
### 边缘部分
-- [EdgeHub](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/edgehub.md): EdgeHub 是一个 Web Socket 客户端,负责与边缘计算的云服务(例如 KubeEdge 架构图中的 Edge Controller)交互,包括同步云端资源更新、报告边缘主机和设备状态变化到云端等功能。
-- [Edged](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/edged.md): Edged 是运行在边缘节点的代理,用于管理容器化的应用程序。
-- [EventBus](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/eventbus.md): EventBus 是一个与 MQTT 服务器(mosquitto)交互的 MQTT 客户端,为其他组件提供订阅和发布功能。
+- [EdgeHub](https://github.com/kubeedge/kubeedge/blob/master/docs/components/edge/edgehub.md): EdgeHub 是一个 Web Socket 客户端,负责与边缘计算的云服务(例如 KubeEdge 架构图中的 Edge Controller)交互,包括同步云端资源更新、报告边缘主机和设备状态变化到云端等功能。
+- [Edged](https://github.com/kubeedge/kubeedge/blob/master/docs/components/edge/edged.md): Edged 是运行在边缘节点的代理,用于管理容器化的应用程序。
+- [EventBus](https://github.com/kubeedge/kubeedge/blob/master/docs/components/edge/eventbus.md): EventBus 是一个与 MQTT 服务器(mosquitto)交互的 MQTT 客户端,为其他组件提供订阅和发布功能。
- ServiceBus: ServiceBus是一个运行在边缘的HTTP客户端,接受来自云上服务的请求,与运行在边缘端的HTTP服务器交互,提供了云上服务通过HTTP协议访问边缘端HTTP服务器的能力。
-- [DeviceTwin](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/devicetwin.md): DeviceTwin 负责存储设备状态并将设备状态同步到云,它还为应用程序提供查询接口。
-- [MetaManager](https://github.com/kubeedge/kubeedge/blob/master/docs/modules/edge/metamanager.md): MetaManager 是消息处理器,位于 Edged 和 Edgehub 之间,它负责向轻量级数据库(SQLite)存储/检索元数据。
+- [DeviceTwin](https://github.com/kubeedge/kubeedge/blob/master/docs/components/edge/devicetwin.md): DeviceTwin 负责存储设备状态并将设备状态同步到云,它还为应用程序提供查询接口。
+- [MetaManager](https://github.com/kubeedge/kubeedge/blob/master/docs/components/edge/metamanager.md): MetaManager 是消息处理器,位于 Edged 和 Edgehub 之间,它负责向轻量级数据库(SQLite)存储/检索元数据。
### 架构
@@ -76,10 +76,8 @@ KubeEdge 由以下组件构成:
## 使用
-* [先决条件](./docs/setup/setup.md#prerequisites)
-* [运行KubeEdge](./docs/setup/setup.md)
-* [部署应用](./docs/setup/setup.md#deploy-application-on-cloud-side)
-* [运行测试](./docs/setup/setup.md#run-tests)
+* [先决条件](./docs/setup/kubeedge_precheck.md)
+* [快速使用](./docs/setup/keadm.md)
## 路线图
diff --git a/docs/contributing/contribute.md b/docs/contributing/contribute.md
index a09910f25..a24f6559f 100644
--- a/docs/contributing/contribute.md
+++ b/docs/contributing/contribute.md
@@ -25,121 +25,4 @@ The goal of the community is to develop a cloud native edge computing platform b
- Fork the repository on GitHub
- Download the repository
-
-## Your First Contribution
-
-We will help you to contribute in different areas like filing issues, developing features, fixing critical bugs and getting your work reviewed and merged.
-
-
-### Find something to work on
-
-We are always in need of help, be it fixing documentation, reporting bugs or writing some code.
-Look at places where you feel best coding practices aren't followed, code refactoring is needed or tests are missing.
-Here is how you get started.
-
-#### Find a good first topic
-
-There are [multiple repositories](https://github.com/kubeedge/) within the KubeEdge organization.
-Each repository has beginner-friendly issues that provide a good first issue.
-For example, [kubeedge/kubeedge](https://github.com/kubeedge/kubeedge) has [help wanted](https://github.com/kubeedge/kubeedge/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) and [good first issue](https://github.com/kubeedge/kubeedge/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22) labels for issues that should not need deep knowledge of the system.
-We can help new contributors who wish to work on such issues.
-
-Another good way to contribute is to find a documentation improvement, such as a missing/broken link. Please see [Contributing](#Contributor Workflow) below for the workflow.
-
-#### Work on an issue
-
-When you are willing to take on an issue, you can assign it to yourself. Just reply with `/assign` or `/assign @yourself` on an issue,
-then the robot will assign the issue to you and your name will present at `Assignees` list.
-
-## File an Issue
-
-While we encourage everyone to contribute code, it is also appreciated when someone reports an issue.
-
-Issues should be filed under the appropriate KubeEdge sub-repository.
-
-*Example:* a KubeEdge issue should be opened to [kubeedge/kubeedge](https://github.com/kubeedge/kubeedge/issues).
-
-Please follow the prompted submission guidelines while opening an issue:
-
-- Specific. Include as much details as possible: which version, what environment, what configuration, etc. If the bug is related to running the kubeedge server, please attach the kubeedge log (the starting log with kubeedge configuration is especially important).
-
-- Reproducible. Include the steps to reproduce the problem. We understand some issues might be hard to reproduce, please includes the steps that might lead to the problem.
-
-- Isolated. Please try to isolate and reproduce the bug with minimum dependencies. It would significantly slow down the speed to fix a bug if too many dependencies are involved in a bug report.
-
-- Unique. Do not duplicate existing bug report.
-
-- Scoped. One bug per report. Do not follow up with another bug inside one report.
-
-We might ask for further information about the issue. Any duplicated report will be closed.
-
-## Contributor Workflow
-
-Please do not ever hesitate to ask a question or send a pull request.
-
-This is a rough outline of what a contributor's workflow looks like:
-
-- Create a topic branch from where to base the contribution. This is usually master.
-- Make commits of logical units.
-- Make sure commit messages are in the proper format (see below).
-- Push changes in a topic branch to a personal fork of the repository.
-- Submit a pull request to [kubeedge/kubeedge](https://github.com/kubeedge/kubeedge).
-- The PR must receive an approval from two maintainers.
-
-### Creating Pull Requests
-
-Pull requests are often called simply "PR".
-KubeEdge generally follows the standard [github pull request](https://help.github.com/articles/about-pull-requests/) process.
-
-In addition to the above process, a bot will begin applying structured labels to your PR.
-
-The bot may also make some helpful suggestions for commands to run in your PR to facilitate review.
-These `/command` options can be entered in comments to trigger auto-labeling and notifications.
-Refer to its [command reference documentation](https://go.k8s.io/bot-commands).
-
-### Code Review
-
-To make it easier for your PR to receive reviews, consider the reviewers will need you to:
-
-* follow [good coding guidelines](https://github.com/golang/go/wiki/CodeReviewComments).
-* write [good commit messages](https://chris.beams.io/posts/git-commit/).
-* break large changes into a logical series of smaller patches which individually make easily understandable changes, and in aggregate solve a broader issue.
-* label PRs with appropriate reviewers: to do this read the messages the bot sends you to guide you through the PR process.
-
-### Format of the commit message
-
-We follow a rough convention for commit messages that is designed to answer two questions: what changed and why.
-The subject line should feature the what and the body of the commit should describe the why.
-
-```
-scripts: add test codes for metamanager
-
-this add some unit test codes to improve code coverage for metamanager
-
-Fixes #12
-```
-
-The format can be described more formally as follows:
-
-```
-<subsystem>: <what changed>
-<BLANK LINE>
-<why this change was made>
-<BLANK LINE>
-<footer>
-```
-
-The first line is the subject and should be no longer than 70 characters, the second line is always blank, and other lines should be wrapped at 80 characters. This allows the message to be easier to read on GitHub as well as in various git tools.
-
-Note: if your pull request isn't getting enough attention, you can use the reach out on Slack to get help finding reviewers.
-
-### Testing
-
-There are multiple types of tests.
-The location of the test code varies with type, as do the specifics of the environment needed to successfully run the test:
-
-* Unit: These confirm that a particular function behaves as intended. Unit test source code can be found adjacent to the corresponding source code within a given package. These are easily run locally by any developer.
-* Integration: These tests cover interactions of package components or interactions between KubeEdge components and Kubernetes control plane components like API server. An example would be testing whether the device controller is able to create config maps when device CRDs are created in the API server.
-* End-to-end ("e2e"): These are broad tests of overall system behavior and coherence. The e2e tests are in [kubeedge e2e](https://github.com/kubeedge/kubeedge/tree/master/tests/e2e).
-
-Continuous integration will run these tests on PRs.
+- Read [this](../../CONTRIBUTING.md) for more details
diff --git a/docs/setup/local.md b/docs/setup/local.md
index acc386efa..765fe6ddd 100644
--- a/docs/setup/local.md
+++ b/docs/setup/local.md
@@ -8,13 +8,23 @@ Deploying KubeEdge locally is used to test, never use this way in production env
## Setup Cloud Side (KubeEdge Master Node)
+### Create CDRs
+
+```shell
+kubectl apply -f https://raw.githubusercontent.com/kubeedge/kubeedge/master/build/crds/devices/devices_v1alpha1_device.yaml
+kubectl apply -f https://raw.githubusercontent.com/kubeedge/kubeedge/master/build/crds/devices/devices_v1alpha1_devicemodel.yaml
+kubectl apply -f https://raw.githubusercontent.com/kubeedge/kubeedge/master/build/crds/reliablesyncs/cluster_objectsync_v1alpha1.yaml
+kubectl apply -f https://raw.githubusercontent.com/kubeedge/kubeedge/master/build/crds/reliablesyncs/objectsync_v1alpha1.yaml
+```
+
+
### Prepare config file
```shell
# cloudcore --minconfig > cloudcore.yaml
```
-Update any fields if needed.
+please refer to [configuration for cloud](../configuration/kubeedge.md#configuration-cloud-side-kubeedge-master) for details.
### Run
@@ -22,18 +32,47 @@ Update any fields if needed.
# cloudcore --config cloudcore.yaml
```
+Run `cloudcore -h` to get help info and add options if needed.
+
+
## Setup Edge Side (KubeEdge Worker Node)
### Prepare config file
+- generate config file
+
```shell
# edgecore --minconfig > edgecore.yaml
```
-Update any fields if needed.
+- get token value at cloud side:
+
+```shell
+# kubectl get secret -nkubeedge tokensecret -o=jsonpath='{.data.tokendata}' | base64 -d
+```
+
+- update token value in edgecore config file:
+
+```shell
+# sed -i -e "s|token: .*|token: ${token}|g" edgecore.yaml
+```
+
+The `token` is what above step get.
+
+please refer to [configuration for edge](../configuration/kubeedge.md#configuration-edge-side-kubeedge-worker-node) for details.
### Run
+If you want to run cloudcore and edgecore at the same host, run following command first:
+
+```shell
+# export CHECK_EDGECORE_ENVIRONMENT="false"
+```
+
+Start edgecore:
+
```shell
# edgecore --config edgecore.yaml
```
+
+Run `edgecore -h` to get help info and add options if needed.