跳到主要内容

31 篇博文 含有标签「KubeEdge」

查看所有标签

· 阅读需 4 分钟
Kevin Wang
Fei Xu

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

KubeEdge v1.6: A major upgrade for maintainability

On 27th February, the KubeEdge community is proud to announce the availability of KubeEdge 1.6. This release includes a major upgrade for maintainability, which includes:

  • Support Autonomic Kube-API Endpoint for Applications On Edge Nodes [Alpha]

  • Custom Message Routing between Cloud and Edge for Applications [Alpha]

  • Simplified Application Autonomy Configuration When Node Is Off-line

  • New home for Device Mappers code

  • OPC-UA Device Mapper

  • 24+ bug fixes and enhancements.

Please refer to CHANGELOG v1.6 for a full list of features in this release.

备注

Release details - Release v1.6

备注

How to set up KubeEdge - KubeEdge Setup

Release Highlights

Support Autonomic Kube-API Endpoint for Applications On Edge Nodes [Alpha]

Autonomic Kube-API Endpoint is now available on edge nodes! Users are now able to run third-party plugins and applications that depends on Kubernetes APIs on edge nodes. List-watch connections are established between client and the local endpoint provided by EdgeCore. With reliable message delivery and data autonomy provided by KubeEdge, list-watch connections on edge nodes keep available even when nodes are located in high latency network or frequently get disconnected to the Cloud.

