swx457056 / test-ci-bot

Apache License 2.0
1 stars 2 forks source link

KubeEdge Tests

TESTING

PRRRRRRRRR

Testing CI-BOT

KubeEdge

Go Report Card LICENSE Releases

KubeEdge is an open source system extending native containerized application orchestration and device management to hosts at Edge. It is built upon Kubernetes and provides core infrastructure support for network, app. deployment and metadata synchronization between cloud and edge. It also supports MQTT and allows developers to author customer logic and enable resource constraint devices communication at Edge.

Advantages

Edge Computing

With business logic running at Edge, volumes of data can be secured & processed locally. It reduces the bandwidth request between Edge and Cloud; increases the response speak; and protects customers' data privacy.

Simplify development

Developers can write regular http or mqtt based applications; containerize and run anywhere at Edge or Cloud.

Kubernetes-native support

With KubeEdge, users can orchestrate apps, manage devices and monitor app/device status against Edge nodes like a normal K8s cluster in the Cloud

Abundant applications

You can easily get and deploy complicated machine learning, image recognition, event processing and other high level applications to your Edge side.

Introduction

KubeEdge is composed of these components:

Architecture

Roadmap

Release 1.0

KubeEdge will provide the fundamental infrastructure and basic functionalities for IOT/Edge workload. This includes:

Release 2.0 and Future

Usage

Prerequisites

To use KubeEdge, make sure you have docker in your environment, if don't have, please reference the following steps to install docker.

Install docker

For ubuntu:

# Install Docker from Ubuntu's repositories:
apt-get update
apt-get install -y docker.io

# or install Docker CE 18.06 from Docker's repositories for Ubuntu or Debian:
apt-get update && apt-get install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"
apt-get update && apt-get install docker-ce=18.06.0~ce~3-0~ubuntu

For centOS:

# Install Docker from CentOS/RHEL repository:
yum install -y docker

# or install Docker CE 18.06 from Docker's CentOS repositories:
yum install yum-utils device-mapper-persistent-data lvm2
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
yum update && yum install docker-ce-18.06.1.ce

KubeEdge uses MQTT for communication between deviceTwin and devices. KubeEdge supports 3 MQTT modes: 1) internalMqttMode: internal mqtt broker is enabled 2) bothMqttMode: internal as well as external broker are enabled 3) externalMqttMode: only external broker is enabled

Use mode field in edge.yaml to select the desired mode

To use kubeedge in double mqtt or external mode, make sure you have mosquitto in your environment. Please reference the following steps to install mosquitto if it is not already present in your environment.

Install mosquitto

For ubuntu:

apt install mosquitto

For centOS:

yum install mosquitto

See mosquitto official website for more information.

Build

Clone kube-edge

git clone https://github.com/kubeedge/kubeedge.git $GOPATH/src/github.com/kubeedge/kubeedge
cd $GOPATH/src/github.com/kubeedge/kubeedge
make # or `make edge_core`

Integrate with HuaweiCloud Intelligent EdgeFabric (IEF)

Note: The HuaweiCloud IEF is only available in China now.

  1. Create an account in HuaweiCloud.
  2. Go to IEF and create an Edge node.
  3. Download the node configuration file (.tar.gz).
  4. Run bash -x hack/setup_for_IEF.sh /PATH/TO/<node_name>.tar.gz to modify the configuration files in conf/.

Run

# run mosquitto
mosquitto -d -p 1883

# run edge_core
# `conf/` should be in the same directory as the binary
./edge_core
# or
nohup ./edge_core > edge_core.log 2>&1 &

If you are using HuaweiCloud IEF, then the edge node you created should be running (check it in the IEF console page).

Community

Slack channel:

kubeedge.slack.com

Users can join this channel by clicking the invitation link.

Documentation

Please find link for detailed information about individual modules of KubeEdge.

Support

If you need support, start with the [troubleshooting guide], and work your way through the process that we've outlined.

That said, if you have questions, reach out to us, feel free to reach out to these folks: