【技术实现步骤摘要】
一种Kubernetes资源巡检方法、系统及设备
[0001]本专利技术涉及云原生体系下的容器编排领域,尤其涉及一种Kubernetes资源巡检方法、系统及设备。
技术介绍
[0002]当升级完一个基础软件,例如Kubelet,或者在选择的节点上创建完Macvlan对应虚拟设备后,往往需要在每个节点上进行验证检查,通常的做法是在对应的节点上存在常驻的管理Pod,定时针对不同的资源做巡检,上述检查,通常在很长一段时间内只需要执行一次,或者在需要时临时触发,在这种情况下,当需要巡检的资源较多时,常驻的管理Pod,会消耗较多的CPU、内存或网络等资源。
[0003]因此,如何减少云原生系统中资源巡检的次数及巡检消耗的集群资源,是目前亟待解决的问题。
技术实现思路
[0004]有鉴于此,本专利技术提供了一种Kubernetes资源巡检方法、系统及设备,以减少资源巡检次数及巡检消耗的集群资源。具体而言,本专利技术提供了如下技术方案:一方面,本专利技术提供了一种Kubernetes资源巡检方法,所述方法包括:步骤1、向Kubernetes API Server提交CRD创建请求,初始化巡检管理中相应的CRD,并部署巡检核心管理控制器;巡检核心管理控制器用于监听巡检任务CR;步骤2、根据CRD创建请求创建业务工作负载,并设置与CRD对应的IPPool控制器监听CR资源,以完成目标巡检资源的创建;步骤3、向Kubernetes API Server提交创建巡检任务CR的请求,当巡检任务CR创建完成后,则处于等 ...
【技术保护点】
【技术特征摘要】
1.一种Kubernetes资源巡检方法,其特征在于,所述方法包括:步骤1、向Kubernetes API Server提交CRD创建请求,初始化巡检管理中相应的CRD,并部署巡检核心管理控制器;巡检核心管理控制器用于监听巡检任务CR;步骤2、根据CRD创建请求创建业务工作负载,并设置与CRD对应的IPPool控制器监听CR资源,以完成目标巡检资源的创建;步骤3、向Kubernetes API Server提交创建巡检任务CR的请求,当巡检任务CR创建完成后,则处于等待调度状态;步骤4、巡检核心管理控制器通过与Kubernetes API Server建立长连接的方式获取巡检任务请求,执行对巡检任务CR的巡检。2.根据权利要求1所述的方法,其特征在于,所述步骤1中,所述巡检核心管理控制器通过InCluster模式与Kubernetes API Server建立长连接。3.根据权利要求1所述的方法,其特征在于,所述步骤2中,在接收到虚拟网络创建请求时,所述IPPool控制器将校验IP子网是否合法,并同时校验待创建的虚拟网络是否已存在,以保证对应的Node节点上创建对应的虚拟网络。4.根据权利要求1所述的方法,其特征在于,所述步骤2中,与CRD对应的IPPool控制器与宿主机共享网络协议栈。5.根据权利要求1所述的方法,其特征在于,所述步骤3中,所述巡检任务CR的信息包括:镜像定义、容器运行对应的命令、并发参数、超时时间、失败重试次数。6.根据权利要求1所述的方法,其特征在于,所述步骤4中,执行对巡检任务CR的巡检,具体包括:步骤401、获取巡检任务CR实例的信息;步骤402、判断巡检任务CR实例是否存在管理标签,如不存在,则补全管理标签,并更新巡检任务CR实例的标签,进入下一步;如存在,则直接进入下一步;步骤403、判断巡检任务CR实例是否已完成,若已完成,则汇总巡检结果,并释放资源,完成巡检;否则,进入下一步;步骤404、判断巡检任务CR实例的起始时间是否已设置,若无,则设置起始时间为当前时间,若已设置,则进入下一步;步骤405、判断巡检任务CR实例中Phase是否已设置,若无,则将Phase状态设置为运行中;若已设置,则进入下一步;步骤406、获取巡检任务CR实例所管理的全部巡检Pod实例;步骤407、获取巡检任务CR实例所管理的全部巡检Pod对应的Node与巡检Pod的映射表;步骤408、获取集群中所有的Node列表,作为候选Node列表;步骤409、基于巡检Pod实例的状态,对获取到的巡检任务CR实例所管理的全部巡检Pod实例进行过滤分类,并将对应的巡检Pod加入到对应类型的巡检Pod列表;所述巡检Pod列表的类型包括failed类、active类、succeeded类;步骤410、遍历候选Node列表中的所有Node,并基于Node与巡检Pod列表中对应的匹配项的匹配处理,以筛选出WaitingForRunPod Node列表,作为新的巡检Pod调度的Node列表,并同时获取需要被清理的巡检Pod实例;步骤411、判断巡检任务CR实例状态中的Phase,若Phase对应状态为PhaseFailed,则更
新更新重新调度延时,重新进入队列,并等待下一次处理;否则进入下一步;步骤412、判断巡检任务CR实例中Spec对应的Phase的状态,若Spec对应的Phase的状态为Paused,且巡检任务CR实例状态中的Phase状态为PhaseRunning或PhasePaushed,则更新重新调度延时,重新进入队列,并等待下一次处理;否则进入...
【专利技术属性】
技术研发人员:王伟华,刘井山,梅进,欧阳扬,
申请(专利权)人:广西梯度科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。