Feat/label driven yurtnode conversion (#2533) refactor(yurtadm/yurthub): extract reusable host lifecycle helpers for yurthub systemd deployment refactor(kubelet): unify traffic redirection helpers for yurthub conversion and revert Revert “refactor(kubelet): unify traffic redirection helpers for yurthub conversion and revert” This reverts commit 94cef5ae2775f4a0d58cfd9f3f768d5fb63e75c3. feat(node-servant): switch convert and revert to systemd-based yurthub lifecycle refactor(node-servant): unify conversion job rendering for controller-driven workflow feat(yurt-manager): add YurtNodeConversionController for label-driven yurthub lifecycle feat(yurt-manager): restart node workloads after conversion and protect is-edge-worker label fix(nodepool): enqueue old pool when nodepool label is removed docs: add comments for yurt node conversion flow refactor(node-servant): embed yurthub in image and remove download flags refactor(yurtnodeconversion): restart workloads from node-servant job fix(node-servant): crictl ps warning pollution fix(yurtnodeconversion): keep failed nodes cordoned and avoid mutating cached objects test(e2e): migrate yurthub conversion coverage to label-driven controller workflow refactor(node-servant): reduce complexity in conversion and runtime helpers refactor(node-servant): simplify convert options for edge-only flow refactor(yurt-node-conversion): ruduce func Reconcile complexity) feat(yurt-node-conversion): skip non-edge nodepool node convert refactor(yurt-node-conversion): optimize stale job cleanup and e2e health check
Feat/label driven yurtnode conversion (#2533)
refactor(yurtadm/yurthub): extract reusable host lifecycle helpers for yurthub systemd deployment
refactor(kubelet): unify traffic redirection helpers for yurthub conversion and revert
Revert “refactor(kubelet): unify traffic redirection helpers for yurthub conversion and revert”
This reverts commit 94cef5ae2775f4a0d58cfd9f3f768d5fb63e75c3.
feat(node-servant): switch convert and revert to systemd-based yurthub lifecycle
refactor(node-servant): unify conversion job rendering for controller-driven workflow
feat(yurt-manager): add YurtNodeConversionController for label-driven yurthub lifecycle
feat(yurt-manager): restart node workloads after conversion and protect is-edge-worker label
fix(nodepool): enqueue old pool when nodepool label is removed
docs: add comments for yurt node conversion flow
refactor(node-servant): embed yurthub in image and remove download flags
refactor(yurtnodeconversion): restart workloads from node-servant job
fix(node-servant): crictl ps warning pollution
fix(yurtnodeconversion): keep failed nodes cordoned and avoid mutating cached objects
test(e2e): migrate yurthub conversion coverage to label-driven controller workflow
refactor(node-servant): reduce complexity in conversion and runtime helpers
refactor(node-servant): simplify convert options for edge-only flow
refactor(yurt-node-conversion): ruduce func Reconcile complexity)
feat(yurt-node-conversion): skip non-edge nodepool node convert
refactor(yurt-node-conversion): optimize stale job cleanup and e2e health check
English | 简体中文
OpenYurt (官网: https://openyurt.io) 是基于 Upstream Kubernetes 构建的,现在是托管在云原生基金会(CNCF) 下的 孵化项目.
OpenYurt 是为满足典型边缘基础设施的各种 DevOps 需求而设计的。 通过 OpenYurt 来管理边缘应用程序,用户可以获得与中心式云计算应用管理一致的用户体验。 它解决了 Kubernetes 在云边一体化场景下的诸多挑战,如不可靠或断开的云边缘网络、边缘节点自治、边缘设备管理、跨地域业务部署等。 OpenYurt 保持了完整的 Kubernetes API 兼容性,无厂商绑定,更重要的是,它使用简单。
OpenYurt 遵循经典的云边一体化架构。 集群的 Kubernetes 管控面部署在云端(或者中心机房中),而由集群管理的边缘节点位于靠近数据源的边缘站点中。 每个边缘节点都具有适量的计算资源,从而可以运行边缘应用以及 OpenYurt 系统组件。集群中的边缘节点可以分布在多个物理区域,这些物理区域在 OpenYurt 中称为 Pools。 集群中的边缘节点可以分处于在多个物理区域中(region)。
上图展示了 OpenYurt 的核心架构。OpenYurt 的主要组件包括:
此外,OpenYurt 还包括用于集成和定制的辅助控制器。
OpenYurt 目前已经确认支持至 Kubernetes v1.30 版本。预计对 Kubernetes 的后续版本同样具备兼容性,但尚待验证。
OpenYurt 集群安装分成 2 个部分,分别为安装 OpenYurt 管控组件和节点接入。
OpenYurt 发展规划
如果您愿意为 OpenYurt 项目做贡献,请参阅我们的 CONTRIBUTING 文档以获取详细信息。我们还准备了开发人员指南来帮助代码贡献者。
如果您对本项目有任何疑问或想做出贡献,欢迎通过 github issue 或 pull request 来沟通相关问题,其他有效的沟通渠道如下所示:
12640034121
OpenYurt 遵循 Apache 2.0 许可证。有关详细信息请参见 LICENSE 文件。 OpenYurt 中的某些特定实现是基于 Kubernetes 的现有代码,这些实现都应归功于 Kubernetes 相关代码的原作者。
OpenYurt - Extending your native Kubernetes to edge(project under CNCF)
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802032778号
openyurtio/openyurt
English | 简体中文
OpenYurt (官网: https://openyurt.io) 是基于 Upstream Kubernetes 构建的,现在是托管在云原生基金会(CNCF) 下的 孵化项目.
OpenYurt 是为满足典型边缘基础设施的各种 DevOps 需求而设计的。 通过 OpenYurt 来管理边缘应用程序,用户可以获得与中心式云计算应用管理一致的用户体验。 它解决了 Kubernetes 在云边一体化场景下的诸多挑战,如不可靠或断开的云边缘网络、边缘节点自治、边缘设备管理、跨地域业务部署等。 OpenYurt 保持了完整的 Kubernetes API 兼容性,无厂商绑定,更重要的是,它使用简单。
架构
OpenYurt 遵循经典的云边一体化架构。 集群的 Kubernetes 管控面部署在云端(或者中心机房中),而由集群管理的边缘节点位于靠近数据源的边缘站点中。 每个边缘节点都具有适量的计算资源,从而可以运行边缘应用以及 OpenYurt 系统组件。集群中的边缘节点可以分布在多个物理区域,这些物理区域在 OpenYurt 中称为 Pools。 集群中的边缘节点可以分处于在多个物理区域中(region)。
上图展示了 OpenYurt 的核心架构。OpenYurt 的主要组件包括:
此外,OpenYurt 还包括用于集成和定制的辅助控制器。
开始使用
OpenYurt 目前已经确认支持至 Kubernetes v1.30 版本。预计对 Kubernetes 的后续版本同样具备兼容性,但尚待验证。
OpenYurt 集群安装分成 2 个部分,分别为安装 OpenYurt 管控组件和节点接入。
发展规划
OpenYurt 发展规划
社区
贡献
如果您愿意为 OpenYurt 项目做贡献,请参阅我们的 CONTRIBUTING 文档以获取详细信息。我们还准备了开发人员指南来帮助代码贡献者。
周会
联络方式
如果您对本项目有任何疑问或想做出贡献,欢迎通过 github issue 或 pull request 来沟通相关问题,其他有效的沟通渠道如下所示:
12640034121(Chinese)许可证
OpenYurt 遵循 Apache 2.0 许可证。有关详细信息请参见 LICENSE 文件。 OpenYurt 中的某些特定实现是基于 Kubernetes 的现有代码,这些实现都应归功于 Kubernetes 相关代码的原作者。