CN116225624B - 基于kubernets的裸机管理方法、系统和装置 - Google Patents

基于kubernets的裸机管理方法、系统和装置 Download PDF

Info

Publication number
CN116225624B
CN116225624B CN202310510864.7A CN202310510864A CN116225624B CN 116225624 B CN116225624 B CN 116225624B CN 202310510864 A CN202310510864 A CN 202310510864A CN 116225624 B CN116225624 B CN 116225624B
Authority
CN
China
Prior art keywords
management
cluster
bare
bare metal
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310510864.7A
Other languages
English (en)
Other versions
CN116225624A (zh
Inventor
花磊
陈志洋
赵安全
王亮
付少松
张振华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Boyun Technology Co ltd
Original Assignee
Jiangsu Boyun Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu Boyun Technology Co ltd filed Critical Jiangsu Boyun Technology Co ltd
Priority to CN202310510864.7A priority Critical patent/CN116225624B/zh
Publication of CN116225624A publication Critical patent/CN116225624A/zh
Application granted granted Critical
Publication of CN116225624B publication Critical patent/CN116225624B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及云计算领域,公开一种基于kubernets的裸机管理方法、系统和装置,方法包括:搭建k3s集群,部署控制器;配置裸机管理资源并提交到所述k3s集群,校验裸机信息,在通过校验的裸机上启动宿主机管理工具;使用控制器和宿主机管理工具初始化裸机环境、选择裸机管理资源中配置的一个主节点进行k8s集群的主节点初始化操作、将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中;在更改裸机管理资源时触发控制器,和宿主机管理工具协作将更改作用到裸机和k8s集群上,实现裸机管理;系统包括实现方法中各步骤的模块,装置包括存储器、处理器和计算机程序。本发明可以降低操作难度、出错概率,支持对不同操作系统的裸机进行管理。

Description

基于kubernets的裸机管理方法、系统和装置
技术领域
本发明涉及云计算领域,尤其是指一种基于kubernets的裸机管理方法、系统和装置。
背景技术
Kubernetes,简称k8s,是Google开源的一个容器集群管理系统,是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。Kubernetes集群是由多个k8s master节点和k8s worker节点组成的集群。CRD(CustomResource Definition)是用户自定义资源,是指各种可以运行在Kubernetes上面的软件。cluster api是一个开源的Kubernetes子项目,提供了一组CRD来管理Kubernetes集群的生命周期。
在传统的Kubernetes集群中,集群的创建和管理是一个复杂的过程,通常需要手动创建和配置各种资源,包括VM、网络、存储、安全等等;而手动创建和配置的过程很容易出错,并且很难重复。cluster api的目标是通过提供一组CRD来简化这个过程,从而使集群的创建、升级和删除更加可靠和可重复。不同的供应商通过实现cluster api提供的接口与cluster api集成,来完成对不同的基础设施的管理。诸如AWS、Azure和GCP等云提供商都已经完成了对cluster api的适配。cluster api还提供了一些工具和控制器,帮助用户轻松地管理Kubernetes集群。其中最重要的是cluster api控制器,它负责管理集群的生命周期。当用户创建一个新的集群时,cluster api控制器会自动创建和配置所有必需的资源,包括VM、网络、存储、安全等等。当用户升级或删除集群时,cluster api控制器也会自动执行相应的操作。
但是,cluster api在管理Kubernetes集群的生命周期时,也存在一些问题,包括:
(1)cluster api是一个非常复杂的工具,涉及到多个组件、控制器和CR资源。如果用户不熟悉这些组件或控制器的工作原理,就很容易出现使用错误,对于用户资源的配置也无从下手。
(2)cluster api依赖于其他一些工具和控制器,例如实现集群或机器(例如虚拟机、网络等)所需的基础设施、计算资源的实际提供者cluster api InfrastructureProvider,与cluster-api的其他组件共同工作完成集群生命周期的管理。如果这些依赖项出现问题,出错概率就会大大增加,影响到cluster api对整个集群的创建和管理。
(3)cluster api虽然支持多个云提供商和本地集群的解决方案,但是也存在一些限制。例如,某些云提供商可能不支持cluster api的某些功能,或者某些本地集群解决方案可能不支持cluster api。
发明内容
为此,本发明所要解决的技术问题在于克服现有技术中的不足,提供一种基于kubernets的裸机管理方法、系统和装置,可以降低操作难度、出错概率,支持对不同操作系统的裸机进行管理。
为解决上述技术问题,本发明提供了一种基于kubernets的裸机管理方法,包括:
使用启动管理集群的工具搭建k3s集群,部署包括控制器的管理集群;
配置裸机管理资源并提交到所述k3s集群,所述裸机管理资源包括裸机信息;使用控制器监听配置的每个裸机管理资源并对裸机信息进行校验;
在通过校验的裸机信息对应的裸机上启动宿主机管理工具,使用控制器对所有裸机下发环境初始化指令,裸机上的宿主机管理工具收到指令后初始化裸机环境;
使用控制器下发k8s集群的主节点初始化指令,选择裸机管理资源中配置的一个主节点并使用宿主机管理工具对该主节点进行k8s集群的主节点初始化操作,将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中;
在更改裸机管理资源时触发控制器,控制器给宿主机管理工具下发指令将更改裸机信息的操作作用到对应的裸机和k8s集群上,实现对裸机的管理。
在本发明的一个实施例中,所述启动管理集群的工具为bkeadm,所述bkeadm的功能包括搭建镜像仓库、搭建chart仓库和搭建NTP服务器。
在本发明的一个实施例中,所述管理集群包括cluster api组件和配合clusterapi组件完成裸机集群搭建管理的控制器。
在本发明的一个实施例中,所述对裸机信息进行校验时,校验的内容包括:
配置的所述裸机管理资源中是否包括至少一个主节点的裸机信息,主节点的数量是否为奇数,所述裸机信息是否包含裸机的登录用户名、密码、远程连接工具端口和节点角色,用户是否具有sudo权限。
在本发明的一个实施例中,所述管理集群还包括Kubernetes的组件kube-apiserver,所述宿主机管理工具监听管理集群kube-apiserver发出的指令,并在指定的宿主机节点执行相应的指令。
在本发明的一个实施例中,所述在通过校验的裸机信息对应的裸机上启动宿主机管理工具,包括:
使用远程连接工具推送通过校验的裸机信息,在通过校验的裸机信息对应的裸机可以连接时,使用SFTP文件传输协议将宿主机管理工具推送到裸机上并在裸机上启动。
在本发明的一个实施例中,所述选择裸机管理资源中配置的一个主节点,具体为使用随机选择的方式在裸机管理资源中所有具有主节点角色的裸机中选择一个主节点。
在本发明的一个实施例中,所述将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中,具体为:
依次使用控制器对裸机管理资源中配置的其他主节点下发k8s集群的主节点加入指令,使用宿主机管理工具对这些主节点进行k8s集群的主节点加入操作;
依次使用控制器对裸机管理资源中配置的其他工作节点下发k8s集群的工作节点加入指令,使用宿主机管理工具对这些工作节点进行k8s集群的工作节点加入操作。
本发明还提供了一种基于kubernets的裸机管理系统,包括集群搭建模块、管理集群模块、裸机环境初始化模块、k8s集群构建模块和触发控制器模块,
所述集群搭建模块用于使用启动管理集群的工具搭建k3s集群,配置裸机管理资源并提交到所述k3s集群,所述裸机管理资源包括裸机信息;
所述管理集群模块用于部署包括控制器的管理集群,使用控制器监听配置的每个裸机管理资源并对裸机信息进行校验;
所述裸机环境初始化模块用于在通过校验的裸机信息对应的裸机上启动宿主机管理工具,使用控制器对所有裸机下发环境初始化指令,裸机上的宿主机管理工具收到指令后初始化裸机环境;
所述k8s集群构建模块用于使用控制器下发k8s集群的主节点初始化指令,选择裸机管理资源中配置的一个主节点并使用宿主机管理工具对该主节点进行k8s集群的主节点初始化操作,将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中;
所述触发控制器模块用于在更改裸机管理资源时触发控制器,控制器给宿主机管理工具下发指令将更改裸机信息的操作作用到对应的裸机和k8s集群上,实现对裸机的管理。
本发明还提供了一种基于kubernets的裸机管理装置,包括存储器、处理器和存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述基于kubernets的裸机管理方法。
本发明的上述技术方案相比现有技术具有以下优点:
本发明通过在Kubernetes集群下建立裸机管理资源这一用户自定义资源,结合控制器和宿主机管理工具实现对裸机的管理,涉及工具少、大幅降低了操作难度;裸机管理过程不依赖于其他外部工具,有效降低出错概率;适用范围广,支持对不同操作系统的裸机进行管理。
附图说明
为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明,其中:
图1是本发明方法的流程图。
图2是本发明方法的具体步骤图。
图3是本发明实施例中多端交互的场景示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
实施例一
参照图1和图2所示,本发明公开了一种基于kubernets的裸机管理方法,包括以下步骤:
步骤1:使用启动管理集群的工具搭建k3s集群,部署包括控制器的管理集群。k3s是一款轻量级的Kubernetes,易于安装,一半的内存全部在一个不到100 MB的二进制文件中。
步骤1-1:使用bkeadm搭建k3s集群,所述bkeadm的功能包括搭建镜像仓库、搭建chart仓库和搭建NTP服务器。本实施例中的bkeadm为在现有bkeadm工具的基础上开发的用于快速启动k8s集群的二进制工具,是一个建镜像仓库(镜像仓库是镜像的集合,用于存储、管理容器镜像)、搭建chart仓库(chart仓库是一个存放了index.yaml文件或一些的chart的HTTP服务器)和搭建NTP(Network Time Protocol,是用来使计算机时间同步化的一种协议)服务器等多功能合一的轻量型二进制工具。
步骤1-2:管理集群包括cluster api组件和配合cluster api组件完成裸机集群搭建管理的控制器,本实施例中配合cluster api组件完成裸机集群搭建管理的扩展软件为cluster-api-provider-bke。部署cluster api组件和cluster-api-provider-bke,并将部署好的cluster api组件和cluster-api-provider-bke作为管理集群。cluster-api-provider-bke是cluster-api- infrastructure-provider的实现,本质是一个Operator。Operator是Kubernetes的扩展软件,利用定制资源管理应用及其组件。Operator遵循Kubernetes的理念,特别是在控制器方面。
步骤2:配置裸机管理资源并提交到所述k3s集群,所述裸机管理资源包括裸机信息;裸机信息包括裸机登录信息等字段。使用cluster-api-provider-bke控制器监听配置的每个裸机管理资源并对裸机信息进行校验。本实施例中的裸机管理资源为用户自定义资源CRD,Kubernetes拥有一些内置的资源,而CRD则提供了一种方式使用户可以自定义新的资源,使用CRD可以在不修改k8s源代码的基础上方便地扩展k8s的功能。
配置的所述裸机管理资源中包括至少一个主节点的裸机信息,主节点的数量为奇数,工作节点数量不限制;所填写的所有的裸机信息必须包含裸机的登录用户名、密码、远程连接工具端口和节点角色(主节点或工作节点),并且所填写用户需具有sudo权限。因此对裸机信息进行校验时,校验的内容包括:
配置的所述裸机管理资源中是否包括至少一个主节点的裸机信息,主节点的数量是否为奇数,所述裸机信息是否包含裸机的登录用户名、密码、远程连接工具端口和节点角色,用户是否具有sudo权限。
步骤3:在通过校验的裸机信息对应的裸机上启动宿主机管理工具,具体为:
使用远程连接工具(SSH)推送通过校验的裸机信息,在通过校验的裸机信息对应的裸机可以连接时,使用SFTP文件传输协议将宿主机管理工具bkeagent推送到裸机上并在裸机上启动。管理集群还包括Kubernetes的组件kube-apiserver,将本实施例中使用的宿主机管理工具命名为bkeagent,宿主机管理工具bkeagent监听管理集群kube-apiserver发出的指令,并在指定的宿主机节点执行相应的指令。kube-apiserver是Kubernetes中的一个组件,负责处理REST请求并将它们转发到其他的Kubernetes组件。kube-apiserver是Kubernetes的关键组件之一,它允许用户和其他组件与Kubernetes集群进行交互。kube-apiserver还提供了身份验证、授权和准入控制等功能,以确保集群的安全性和稳定性。
步骤4:使用cluster-api-provider-bke控制器对所有裸机下发环境初始化指令,裸机上的宿主机管理工具收到指令后初始化裸机环境。
步骤5:使用cluster-api-provider-bke控制器下发k8s集群的主节点(master节点)初始化指令,选择裸机管理资源中配置的一个主节点并使用宿主机管理工具bkeagent对该主节点进行k8s集群的主节点初始化操作。
步骤5-1:使用cluster-api-provider-bke控制器下发k8s集群的主节点(master节点)初始化指令。
步骤5-2:使用随机选择的方式在裸机管理资源中所有具有主节点角色的裸机中选择一个主节点,使用宿主机管理工具bkeagent对该主节点进行k8s集群的主节点初始化操作。
步骤6:将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中。具体为:
步骤6-1:依次使用cluster-api-provider-bke控制器对裸机管理资源中的其他主节点下发k8s集群的主节点加入指令,使用宿主机管理工具bkeagent对这些主节点进行k8s集群的主节点加入操作;
步骤6-2:依次使用cluster-api-provider-bke控制器对裸机管理资源中的其他工作节点(worker节点)下发k8s集群的工作节点加入指令,使用宿主机管理工具bkeagent对这些工作节点进行k8s集群的工作节点加入操作。
步骤7:在增删改等更改裸机管理资源时触发cluster-api-provider-bke控制器,cluster-api-provider-bke控制器给宿主机管理工具bkeagent下发指令将更改裸机信息的操作作用到对应的裸机和k8s集群上,实现对裸机的管理。
实施例二
在裸机的管理过程中,如果涉及到多端交互场景、即存在多个宿主机管理工具bkeagent和包括一个api-server的管理集群的场景,api-server是集群的核心组件、负责集群各功能模块之间的通信。此时,各端所执行的操作及作用如图3所示,具体为:
首先使用bkeadm搭建管理集群,该集群为轻量的k3s集群,在集群运行后bkeadm会自动部署cluster-api组件和cluster-api-provider-bke。然后创建bkeCluster CR并提交到集群。bkeCluster CR是一个CR,通过增删改实现裸机管理。CR(Custom Resource,用户资源)是Kubernetes中的自定义资源对象,指各种运行在Kubernetes上面的实体资源。CR可以用来扩展Kubernetes,以支持用户自定义的资源类型。此处创建的是CR,与实施例一步骤2中的配置裸机管理资源时创建的裸机管理资源为用户自定义资源CRD不同。CRD是用于定义CR的对象,它描述了CR的结构和行为,包括CR的字段、默认值、验证规则、子资源、API版本等。通过定义CRD,用户可以在Kubernetes中创建自定义资源类型,并使用Kubernetes对其进行管理。因此,本实施例中创建CR是在实施例一的基础上进行的进一步具体化。
用户通过将bkecluster CR资源提交到管理集群,由cluster-api-provider-bke下发bkeagent到集群中定义的所有裸机。随后bkeagent监听管理集群的api-server来接收和执行cluster-api-provider-bke创建的指令。
cluster-api-provider-bke控制器在监听到bkeCluster CR的创建后,首先对其进行校验,随后使用SSH对bkeCluster CR资源中定义的裸机进行连接,确保可以连接后使用SFTP文件传输协议推送bkeagent到所有裸机并在裸机上启动使其监听k3s管理集群的api-server。
当上述步骤完成后,cluster-api-provider-bke控制器将对所有裸机上的bkeagent下发环境初始化指令,待环境初始化完成后从bkeCluster CR中定义为master 角色的裸机随机挑选其一,并对其agent下发k8s master节点初始化指令。bkeagent收到指令后按照指令完成相应的初始化动作。紧接着依次对bkeCluster CR中定义的其他具有master角色的裸机下发k8s master 节点加入指令。随后在对bkeCluster CR中定义的所有具有worker角色的裸机下发k8s worker节点加入指令。
此时一个完整的k8s集群已经搭建结束,后续对于裸机的管理也都通过对bkeCluster CR进行修改来完成。例如,为该k8s集群添加一个裸机作为worker时,只需要在bkeCluster CR新增一条裸机信息并设置其角色为worker,随后cluster-api-provider-bke控制器会对其下发bkeagent并初始化环境,最后下发k8s worker节点加入指令,即可完成对裸机的管理。
实施例三
本发明公开了一种基于kubernets的裸机管理系统,包括集群搭建模块、管理集群模块、裸机环境初始化模块、k8s集群构建模块和触发控制器模块。
集群搭建模块用于使用启动管理集群的工具搭建k3s集群,配置裸机管理资源并提交到所述k3s集群,所述裸机管理资源包括裸机信息;
管理集群模块用于部署包括控制器的管理集群,使用控制器监听配置的每个裸机管理资源并对裸机信息进行校验;
裸机环境初始化模块用于在通过校验的裸机信息对应的裸机上启动宿主机管理工具,使用控制器对所有裸机下发环境初始化指令,裸机上的宿主机管理工具收到指令后初始化裸机环境;
k8s集群构建模块用于使用控制器下发k8s集群的主节点初始化指令,选择裸机管理资源中配置的一个主节点并使用宿主机管理工具对该主节点进行k8s集群的主节点初始化操作,将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中;
触发控制器模块用于在更改裸机管理资源时触发控制器,控制器给宿主机管理工具下发指令将更改裸机信息的操作作用到对应的裸机和k8s集群上,实现对裸机的管理。
实施例四
本发明公开了一种基于kubernets的裸机管理装置,包括存储器、处理器和存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现实施例一中的基于kubernets的裸机管理方法。
现有技术中,创建和管理 Kubernetes 集群需要进行大量的编写脚本等手动工作,存在高复杂性和容易出现错误的缺点。本发明与现有技术相比的优点有:
1、本发明通过在Kubernetes集群下建立裸机管理资源这一用户自定义资源,结合控制器和宿主机管理工具实现对裸机的管理,涉及工具少、大幅降低了操作难度;并且裸机管理过程不依赖于其他外部工具,有效降低出错概率。
2、裸机的管理管理配置流程简便,只需要在更改裸机管理资源时触发控制器,并通过控制器给宿主机管理工具下发指令将更改裸机信息的操作作用到对应的裸机和k8s集群上,即可实现对裸机的管理,使用者无需配置多个用户自定义资源,管理方便高效。
3、本发明的适用范围广,支持对不同操作系统的裸机进行管理。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

Claims (10)

1.一种基于kubernets的裸机管理方法,其特征在于,包括:
使用启动管理集群的工具搭建k3s集群,部署包括控制器的管理集群;
配置裸机管理资源并提交到所述k3s集群,所述裸机管理资源包括裸机信息,使用控制器监听配置的每个裸机管理资源并对裸机信息进行校验;
在通过校验的裸机信息对应的裸机上启动宿主机管理工具,使用控制器对所有裸机下发环境初始化指令,裸机上的宿主机管理工具收到指令后初始化裸机环境;
使用控制器下发k8s集群的主节点初始化指令,选择裸机管理资源中配置的一个主节点并使用宿主机管理工具对该主节点进行k8s集群的主节点初始化操作,将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中;
在更改裸机管理资源时触发控制器,控制器给宿主机管理工具下发指令将更改裸机信息的操作作用到对应的裸机和k8s集群上,实现对裸机的管理。
2.根据权利要求1所述的基于kubernets的裸机管理方法,其特征在于:所述启动管理集群的工具为bkeadm,所述bkeadm的功能包括搭建镜像仓库、搭建chart仓库和搭建NTP服务器。
3.根据权利要求1所述的基于kubernets的裸机管理方法,其特征在于:所述管理集群包括cluster api组件和配合cluster api组件完成裸机集群搭建管理的控制器。
4.根据权利要求1所述的基于kubernets的裸机管理方法,其特征在于:所述对裸机信息进行校验时,校验的内容包括:
配置的所述裸机管理资源中是否包括至少一个主节点的裸机信息,主节点的数量是否为奇数,所述裸机信息是否包含裸机的登录用户名、密码、远程连接工具端口和节点角色,用户是否具有sudo权限。
5.根据权利要求1所述的基于kubernets的裸机管理方法,其特征在于:所述管理集群还包括Kubernetes的组件kube-apiserver,所述宿主机管理工具监听管理集群kube-apiserver发出的指令,并在指定的宿主机节点执行相应的指令。
6.根据权利要求1所述的基于kubernets的裸机管理方法,其特征在于:所述在通过校验的裸机信息对应的裸机上启动宿主机管理工具,包括:
使用远程连接工具推送通过校验的裸机信息,在通过校验的裸机信息对应的裸机可以连接时,使用SFTP文件传输协议将宿主机管理工具推送到裸机上并在裸机上启动。
7.根据权利要求1所述的基于kubernets的裸机管理方法,其特征在于:所述选择裸机管理资源中配置的一个主节点,具体为使用随机选择的方式在裸机管理资源中所有具有主节点角色的裸机中选择一个主节点。
8.根据权利要求1-7任一项所述的基于kubernets的裸机管理方法,其特征在于:所述将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中,具体为:
依次使用控制器对裸机管理资源中配置的其他主节点下发k8s集群的主节点加入指令,使用宿主机管理工具对这些主节点进行k8s集群的主节点加入操作;
依次使用控制器对裸机管理资源中配置的其他工作节点下发k8s集群的工作节点加入指令,使用宿主机管理工具对这些工作节点进行k8s集群的工作节点加入操作。
9.一种基于kubernets的裸机管理系统,其特征在于:包括集群搭建模块、管理集群模块、裸机环境初始化模块、k8s集群构建模块和触发控制器模块,
所述集群搭建模块用于使用启动管理集群的工具搭建k3s集群,配置裸机管理资源并提交到所述k3s集群,所述裸机管理资源包括裸机信息;
所述管理集群模块用于部署包括控制器的管理集群,使用控制器监听配置的每个裸机管理资源并对裸机信息进行校验;
所述裸机环境初始化模块用于在通过校验的裸机信息对应的裸机上启动宿主机管理工具,使用控制器对所有裸机下发环境初始化指令,裸机上的宿主机管理工具收到指令后初始化裸机环境;
所述k8s集群构建模块用于使用控制器下发k8s集群的主节点初始化指令,选择裸机管理资源中配置的一个主节点并使用宿主机管理工具对该主节点进行k8s集群的主节点初始化操作,将裸机管理资源中配置的其余主节点和工作节点加入到k8s集群中;
所述触发控制器模块用于在更改裸机管理资源时触发控制器,控制器给宿主机管理工具下发指令将更改裸机信息的操作作用到对应的裸机和k8s集群上,实现对裸机的管理。
10.一种基于kubernets的裸机管理装置,其特征在于:包括存储器、处理器和存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-8任一项所述的基于kubernets的裸机管理方法。
CN202310510864.7A 2023-05-09 2023-05-09 基于kubernets的裸机管理方法、系统和装置 Active CN116225624B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310510864.7A CN116225624B (zh) 2023-05-09 2023-05-09 基于kubernets的裸机管理方法、系统和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310510864.7A CN116225624B (zh) 2023-05-09 2023-05-09 基于kubernets的裸机管理方法、系统和装置

Publications (2)

Publication Number Publication Date
CN116225624A CN116225624A (zh) 2023-06-06
CN116225624B true CN116225624B (zh) 2023-06-30

Family

ID=86571639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310510864.7A Active CN116225624B (zh) 2023-05-09 2023-05-09 基于kubernets的裸机管理方法、系统和装置

Country Status (1)

Country Link
CN (1) CN116225624B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109245917A (zh) * 2018-08-20 2019-01-18 郑州云海信息技术有限公司 一种基于云平台的裸机管理的方法及装置
CN109684033A (zh) * 2018-12-11 2019-04-26 武汉烽火信息集成技术有限公司 云平台裸机管理方法、存储介质、电子设备及系统
CN112468539A (zh) * 2020-11-06 2021-03-09 苏州浪潮智能科技有限公司 一种k8s集群用户资源调用的方法、装置、设备及可读介质
CN113900767A (zh) * 2020-06-22 2022-01-07 慧与发展有限责任合伙企业 监测集群和实施自动缩放策略的容器即服务控制器
CN115292026A (zh) * 2022-10-10 2022-11-04 济南浪潮数据技术有限公司 容器集群的管理方法、装置、设备及计算机可读存储介质
CN115460203A (zh) * 2022-09-02 2022-12-09 济南浪潮数据技术有限公司 一种Kubernetes集群的部署方法、装置、设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011091056A1 (en) * 2010-01-19 2011-07-28 Servicemesh, Inc. System and method for a cloud computing abstraction layer

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109245917A (zh) * 2018-08-20 2019-01-18 郑州云海信息技术有限公司 一种基于云平台的裸机管理的方法及装置
CN109684033A (zh) * 2018-12-11 2019-04-26 武汉烽火信息集成技术有限公司 云平台裸机管理方法、存储介质、电子设备及系统
CN113900767A (zh) * 2020-06-22 2022-01-07 慧与发展有限责任合伙企业 监测集群和实施自动缩放策略的容器即服务控制器
CN112468539A (zh) * 2020-11-06 2021-03-09 苏州浪潮智能科技有限公司 一种k8s集群用户资源调用的方法、装置、设备及可读介质
CN115460203A (zh) * 2022-09-02 2022-12-09 济南浪潮数据技术有限公司 一种Kubernetes集群的部署方法、装置、设备
CN115292026A (zh) * 2022-10-10 2022-11-04 济南浪潮数据技术有限公司 容器集群的管理方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN116225624A (zh) 2023-06-06

Similar Documents

Publication Publication Date Title
CN110389900B (zh) 一种分布式数据库集群测试方法、装置及存储介质
US10705808B2 (en) Software defined network controller
JP7421511B2 (ja) アプリケーションをデプロイするための方法及び装置、電子機器、読み取り可能な記憶媒体並びにコンピュータプログラム
CN105630488A (zh) 一种基于docker容器技术的持续集成实现方法
CN111782232A (zh) 集群的部署方法、装置、终端设备及存储介质
US10332043B2 (en) System and approach for setting forth a physical view and a network view of a job
WO2021135584A1 (zh) 前端项目框架的构建方法、装置、计算机设备及存储介质
US20120005325A1 (en) Systems and methods for automated processing of devices
CN103430150A (zh) 在云计算系统中创建资源的技术
US9621673B2 (en) Customer initiated tenant operations in a multitenant cloud environment
Da Silva et al. Internet of things out of the box: using TOSCA for automating the deployment of IoT environments
US11650888B2 (en) Workflow error handling for device driven management
WO2024077885A1 (zh) 容器集群的管理方法、装置、设备及非易失性可读存储介质
US10664551B2 (en) Intuitive user interface (UI) for device or vendor independent network switch management via embedded management controller
US10341181B2 (en) Method and apparatus to allow dynamic changes of a replica network configuration in distributed systems
US11533223B2 (en) Systems and methods for network management
US8527747B2 (en) Future system that can participate in systems management activities until an actual system is on-line
CN116225624B (zh) 基于kubernets的裸机管理方法、系统和装置
WO2023084345A1 (en) Automated deployment of enterprise archive with dependency on application server via script
US11184250B1 (en) Network integration and workflow generation tools for device-driven management
CN112148935B (zh) 用于多实例的nbmp功能执行的方法和装置
Moravcik et al. Automated deployment of the OpenStack platform
CN117478634A (zh) 网络地址的访问方法、装置、存储介质及电子装置
CN117908980A (zh) 基于Kubernetes资源对象的快速配置方法和系统
WO2023059558A1 (en) Computer system and method for accessing user data that is distributed within a multi-zone computing platform

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant