青鱼292 2023-10-31 16:19 采纳率: 89.3%
浏览 0
已结题

请分析 kubeedge节点分布特性以及边缘节点分组管理

请分析 kubeedge节点分布特性以及边缘节点分组管理以及最佳实践

  • 写回答

1条回答

  • 谐云 谐云官方账号 2023-10-31 16:23
    关注

    节点分组:将不同地区的边缘节点按照节点组的形式组织
    边缘应用:将应用资源整体打包并满足不同节点组之间的差异化部署需求
    流量闭环:将服务流量限制在同一节点组中

    NodeGroup:

    1. 根据节点标签和节点名称选取节点形成节点组
    2. 为节点组中的每个节点增加belonging-to标签

    EdgeApplication:

    1. 包含应用资源模版和各地区差异化配置信息
    2. 为各个节点组创建差异化应用实例
    3. 根据服务模板创建服务,使其拓扑范围为节点组内

    提供统一的运维入口

    03

    最佳实践

    在开始之前:

    1. 开启AKE(Autonomic Kube-API Endpoint)特性
      AKE特性可以使边缘的kube-proxy组件正常运行,通过cloudcore-edgecore之间建立的云边信道list/watch所需资源。
      CloudCore配置:
      开启DynamicController组件,在cloudcore配置中:

    EdgeCore配置:
    开启MetaServer组件,在edgecore配置中(通常为/etc/kubeedge/config/edgecore.yaml):

    1. 配置Kube-Proxy

    将kubeconfig的server地址配置为http://127.0.0.1:10550(10550为MetaServer端口),通常通过修改kube-proxy的configmap进行。

    1. 配置完成后重启上述组件

    启用分组管理特性:

    1. 在k8s中创建节点分组管理CRD

    kubectl apply -f build/crds/apps
    该命令会安装NodeGroup和EdgeApplication两个CRD到集群中,如果使用keadm init来初始化kubeedge,则该CRD会自动安装;否则需要执行上述命令来手动安装。

    1. 部署controllers

    kubectl apply -f build/controllermanager
    该命令会在集群的云端节点上部署controllermanager,其中包含NodeGroupController和EdgeApplicationController,分别用于两个CRD的管理,同时也配套安装了相关RBAC规则。

    NodeGroup用法说明:

    NodeGroup会选取节点组成节点组,主要有两种选取方式:节点名和标签。被选取的节点会被额外加上apps.kubeedge.io/belonging-to的标签。

    1. 根据节点名选取节点

    可以通过指定需要被放入节点组的节点名。

    1. 根据标签选取节点

    多个标签之间是AND关系,节点需要同时具有这些标签才会被放入节点组中。当新接入的节点拥有满足条件的标签时,会被自动地放入相应节点组中。

    1. NodeGroup生命周期

    当删除节点组时,节点组中节点上的belonging-to标签会被自动删除,即节点组中的节点会自动退出节点组。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月9日
  • 已采纳回答 11月1日
  • 创建了问题 10月31日