This is very useful in cases that users want to install customized versions of Kubelet, Kube-Proxy, CNI and CSI plugins with KubeEdge. Particularly, Kubernetes CRDs are also supported on edge nodes. (#2508, #2587)

Custom Message Routing between Cloud and Edge for Applications [Alpha]

Added support of routing management with Rule, RuleEndpoint API and a router module. Users are now able to use KubeEdge to deliver their custom messages between cloud and edge.

Note that it's designed for control data exchange between cloud and edge, not suitable for large data delivery. The data size of delivery at one time is limited to 12MB.

Refer to custom message deliver for more details. (#2413)

Simplified Application Autonomy Configuration When Node Is Off-line

If user wants any application to stay on edge nodes when disconnected to the cloud, simply add label app-offline.kubeedge.io=autonomy to its pods. KubeEdge will automatically override pod default toleration configuration for Taint node.kubernetes.io/unreachable to avoid Kubernetes evicting pods from unreachable nodes. (#2499)

New home for Device Mappers code

Device Mappers implementations now have a new home kubeedge/mappers-go.

OPC-UA Device Mapper

OPC-UA Device Mapper with Golang implementation is provided, based on new Device Mapper Standard. (mappers-go#4).

24+ bug fixes and enhancements

In addition to the above new features, KubeEdge v1.6 also includes the following enhancements:

  • support kubectl get --raw /api/v1/nodes/{node}/proxy/metrics (#2437)

  • support more metric path in cloud (#2482)

  • edgecore: add nfs localpath support (#2529)

  • add func that make subscribed topics persistence (#2457)

Future Outlook

With the release of v1.6, KubeEdge provides autonomic Kube-API endpoint for applications On Edge nodes, custom message routing between Cloud and Edge, a new repository for Device Mappers, a more friendly user experience, and a more friendly community contributor experience. Thanks to Huawei, China Unicom, Zhejiang University SEL Lab, ARM and other organizations for their contributions, as well as all community contributors for their support!

The community plans to further improve the user experience and the stability of KubeEdge in subsequent versions and create the best “open source” intelligent edge computing platform for everyone to freely use.

For more details regarding KubeEdge, please follow and join us here:

https://kubeedge.io

· 阅读需 3 分钟
Kevin Wang
Fei Xu

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

KubeEdge v1.5: A major upgrade for maintainability and edge devices management

On 16th November, the KubeEdge community is proud to announce the availability of KubeEdge 1.5. This release includes a major upgrade for maintainability and edge devices management, which includes:

  • Simplified Device Mapper reference architecture

  • Modbus Mapper Golang Implementation

  • Support Remote Exec to Pods on Edge From Cloud

  • Support Keadm Debug Command for Trouble Shooting On Edge Nodes

  • Kubernetes Dependencies Upgrade

  • 23+ bug fixes and enhancements.

Please refer to https://github.com/kubeedge/kubeedge/blob/master/CHANGELOG/CHANGELOG-1.5.md for a full list of features in this release

备注

Release details - Release v1.5

备注

How to set up KubeEdge - KubeEdge Setup

Release Highlights

Simplified Device Mapper reference architecture

New version of Mapper reference architecture:

  • Simplified Mapper code structure
  • Extracted common code into SDK
  • Added new building blocks: Configmap parser, Driver, Event process, Timer

Users are now able to develop mappers based on the new design standard.(#2147).

Modbus Mapper Golang Implementation

A new modbus mapper with Golang implementation is provided, based on new Device Mapper Standard. (#2282).

Support Remote Exec to Pods on Edge From Cloud

Users are now able to use K8s exec api or kubectl exec command to connect to pods on the edge node. (#2075).

Support Keadm Debug Command for Trouble Shooting On Edge Nodes

A set of keadm debug subcommands are added for Trouble Shooting On Edge Nodes. Users are now able to use keadm debug get and keadm debug collect to get/collect KubeEdge local data for trouble shooting, and use keadm debug check and keadm debug diagnose to check local environment configuration. (#1939)

Kubernetes Dependencies Upgrade

Upgrade the vendered kubernetes version to v1.19.3, users now can use the feature of new version on the cloud and on the edge side. (#2223)

Future Outlook

With the release of v1.5, KubeEdge provides more complete device mapper, support for remote exec from Cloud to Pods on Edge, a more friendly user experience, and a more friendly community contributor experience. Thanks to Huawei, China Unicom, Zhejiang University SEL Lab, ARM and other organizations for their contributions, as well as all community contributors for their support!

The community plans to further improve the user experience and the stability of KubeEdge in subsequent versions and create the best “open source” intelligent edge computing platform for everyone to freely use.

For more details regarding KubeEdge, please follow and join us here:

https://kubeedge.io

· 阅读需 3 分钟
Kevin Wang
Fei Xu

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

KubeEdge v1.4: A major upgrade for maintainability and edge devices management

On August 15th, the KubeEdge community is proud to announce the availability of KubeEdge 1.4. This release includes a major upgrade for maintainability and edge devices management, which includes:

  • Enhance Devices Management

  • Metrics-Server Support for metrics collection across cloud and edge

  • EdgeNode Certificate Rotation

  • Kubernetes Dependencies Upgrade

  • 34+ bug fixes and enhancements.

Please refer to https://github.com/kubeedge/kubeedge/blob/master/CHANGELOG/CHANGELOG-1.4.md for a full list of features in this release

备注

Release details - Release v1.4

备注

Release Highlights

Enhance Devices Management

Upgrade device API from v1alpha1 to v1alpha2, enhancement include:

  • A new field is added to explicitly provide customized protocol support
  • Introduced data section to allow users defining data to get and process on the edge
  • Moved propertyVistors from device model to Device instance API

Users are now able to customize the protocol of the edge device and also able to get and process the date in edge side.

Metrics-Server Support for metrics collection across cloud and edge

With KubeEdge v1.4 users are now able to deploy metrics-server to collect resource metrics from edge nodes. Follow the instructions here to deploy the metrics-server.

Ref: https://github.com/kubeedge/kubeedge/blob/master/docs/setup/keadm.md#support-metrics-server-in-cloud

EdgeNode Certificate Rotation

EdgeNodes are now able to automatically apply for new certificate when the certificate is about to expire and enforce TLS between CloudCore and EdgeCore.

Kubernetes Dependencies Upgrade

Upgrade the venderod kubernetes version to v1.18.6, users now can use the feature of new version on the cloud and on the edge side.

34+ bug fixes and enhancements

In addition to the above new features, KubeEdge v1.4 also includes the following enhancements:

  • Add tree to store copy of dependency's license

  • Add garbage collection of reliablesyncs when node unregisters

  • Fix too long time to get node ready when reconnect

  • Auto detect sandbox image

  • Run edgecore as system service

Future Outlook

With the release of v1.4, KubeEdge provides more complete edge application monitoring and management capabilities, a more stable and reliable cloud-side collaborative transmission mechanism, a more friendly user experience, and a more friendly community contributor experience. Thanks to Huawei, China Unicom, Zhejiang University SEL Lab, ARM and other organizations for their contributions, as well as all community contributors for their support!

The community plans to further improve the user experience and the stability of KubeEdge in subsequent versions and create the best “open source” intelligent edge computing platform for everyone to freely use.

For more details regarding KubeEdge, please follow and join us here:

https://kubeedge.io

· 阅读需 5 分钟
Yin Ding
Kevin Wang

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

KubeEdge v1.3: A major upgrade for maintainability

On May 15th, the KubeEdge community is proud to announce the availability of KubeEdge 1.3. This release includes a major upgrade for maintainability, which includes:

  • Collecting logs from pods at edge in cloud

  • Edge node and container monitoring

  • High availability of KubeEdge cloud components

  • Automated TLS bootstrapping for edge nodes

  • CRI-O and Kata Containers runtime support

  • 25+ bug fixes and enhancements.

Please refer to https://github.com/kubeedge/kubeedge/blob/master/CHANGELOG-1.3.md for a full list of features in this release

备注

Release details - Release v1.3

备注

Release Highlights

Collecting logs from pods at edge in cloud

In most edge computing scenarios, the edge node is in a private network, and the pod logs running on the edge node cannot be directly pulled from the cloud, resulting issues for maintenance and debugging.

KubeEdge v1.3 includes a built-in streaming data channel which enables cloud to easily obtain edge application container logs via the kubectl logs command, without having to build another VPN server to solve private network access problems.

In addition, the KubeEdge community plans to provide a kubectl exec command support for edge containers in subsequent versions, so that users can easily connect to the edge application container from the cloud for debugging purposes.

See more feature details: https://docs.kubeedge.io/en/latest/setup/kubeedge_install_source.html

Edge node and container monitoring

KubeEdge v1.3 provides a monitoring interface for edge nodes. Users can obtain edge node and its container information, and integrate it with third-party monitoring systems. This feature is enabled by default. Users have the option to disable this built-in monitoring module through the EnableMetrics item during configuration.

In the next version, KubeEdge will support the aggregation of edge node and application container monitoring information in the cloud.

See more feature details: https://github.com/kubeedge/kubeedge/pull/1573

High availability of KubeEdge cloud components

In previous releases, the availability of KubeEdge cloud components rely on the automatic recovery mechanism of Kubernetes Deployment. In some extreme cases, this recovery can take a long time to recover from failures.

KubeEdge v1.3 has a built-in high-availability for the KubeEdge cloud component, CloudCore. When the CloudCore instance fails, a standby CloudCore instance is automatically switched on to minimize the impact of cloud component failures.

In subsequent versions, the KubeEdge community will further optimize the high concurrency of cloud components to improve throughput in large-scale edge nodes scenarios.

Automated TLS bootstrapping for edge nodes

KubeEdge v1.3 introduced automated TLS bootstrapping for edge nodes, which simplifies the operation for users to configure cloud-edge secure channels and improves ease-of-use.

By default, KubeEdge generates a self-signed certificate for users, which is used for encrypted communication between cloud components and edge nodes. For scenarios that require an unified management of certificates, users can also use certificates issued by designated trust authorities.

For future releases, the KubeEdge community will support automatic renewal of the node's certificate after expiration.

See more feature details: https://github.com/kubeedge/kubeedge/blob/master/docs/setup/kubeedge_configure.md

More container runtime support

KubeEdge v1.3 adds support of CRI-O and Kata Containers as container runtime.

  • CRI-O, a CNCF incubation project, is a lightweight container, taking up to 30MB memory, and is in compliance with OCI standards.

  • Kata Containers is an open source container runtime based on lightweight virtual machines. It is designed to combine the security advantages of virtual machines (VMs) with the speed and the manageability of containers.

With v1.3, KubeEdge has official support for all mainstream container runtimes including Docker, containerd, CRI-O and Kata Containers.

See more feature details: https://github.com/kubeedge/kubeedge/blob/master/docs/setup/kubeedge_cri_configure.md

25+ bug fixes and enhancements

In addition to the above new features, KubeEdge v1.3 also includes the following enhancements:

  • Added the support for keadm to install KubeEdge on CentOS systems

  • EdgeMesh no longer depends on initContainer, and will take over traffic on the host during startup

  • Fixed the issue that some pods in “the terminating state” cannot be deleted

Future Outlook

With the release of v1.3, KubeEdge provides more complete edge application monitoring and management capabilities, a more stable and reliable cloud-side collaborative transmission mechanism, a more friendly user experience, and a more friendly community contributor experience. Thanks to Huawei, China Unicom, Zhejiang University SEL Lab, ARM and other organizations for their contributions, as well as all community contributors for their support!

The community plans to further improve the user experience and the stability of KubeEdge in subsequent versions and create the best “open source” intelligent edge computing platform for everyone to freely use. Please refer to the roadmap document for future release plans:

https://github.com/kubeedge/kubeedge/blob/master/docs/getting-started/roadmap.md

For more details regarding KubeEdge, please follow and join us here:

https://kubeedge.io

· 阅读需 4 分钟
Yin Ding

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

Today we announce the v1.2 release of KubeEdge.

On February 9th, the KubeEdge community is proud to announce the availability of KubeEdge 1.2. This release includes a major upgrade on reliability, which includes more reliable message delivery from cloud to edge, component Config API, edge nodes auto-registration, Kubernetes v1.17.1 support, and 30+ fixes.

Please refer to https://github.com/kubeedge/kubeedge/blob/release-1.2/CHANGELOG-1.2.md for a full list of features in this release, and the following for some highlights.

备注

Check out the release here: Release v1.2

备注

Instructions on how to setup KubeEdge can be found here

A major upgrade on Cloud-Edge transmission reliability

In an Edge Computing scenario, the instability of edge network could cause the reliability issues of edge’s communication to cloud, which could further cause data loss during communication. To improve Cloud-Edge transmission reliability, KubeEdge v1.2 includes following update:

  1. Added a verification mechanism for application layer message sending. There is a handshake mechanism built in to acknowledge (via ACK message) the successful state synchronization between cloud and edge. If the acknowledgement fails due to some reason, the application layer loop will trigger the retransmission mechanism to re-synchronize the state.
  2. Implemented persistent cloud side collaborative messages. During the cloud-edge status synchronization process, cloud will record in real time the latest message version number (ResourceVersion) of each edge node that is successfully synchronized, and persist it to Kubernetes in the form of CRD. This mechanism can ensure the order and the continuity of message after a cloud failure or an edge node offline restart, avoiding cloud/edge inconsistent status caused by resending old messages.
  3. Implemented a periodic check for cloud-edge data to ensure consistency. Based on the above two features, KubeEdge 1.2 includes a new module that synchronizes Controller to CloudCore. This module periodically checks the synchronization status of edge nodes, compares the information of resources in Kubernetes, and synchronizes states, and ensure the ultimate state consistency between cloud and edge.

See more details here: https://github.com/kubeedge/kubeedge/blob/master/docs/proposals/reliable-message-delivery.md

Component Config API

An important improvement that KubeEdge v1.2 offers is the ability to update configuration of all components such as CloudCore, EdgeCore, EdgeSite, etc. by using the Kubernetes style Component Config API, and API versions to support backward compatibility.

In previous KubeEdge versions, the configuration of KubeEdge components were scattered in separate files for each module, so the maintenance was cumbersome. In this release, the team has aggregated all configurations, so users need to only update a configuration file, and the path of the configuration file can be easily set by using "- -config".

This release also offers two options for configuration: default configuration and minimum configuration. Users can use either option to generate configuration files and deploy KubeEdge quickly.

See more details here: https://github.com/kubeedge/kubeedge/pull/1172

Edge Nodes Auto-registration

In previous versions, users needed to create a Node object on the cloud side first, and then start EdgeCore on the edge side when adding an edge node.

In release v1.2, KubeEdge provides the ability of automating edge node registration on the cloud side. This feature is enabled by default to improve ease of use. Users can turn it off by setting the "registerNode" configuration of EdgeCore to "false".

See more details here: https://github.com/kubeedge/kubeedge/pull/1401

Kubernetes v1.17.1 support

KubeEdge v1.2 supports Kubernetes v1.17.1, so users can use the most recent Kubernetes application management, storage management etc.

Here is the full compatibility table: https://github.com/kubeedge/kubeedge

Other Fixes

  • Fixed CPU usage issues when EdgeCore runs multiple PODs
  • Moved Beehive, Viaduct sub-projects under Staging directory for more friendly development experience
  • More checks to insure EdgeCore and Kubelet are not running on the same host

Summary

KubeEdge V1.2 offers a more stable and reliable cloud-edge transmission, enhanced edge application management and device management capabilities, a better user experience, and a more friendly community contributor experience.

A big “thank you” to all the community contributors and we hope to continue this momentum. Future releases of KubeEdge will further enhance KubeEdge user experience, better intelligent edge computing platform, and other advanced features to make KubeEdge a high performing, reliable, and intelligent solution to Connect Cloud to Edge.

For more details regarding KubeEdge, please follow and join us here: https://kubeedge.io .