Edge Container System


Based on Kubernetes and KubeEdge, EnOS Edge Container System provides containerized deployment and upgrade capabilities, and reduces the risk of making mistakes by creating product version packages.

The architecture of Edge container system is as follows:

../_images/container_function11.png

Application

  • Deploy / upgrade applications by version package
  • Manage edge nodes remotely (query pod logs)
  • Node works fine with network disruption

Cloud-Edge Synergy

In the network scenario, Edge container system can manage massive Edge nodes in batches.

Edge Autonomy

In disconnected or weak network scenarios, Edge nodes rely on the local persistent database to run services by themselves. Edge nodes can interact with the cloud after the network is restored.

Note

It is recommended to pre-deployed nodes before sending them to the site.

Features

The product features of Edge container system are as follows:

  • Create product version packages to ease deployment and reduce error rate
  • Provide batch deployment / upgrade functions for applications
  • Edge autonomous operation when there is network disruption

Key Concept

Pod

Pod is the smallest deployment units that can be created, scheduled, and managed. It is a collection of a set of containers, rather than a single application container. Containers in the same Pod share the same network name. View the Pod logs in the Pods container on ECS platform.

Edge Node

An Edge node represents an EnOS Edge computing device, such as the Edge IIoT Gateway and the Edge Extensive. It can be a physical or a virtual machine, which is used to run the edge applications and process data. Also, it can be in sync with the EnOS Cloud. Each Edge node can run multiple Pods.

Deployment

A Deployment template is mainly used to define the deployment resources of each component, including CPU and memory reources, application data storage, health check, etc..

ConfigMaps

A Config Map is an API object used to store non-confidential data in key-value pairs, including box.conf and lion.properties. It is used to separate the configuration information from programs. It makes the program universal and realize flexible adaptability through different configuration files. For Edge, there are usually 2 types of Config Maps: box.conf and lion.properties.

Version

In Edge container system, version service is used to manage application images, deployment templates, lion.properties (function configuration) and startup dependencies. Using product versions to deploy can ease the deploying process(no need to select components, images, etc.).

Usually, Edge version packages on Edge are created by EnOS Edge experts. Operators can just choose the existing version package directly.

The details of the version package are as follows:


Item Explanation
Version Press”New Version” to create the major version. Based on the major version, create the minor version.
Product Type Gateway or Extensive
Version Number According to the version naming rules, the format of major version number is X.Y.Z. The minor version number is created automatically by the system.
Description The description shows the version content and functions.
Configuration File Each version includes the function configuration of lion.properties.
Included Component Define the component to be deployed
Docker Image The image version related to the component
Application Template Deployment Template

Rolling Update

The rolling update is the publishing mode of the Edge container system. It is the process of alternatively upgrading the versions for the running Pods in a cluster one by one.