The author | | wen-jun gao source alibaba cloud native public number

Introduction to the

OpenYurt is the industry’s first non-invasive edge computing project based on native Kubernetes built by Ali Cloud open source. The goal is to extend Kubernetes to seamlessly support edge computing scenarios. It provides full Kubernetes API compatibility; Support for all Kubernetes workloads, services, carriers, CNI plug-ins and CSI plug-ins; Provide good node autonomy and cloud side collaboration capabilities. OpenYurt can be easily deployed in any Kubernetes cluster service, allowing the powerful cloud native capabilities to scale to the edge.

Edge local storage

OpenYurt v0.4.0 features: Edge local storage management: It is used to efficiently manage storage resources of edge nodes. Users can dynamically configure local resources of nodes in a cluster using ConfigMap. CSI storage plug-in can be seamlessly connected to use local storage in native PV/PVC mode. The project component consists of two main parts, A node-resource-Topo ConfigMap is defined in the kube-system namespace of the cluster. One is the Node-resource-manager Daemonset deployed under the Namespace of the Kube-system in the cluster. The Node-resource-manager on each Node produces and manages user-defined local resources by mounting node-resource-Topo ConfigMap. The structure is as follows:

Main advantages:

  • Easy to use: Node-resource-manager initializes and updates local resources in a cluster simply by defining ConfigMap.
  • Easy integration: Node-Resource-Manager can be integrated with the CSI plug-in to complete the lifecycle management of related local resources in the Kubernetes cluster.
  • Cloud platform agnostic: Node-Resource-Manager can easily be deployed in any cluster that is fully compliant with the Kubernetes API.

On the edge details of the local storage equipment management and use method, please refer to the configmap. Md: https://github.com/openyurtio/node-resource-manager/blob/main/docs/configmap.md.

IOT device management API

Alibaba and VMware jointly launched the API standard definition for IOT edge device management in OpenYurt, which is based on the Custom Resource Definitions (CRD) model of Kubernetes. Any edge platform only needs to implement the corresponding CRD Controller, that is, it can access the OpenYurt cluster through these apis to complete end-state device management. In the future, we will continue to explore IOT and other edge scenarios based on OpenYurt + EdgeX Foundry, build unified API multi-scene device access, enabling and fusion capabilities, and create cloud native IOT field standards.

For API definitions, please refer to Proposal: Managing edge devices by integraing Edgex Foundry into OpenYurt “: https://github.com/openyurtio/openyurt/pull/236

Kubernetes 1.18 is supported

OpenYurt officially supports Kubernetes 1.18, users can seamlessly convert Kubernetes 1.18 cluster to OpenYurt cluster, and use 1.18 API and new features.

More features

  • YurtHub supports CRD caching. Edge applications can use the extended capabilities of CRD, such as Calico and various custom operators, when the cloud is disconnected. For details, see Proposal: Enhance the caching ability of YurtHub “: https://github.com/openyurtio/openyurt/pull/244

  • UnitedDeployment supports Patch feature, UnitedDeployment Controller supports workload differential configuration in different Nodepool, such as images, resources, etc. See the Feature: UnitedDeployment support patch for the pool “: https://github.com/openyurtio/yurt-app-manager/pull/12

  • Supports cross-node deployment of Prometheus and Yurt-Tunnel-Server. For details, see Feature: The add DNS controller to sync cluster node DNS records: https://github.com/openyurtio/openyurt/pull/270

  • Yurtctl supports Kind cluster one-click conversion. For details, see Add Support for the Conversion Between Kind and OpenYurt Cluster: https://github.com/openyurtio/openyurt/pull/234

  • Added edge container network feature description to provide customized edge network plug-in features for edge weak network scenarios, such as MAC address retention and IP address retention, and provide corresponding code reference and usage instructions. For details, see Add Edge-POd-Network Doc: https://github.com/openyurtio/openyurt/pull/302

  • Formulate community governance rules, set up Member, Reviewer, Approver, Maintainer and other roles based on community feedback, clarify members’ responsibilities, access and promotion conditions, standardize community governance, and encourage community students to participate in the construction. Please refer to: https://github.com/openyurtio/community/blob/main/community-membership.md

Future plans

OpenYurt V0.4.0 has been released, providing new capabilities such as edge local storage management, edge IOT device management, and Kubernetes 1.18 support, as well as a series of extended capabilities and optimizations. Future OpenYurt community will be stored in local storage projects scheduling ability, sustained investment in the field of IOT equipment management and explore the evolution and experience in community governance and contributors to intensify construction, at the same time is also very welcome interested students to participate in the building, jointly create a stable and reliable cloud computing platform native edge. Pay more attention to community please: https://github.com/openyurtio/openyurt.

Related links:

  • OpenYurt v0.4.0 CHANGELOG:https://github.com/openyurtio/openyurt/blob/master/CHANGELOG.md#v040
  • OpenYurt use tutorial: https://github.com/openyurtio/openyurt/tree/master/docs/tutorial
  • OpenYurt official website: https://openyurt.io/

If you have any questions about OpenYurt, you are welcome to join the Nail exchange group using the Nail search group number (31993519).