github.com/jingruilea/kubeedge@v1.2.0-beta.0.0.20200410162146-4bb8902b3879/docs/setup/develop_kubeedge.md (about) 1 # Start Developing KubeEdge 2 3 In this section, we would cover the below topics 4 5 1. [Abstract](#Abstract) 6 2. [Pre-Requisite](#pre-requisite) 7 3. [Setup KubeEdge](#setup-kubeEdge) 8 4. [Configure KubeEdge](#configure-kubeEdge) 9 5. [Run KubeEdge](#run-kubeedge) 10 6. [KubeEdge Pre-Check](#kubeedge-pre-check) 11 12 ## Abstract 13 14 KubeEdge is composed of cloud and edge sides. It is built upon Kubernetes and provides core infrastructure support for networking, application deployment and metadata synchronization between cloud and edge. So if we want to setup KubeEdge, we need to setup Kubernetes cluster (exisiting cluster can be used), cloud side and edge side. 15 16 + on `cloud side`, we need to install Docker, Kubernetes cluster and cloudcore. 17 + on `edge side`, we need to install Docker, MQTT (We can also use internal MQTT broker) and edgecore. 18 19 ## Pre-Requisite 20 21 + Please refer [Kubernetes-compatibility](https://github.com/kubeedge/kubeedge#kubernetes-compatibility) to understand **Kubernetes compatibility** and determine what version of Docker, Kubernetes can be installed. 22 + Please refer Golang dependency below to understand what version of Golang can be installed. 23 24 ### Golang dependency 25 26 | | Golang 1.10 | Golang 1.11 | Golang 1.12 | Golang 1.13 | 27 |-------------------------|----------------|-----------------|-----------------|-----------------| 28 | KubeEdge 1.0 | ✓ | ✓ | ✓ | ✗ | 29 | KubeEdge 1.1 | ✗ | ✗ | ✓ | ✗ | 30 | KubeEdge 1.2 | ✗ | ✗ | ✓ | ✓ | 31 | KubeEdge HEAD (master) | ✗ | ✗ | ✓ | ✓ | 32 33 ### Cloud side (KubeEdge Master) 34 35 + [Install golang](https://golang.org/dl/) (If you want to compile KubeEdge) 36 37 + [Install Docker](https://docs.docker.com/install/), or other runtime, such as [containerd](https://github.com/containerd/containerd) 38 39 + [Install kubeadm/ kubectl](https://kubernetes.io/docs/setup/independent/install-kubeadm/) 40 41 + [Creating Kubernetes cluster with kubeadm](<https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/>) 42 43 If you are creating Kubernetes cluster for just testing KubeEdge, you can start with Flannel. 44 45 Check Kubernetes Master Status: It should be `ready`. 46 47 ```shell 48 kubectl get nodes 49 50 NAME STATUS ROLES AGE VERSION 51 kubeedge-master Ready master 4d3h v1.17.1 52 ``` 53 54 ### Edge side (KubeEdge Worker Node) 55 56 + [Install golang](https://golang.org/dl/) (If you want to compile KubeEdge) 57 58 + [Install Docker](https://docs.docker.com/install/), or other runtime, such as [containerd](https://github.com/containerd/containerd) 59 60 + [Install mosquitto](https://mosquitto.org/download/) : If you are just trying KubeEdge, this step can be skipped. 61 62 **Note:** Do not install **kubelet** and **kube-proxy** on edge side 63 64 ## Setup KubeEdge 65 66 Setup From [Source](kubeedge_install_source.md). 67 68 ## Configure KubeEdge 69 70 At this point, we assume that you have completed the installation of KubeEdge and want to configure either Cloudcore or Edgecore 71 72 Refer [KubeEdge Configuration](kubeedge_configure.md) 73 74 ## Run KubeEdge 75 76 Refer [KubeEdge Run](kubeedge_run.md) 77 78 ## KubeEdge Pre-Check 79 80 Refer [KubeEdge Pre-Check](kubeedge_precheck.md)