CN115051846A - 基于超融合平台的k8s集群的部署方法及电子设备 - Google Patents

基于超融合平台的k8s集群的部署方法及电子设备 Download PDF

Info

Publication number
CN115051846A
CN115051846A CN202210639599.8A CN202210639599A CN115051846A CN 115051846 A CN115051846 A CN 115051846A CN 202210639599 A CN202210639599 A CN 202210639599A CN 115051846 A CN115051846 A CN 115051846A
Authority
CN
China
Prior art keywords
cluster
deployment
information
node
certificate
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.)
Granted
Application number
CN202210639599.8A
Other languages
English (en)
Other versions
CN115051846B (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.)
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software 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 Beijing Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202210639599.8A priority Critical patent/CN115051846B/zh
Publication of CN115051846A publication Critical patent/CN115051846A/zh
Application granted granted Critical
Publication of CN115051846B publication Critical patent/CN115051846B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/20Network management software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供一种基于超融合平台的k8s集群的部署方法及电子设备,该方法包括:超融合平台创建多台k8s云服务器和至少一台harbor类型的云服务器;通过harbor类型的云服务器搭建私有仓库,并传输私有仓库证书给多台k8s云服务器,用以添加私有仓库;自动扫描多台k8s云服务器的ip地址,向前端的图形用户界面进行展示;接收前端提交的表单信息,表单信息包括私有仓库信息和k8s集群的配置信息;超融合平台的部署工具根据表单信息,执行部署描述文件,按顺序自动从私有仓库拉取k8s组件完成k8s集群的部署。该方案提高了网络安全性,通过UI界面操作,部署流程简单,采用自动化部署,耗费时间大大缩短。

Description

基于超融合平台的K8S集群的部署方法及电子设备
技术领域
本申请涉及计算机技术领域,特别涉及一种基于超融合平台的K8S集群的部署方法及电子设备、计算机可读存储介质。
背景技术
Kubernetes(K8S)是Google开源的容器集群管理系统。在容器技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能。在集群管理方面,Kubernetes将集群中的机器划分为一个Master节点(领导节点)和一群Node节点(工作节点),其中,在Master节点运行着集群管理相关的一组进程实现了整个集群的资源管理、Pod(一个Pod可以包括一个或者多个容器)调度、弹性伸缩、安全控制等管理能力。Node节点作为集群中的工作节点,运行真正的应用程序。
现有技术中对于Kubernetes集群的部署一般是采用手动方式部署实现的,容器化运维人员手动执行命令行,使用kubeadm部署工具,完成K8S高可用集群的搭建的整体操作流程如图1所示。详细的搭建流程描述如下:1)安装4台ubuntu操作系统的服务器;2)4台ubuntu服务器都安装docker;3)从公网镜像源上拉取k8s所需要的镜像、加载并保存到服务器;4)安装kubeadm工具;5)配置好3台master中的kubeadm-config.yaml文件,并执行kubeadm init,初始化安装master的核心组件(apiserver/controllerManager/schduler/Dashboard、kubelet/kube-proxy等);6)配置好1台node中的kubeadm-config.yaml文件,并执行kubeadm join进行node的核心组件(docker/service/kubelet/kube-proxy等)的安装;7)4台都安装ETCD(用于存储集群各种状态信息)数据库并配置好CA(证书的签发机构)证书;8)master搭建并配置好负载均衡软件(Haproxy+keepalive);9)4台部署网络组件(kubectl apply-f coredes.yml/calico.yaml);10)配置IPVS(IP虚拟服务器)集群的虚拟ip;11)更新4台k8s的集群信息、数字认证书;12)4台部署监控、告警、控制面板组件(kubectl apply-f promethus.yml/Dashboard.yaml),部署4节点k8s高可用集群完成(包含控制面板、监控告警、外接存储组件)。
上述方案需要专业的容器运维技术人员,手动输入命令行,操作难度大、容易出错、耗费时间长。
发明内容
本申请实施例提供了一种基于超融合平台的K8S集群的部署方法,用以降低部署难度,提高部署效率。
本申请实施例提供了一种基于超融合平台的k8s集群的部署方法,包括:
超融合平台创建多台k8s云服务器和至少一台harbor类型的云服务器;
通过所述harbor类型的云服务器搭建私有仓库,并传输私有仓库证书给多台所述k8s云服务器,用以添加所述私有仓库;
自动扫描多台所述k8s云服务器的ip地址,向前端的图形用户界面进行展示;
接收前端提交的表单信息,所述表单信息包括私有仓库信息和k8s集群的配置信息;
所述超融合平台的部署工具根据所述表单信息,执行部署描述文件,按顺序自动从所述私有仓库拉取k8s组件完成k8s集群的部署。
本申请上述实施例提供的方法,通过搭建私有仓库提供k8s组件的安装包,相比从公网拉取k8s镜像,提高了网络安全性。本申请前端通过UI界面操作,提交表单信息,部署流程简单、零基础新手也可以完成部署。K8S的部署阶段采用自动化部署,无需手动修改配置,部署高效、耗费时间大大缩短。
在一实施例中,所述超融合平台的部署工具根据所述表单信息,执行部署描述文件,按顺序自动拉取k8s组件完成k8s集群的部署,包括:
所述超融合平台的部署工具根据所述表单信息,自动注册集群信息到节点,部署主节点,部署工作节点,获取工作节点并加入到k8s集群,更新k8s集群的证书,完成k8s集群的部署。
上述实施例可以按序自动部署k8s集群,无需人工输入命令行,自动化部署速度快,一键搞定,k8s集群的部署阶段只需要4-6分钟。采用自动化部署流程,可避免人工操作带来的步骤遗漏、不按操作步骤来部署。
在一实施例中,所述自动注册集群信息到节点,包括:
在主节点执行集群初始化完成集群信息注册,并将主节点生成的证书信息重定向并写入并保存到kubeadm-cert文件。
上述实施例将证书信息保存到kubeadm-cert文件,便于在更新集群时,直接使用集群初始化阶段主节点保存的kubeadm-cert文件,方便快速地来完成集群更新任务。
在一实施例中,所述部署主节点包括:
在所述集群初始化阶段,采用异步机制,同步按序安装所述主节点的网络、监控、存储组件。
上述实施例,采用异步机制,执行初始化集群的阶段,同步批量按顺序地安装网络、监控、存储组件,可以缩短部署时间,提高部署效率。
在一实施例中,所述更新k8s集群的证书,包括:
使用kubeadm-cert文件写入的证书信息更新所述k8s集群的证书。
上述实施例,直接使用集群初始化阶段主节点保存的kubeadm-cert文件,可以方便快速地来完成集群更新任务,提高部署效率,缩短部署时间。
在一实施例中,本申请实施例提供的方法还包括:将所述部署工具部署k8s集群的过程分成多个阶段,向前端展示部署当前部署进度。
上述实施例通过UI界面展示部署的进度、耗费时间,便于用户了解部署时间。
在一实施例中,本申请实施例提供的方法还包括:将所述表单信息包括的时间信息保存在所述部署描述文件,使所述k8s集群中每个节点的时间保持同步。
上述实施例通过表单信息提交时间信息,并存在在部署描述文件中,保证了在k8s集群部署时每个节点的时间保持同步,避免时间不同步导致的出错。
在一实施例中,本申请实施例提供的方法还包括:若绑定已有的k8s集群,获取所述k8s集群的主节点的kubelet.conf文件;从所述kubelet.conf文件中提取得到集群信息,完成绑定已有的k8s集群的任务。
上述实施例中,部署工具可以直接从kubelet.conf文件中获取到certificate、key参数值,使加入已有的k8s集群的速度更快,效率更高。
本申请实施例还提供了一种电子设备,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述基于超融合平台的k8s集群的部署方法。
本申请实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述基于超融合平台的k8s集群的部署方法。
本申请上述实施例提供的电子设备和存储介质,通过搭建私有仓库提供k8s组件的安装包,相比从公网拉取k8s镜像,提高了网络安全性。本申请前端通过UI界面操作,提交表单信息,部署流程简单、零基础新手也可以完成部署。K8S的部署阶段采用自动化部署,无需手动修改配置,部署高效、耗费时间大大缩短。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。
图1为本申请一实施例提供的现有技术采用手动方式部署的流程示意图;
图2是本申请实施例提供的基于超融合平台的K8S集群的部署方法的原理示意图;
图3是本申请实施例提供的基于超融合平台的K8S集群的部署方法的流程示意图;
图4是创建集群时基础配置的用户界面示意图;
图5是创建集群时进行节点配置的用户界面示意图;
图6是创建集群时进行k8s配置的用户界面示意图;
图7是展示部署进度的用户界面示意图;
图8是本申请实施例改进点过的k8s部署流程和原生的部署流程的对比示意图;
图9是本申请实施例提供的基于超融合平台的K8S集群的部署方法的详细流程示意图;
图10为本申请一实施例示出的一种基于超融合平台的k8s集群的部署装置的框图;
图11是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
超融合基础架构(Hyper-converged infrastructure,缩写为HCI),也就是超融合平台,是一种集成了存储设备及虚拟运算的信息基础架构框架。在这样的架构环境中,同一厂商的服务器与存储等硬件单元,搭配虚拟化软件,被集成在一个机箱之中。这个名词是从“融合基础架构”派生而成的新词,意为可提供比融合式架构更进一步的“融合”。
Kubernetes(常简称为K8s)是用于自动部署、扩展和管理“容器化(containerized)应用程序”的开源系统,旨在提供“跨主机集群的自动部署、扩展以及运行应用程序容器的平台”。
K8s高可用集群(High Availability Cluster,简称HA Cluster),即单个K8s节点出现故障时,可以将该服务器中的服务、资源、IP等转移到另外一台k8s节点上,从而满足业务的持续性;多个k8s节点构成了服务器高可用集群。本申请旨在超融合平台高效快速地部署k8s高可用集群(本文简称k8s集群)。
图2是本申请实施例提供的基于超融合平台的K8S集群的部署方法的原理示意图。如图2所示,用户可以在前端的UI(用户界面)层面上选择创建新k8s集群或者让超融合平台绑定已有的k8s集群。用户还可以在前端的UI界面上选择扫描k8s节点,填写部署k8s集群的私有仓库信息以及k8s集群的配置信息(例如虚拟机ip(网际互连协议)地址)等。私有仓库可以提前搭建好,从私有仓库获取用于部署k8s集群的k8s镜像文件,可以提高网络安全性。用户在UI界面填写的这些信息可以统称表单信息,通过互联网的nginx服务(代理服务)传输到超融合平台的manager服务(管理服务),manager服务接收到表单信息,可以传递可以deploy部署工具。Deploy部署工具可以使用原生的kubeadm工具(快速搭建k8s的工具)执行编写好的kubeadm.yam文件,注册集群信息到节点--部署集群主节点的核心组件--获取工作节点并加入到集群--更新集群证书,一步一步按流程化部署k8s集群。
图3是本申请实施例提供了一种基于超融合平台的k8s集群的部署方法的流程示意图。如图3所示,该方法包括:
步骤S310:超融合平台创建多台k8s云服务器和至少一台harbor类型的云服务器。
云服务器(Elastic Compute Service,ECS)是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效。用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器。
用户所在前端可以通过登陆,访问超融合平台,选择4台k8s类型的云服务器,导入自主制作的topke-container的镜像文件,用于部署包含4个节点的k8s集群。需要说明的是,云服务器导入topke-container的镜像文件之后,开机就有Ubuntu操作系统和k8s部署工具,无需再手工去安装。同时,选择一台harbor类型的云服务器,导入自主制作的harbor镜像文件,从而完成创建多台k8s云服务器和至少一台harbor类型的云服务器的任务。
步骤S320:超融合平台通过所述harbor类型的云服务器搭建私有仓库,并传输私有仓库证书给多台所述k8s云服务器,用以添加所述私有仓库。
上述云服务器创建成功后,开机后修改成静态IP地址。Harbor云服务器,解压harbor镜像文件中的make-harbor.tar包,执行install_harbor.sh脚本,完成私有仓库的搭建工作。install_harbor.sh脚本的主要功能是生成数字证书文件(即私有仓库证书)并传输到所有k8s集群的节点中,还有使用docker(容器)命令给K8s的镜像包加载、打标签、推送到Harbor私有仓库的k8s.gcr.io项目中。多台所述k8s云服务器接收传输的私有仓库证书,可以完成私有仓库的添加,便于之后从私有仓库获取k8s镜像包。
步骤S330:超融合平台自动扫描多台所述k8s云服务器的ip地址,向前端的图形用户界面进行展示。
如图4所示,用户可以在前端的图形用户界面选择创建集群,并进行集群的基础配置,例如设置集群名称。用户还可以在前端的图形用户界面选择节点配置,选择集群管理规模,点击开始扫描,获得多台所述k8s云服务器的ip地址。如图5所示,在前端的图形用户界面展示ip地址,还可以展示虚拟机的内存、cpu核数等信息,用户根据需要,可以重新选择主节点和工作节点,修改节点名称,填写虚拟ip、外部默认端口8080。
步骤S340:超融合平台接收前端提交的表单信息,所述表单信息包括私有仓库信息和k8s集群的配置信息。
如图6所示,用户还可以在前端的图形用户界面选择k8s配置,填写仓库名称和项目名称,选择鉴权方式,默认服务网段和容器网段,并进行提交。表单信息是指包括用户在前端填写、确认提交的信息。表单信息中的私有仓库信息可以包括仓库名称、项目名称。K8s集群的配置信息可以包括虚拟ip地址、主节点、工作节点、鉴权方式、服务网段、容器网段等等。
步骤S350:所述超融合平台的部署工具根据所述表单信息,执行部署描述文件,按顺序自动从所述私有仓库拉取k8s组件完成k8s集群的部署。
在一实施例中,在上述部署工具进行k8s集群部署之前,可以先执行自主编写的kubelet-pre-start.sh脚本,在集群进入初始化阶段之前,完成初始化网络、关闭防火墙、关闭交换分区等工作。
超融合平台的deploy部署工具具有重要参数的配置文件kubectl.yaml、kustomization.yaml、all-in-one.yaml等以及核心组件配置文件calico.yaml、namespace-controller-rbac.yaml等,这些文件可以称为部署描述文件。deploy部署工具从manger服务拿到表单信息后,执行部署描述文件,根据表单信息指示的私有仓库信息和k8s集群的配置信息,按序从私有仓库拉取k8s组件的安装包,完成k8s集群的部署。deploy部署工具的具体部署过程,详见下文展开。
本申请上述实施例提供的技术方案,通过搭建私有仓库提供k8s组件的安装包,相比从公网拉取k8s镜像,提高了网络安全性。本申请前端通过UI界面操作,提交表单信息,部署流程简单、零基础新手也可以完成部署。K8S的部署阶段采用自动化部署,无需手动修改配置,部署高效、耗费时间大大缩短。
在一实施例中,上述步骤S350具体包括:所述超融合平台的部署工具根据所述表单信息,自动注册集群信息到节点,部署主节点,部署工作节点,获取工作节点并加入到k8s集群,更新k8s集群的证书,完成k8s集群的部署。
其中,自动注册集群信息到节点是指不需要手动输入命令行的参数值,自动从kubelet.conf文件中获取到certificate(证书)、key(密钥)等参数值,完成注册集群信息到节点。
表单信息指示了主节点的ip地址的和工作节点的ip地址。自动注册集群信息到节点包括在主节点执行集群初始化完成集群信息注册,并将主节点生成的证书信息重定向写入并保存到kubeadm-cert文件。从而便于在更新集群时,直接使用集群初始化阶段主节点保存的kubeadm-cert文件,方便快速地来完成集群更新任务。
具体的,deploy部署工具从表单信息中获取到初始化集群的必要参数值(例如环境变量、配置信息),直接传入到kubeadm执行初始化集群命令中,生成证书信息,自动完成集群信息注册,方便快速地完成初始化任务。具体的,在集群进入初始化阶段之前,可以先执行自主编写的kubelet-pre-start.sh脚本,完成初始化网络、关闭防火墙、关闭交换分区等工作。
其中,部署主节点是指部署主节点的核心组件,上传configmap文件。具体是deploy部署工具解析calico.yaml.template应用模板文件后将参数传递给kubectl,kubectl按规定的顺序,先安装网络组件,再安装监控组件,最后安装存储组件。其中,这些组件的安装包可以从私有仓库获取,提取网络安全性。
在一实施例中,为提高部署效率,缩短整体部署时间,可以在所述集群初始化阶段,采用异步机制,同步按序安装所述主节点的网络、监控、存储组件。也就是说,在集群初始化的同时,进行网络、监控、存储组件的安装,从而使部署持续时间更短。
部署工作节点是指部署工作节点的核心组件。之后将工作节点加入集群中。更新集群证书,遵循配置好的RBAC(基于角色的访问控制)规则。
具体的,在更新集群证书时,可以使用集群初始化阶段主节点保存的kubeadm-cert文件中写入的证书信息,更新所述k8s集群的证书。从而方便快速地来完成集群更新任务。
在一实施例中,可以将所述部署工具部署k8s集群的过程分成多个阶段,向前端展示部署当前部署进度。
具体的,可以分为“注册集群信息到节点--部署集群主节点的核心组件--获取工作节点并加入到集群--更新集群证书”四个阶段,每完成一个阶段,前端可以增加部署进度25%,从而用户可以直接从前端的用户界面了解当前部署进度。如图7所示,前端的用户界面可以用进度条表示当前部署进度,便于用户了解当前部署到哪个阶段,整个K8S集群的部署阶段仅需要4-6分钟。
进一步的,本申请实施例提供的方法还包括:将所述表单信息包括的时间信息保存在所述部署描述文件,使所述k8s集群中每个节点的时间保持同步。
举例来说,用户可以前端的用户界面勾选上海时区,从而前端提交的表单信息可以包括时间信息。时间信息可以是具体的时间或时区。表单信息中的时间信息可以保存在kubeadm-config.yaml部署描述文件中,从而在部署k8s集群时快捷方便地使得集群里所有节点的时间、时区都保持一致。
图8是本申请实施例改进点过的k8s部署流程和原生的部署流程的对比示意图。区别①,如图8所示,在创建新k8s集群的过程中,本申请实施例利用在前端用户界面填写私有仓库信息,通过私有仓库提供k8s镜像,网络和镜像来源比公网相对安全。
区别②,manager服务获取表单信息传递给deploy部署工具,deploy部署工具调用kubelet-pre-start.sh脚本,是在集群进入初始化阶段之前,完成初始化网络、关闭防火墙、关闭交换分区等工作。
区别③,集群初始化阶段主节点生成的证书信息重定向写入并保存在kubeadm-cert文件。kubeadm更新集群时,直接使用集群初始化阶段主节点保存的kubeadm-cert文件更新集群的证书信息。
区别④,采用异步机制,执行初始化集群的阶段,deploy解析calico.yaml.template应用模板文件后将参数传递给kubectl,kubectl批量按顺序地安装网络、监控、存储组件。
区别⑤,展示部署进度。
而原生的部署流程从公网获取k8s镜像风险较大,手动输入必要参数进行初始化和部署从节点,手动输入命令更新集群的证书信息,每个阶段按序进行无异步机制,耗费时间长,无法展示部署进度,需要人工输入命令,易于出错,部署时间无法控制。
区别⑥,改进后的流程在绑定已有的k8s集群时,获取所述k8s集群的主节点的kubelet.conf文件;从所述kubelet.conf文件中提取得到集群信息,完成绑定已有的k8s集群的任务。
集群信息可以包括certificate、key等参数值。已有的k8s集群是指已被其他超融合集群添加过或使用过的k8s集群。已有的k8s集群的certificate、key是已知的,故可以直接从kubelet.conf文件中提取certificate、key等参数值,绑定已有的k8s集群。而原生的部署流程,需要手动输入命令行进行绑定。
图9是本申请实施例提供的基于超融合平台的K8S集群的部署方法的详细流程示意图,如图9所示。
(1)普通用户通过前端登录超融合平台;
(2)用户选择4台k8s类型的云服务器,导入自主制作的topke-container的镜像文件并确认创建,创建成功后,开机后修改成静态ip地址。
(3)与上述步骤(2)并行执行,用户选择一台harbor类型的云服务器,导入harbor镜像文件后确认创建,创建成功后,开机后修改成静态ip地址。Harbor云服务器解压make-harbor.tar包,执行install_harbor.sh脚本,完成私有仓库的搭建工作。
(4)超融合平台导入Harbor私有仓库的数字证书文件,完成身份认证,添加仓库成功;
(5)用户在前端的用户界面点击自动扫描后,超融合平台自动扫描ip,用户勾选云主机并标记好master(主节点)和node节点(工作节点或从节点),填写虚拟ip、外部默认端口8080。
(6)用户在前端的用户界面填写私有仓库的k8s项目,鉴权方式RBAC、IPVS、默认服务网段、容器网段参数后,提交表单后进行下一步。
(7)超融合平台的部署工具启动集群部署任务,自动注册集群信息到节点、自动部署master节点、自动部署node节点、获取node节点加入到集群,更新集群证书。由此完成4节点的k8s集群的部署。
本申请上述实施例提供的技术方案,克服了对专业的技术人员的依赖,普通的用户小白也能轻松快速部署;采用友好的图形化交互,操作更简单,上手更快;自动化部署速度快,一键搞定,k8s集群的部署阶段只需要4-6分钟。UI界面展示部署的进度、耗费时间;采用自动化部署流程,可避免人工操作带来的步骤遗漏、不按操作步骤来部署;在私有云的局域网环境采用Harbor私有仓库推送k8s镜像,更注重网络安全。
下述为本申请装置实施例,可以用于执行本申请上述基于超融合平台的k8s集群的部署方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请基于超融合平台的k8s集群的部署方法实施例。
图10为本申请一实施例示出的一种基于超融合平台的k8s集群的部署装置的框图。如图10所示,该装置包括:
云服务器创建模块1010,用于创建多台k8s云服务器和至少一台harbor类型的云服务器;
私有仓库搭建模块1020,用于通过所述harbor类型的云服务器搭建私有仓库,并传输私有仓库证书给多台所述k8s云服务器,用以添加所述私有仓库;
地址扫描模块1030,用于自动扫描多台所述k8s云服务器的ip地址,向前端的图形用户界面进行展示;
表单信息接收模块1040,用于接收前端提交的表单信息,所述表单信息包括私有仓库信息和k8s集群的配置信息;
集群部署模块1050,用于通过部署工具根据所述表单信息,执行部署描述文件,按顺序自动从所述私有仓库拉取k8s组件完成k8s集群的部署。
上述装置中各个模块的功能和作用的实现过程具体详见上述基于超融合平台的k8s集群的部署方法中对应步骤的实现过程,在此不再赘述。
图11是本申请实施例提供的电子设备的结构示意图。该电子设备可以作为超融合平台,该电子设备200可以用于执行本申请实施例提供的基于超融合平台的k8s集群的部署方法。如图11所示,该电子设备200包括:一个或多个处理器202、一个或多个存储处理器可执行指令的存储器204。其中,所述处理器202被配置为执行本申请下述实施例提供的基于超融合平台的k8s集群的部署方法。
所述处理器202可以是包含中央处理单元(CPU)、图像处理单元(GPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元的设备,可以对所述电子设备200中的其它组件的数据进行处理,还可以控制所述电子设备200中的其它组件以执行期望的功能。
所述存储器204可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器202可以运行所述程序指令,以实现上文所述的基于超融合平台的k8s集群的部署方法。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
在一实施例中,图2所示电子设备200还可以包括输入装置206、输出装置208以及数据采集装置210,这些组件通过总线系统212和/或其它形式的连接机构(未示出)互连。应当注意,图2所示的电子设备200的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备200也可以具有其他组件和结构。
所述输入装置206可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。所述输出装置208可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。所述数据采集装置210可以采集对象的图像,并且将所采集的图像存储在所述存储器204中以供其它组件使用。示例性地,该数据采集装置210可以为摄像头。
在一实施例中,用于实现本申请实施例的基于超融合平台的k8s集群的部署方法的示例电子设备100中的各器件可以集成设置,也可以分散设置,诸如将处理器202、存储器204、输入装置206和输出装置208集成设置于一体,而将数据采集装置210分离设置。
在一实施例中,用于实现本申请实施例的基于超融合平台的k8s集群的部署方法的示例电子设备200可以被实现为诸如计算机、服务器等智能设备。
本申请实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述基于超融合平台的k8s集群的部署方法。
在本申请所提供的几个实施例中,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (10)

1.一种基于超融合平台的k8s集群的部署方法,其特征在于,包括:
所述超融合平台创建多台k8s云服务器和至少一台harbor类型的云服务器;
通过所述harbor类型的云服务器搭建私有仓库,并传输私有仓库证书给多台所述k8s云服务器,用以添加所述私有仓库;
自动扫描多台所述k8s云服务器的ip地址,向前端的图形用户界面进行展示;
接收前端提交的表单信息,所述表单信息包括私有仓库信息和k8s集群的配置信息;
所述超融合平台的部署工具根据所述表单信息,执行部署描述文件,按顺序自动从所述私有仓库拉取k8s组件完成k8s集群的部署。
2.根据权利要求1所述的方法,其特征在于,所述超融合平台的部署工具根据所述表单信息,执行部署描述文件,按顺序自动拉取k8s组件完成k8s集群的部署,包括:
所述超融合平台的部署工具根据所述表单信息,自动注册集群信息到节点,部署主节点,部署工作节点,获取工作节点并加入到k8s集群,更新k8s集群的证书,完成k8s集群的部署。
3.根据权利要求2所述的方法,其特征在于,所述自动注册集群信息到节点,包括:
在主节点执行集群初始化完成集群信息注册,并将主节点生成的证书信息重定向写入并保存到kubeadm-cert文件。
4.根据权利要求3所述的方法,其特征在于,所述部署主节点包括:
在所述集群初始化阶段,采用异步机制,同步按序安装所述主节点的网络、监控、存储组件。
5.根据权利要求3所述的方法,其特征在于,所述更新k8s集群的证书,包括:
使用kubeadm-cert文件写入的证书信息更新所述k8s集群的证书。
6.根据权利要求1所述的方法,其特征在于,还包括:
将所述部署工具部署k8s集群的过程分成多个阶段,向前端展示部署当前部署进度。
7.根据权利要求1所述的方法,其特征在于,还包括:
将所述表单信息包括的时间信息保存在所述部署描述文件,使所述k8s集群中每个节点的时间保持同步。
8.根据权利要求1所述的方法,其特征在于,还包括:
若绑定已有的k8s集群,获取所述k8s集群的主节点的kubelet.conf文件;
从所述kubelet.conf文件中提取得到集群信息,完成绑定已有的k8s集群的任务。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-8任意一项所述的基于超融合平台的k8s集群的部署方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求1-8任意一项所述的基于超融合平台的k8s集群的部署方法。
CN202210639599.8A 2022-06-07 2022-06-07 基于超融合平台的k8s集群的部署方法及电子设备 Active CN115051846B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210639599.8A CN115051846B (zh) 2022-06-07 2022-06-07 基于超融合平台的k8s集群的部署方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210639599.8A CN115051846B (zh) 2022-06-07 2022-06-07 基于超融合平台的k8s集群的部署方法及电子设备

Publications (2)

Publication Number Publication Date
CN115051846A true CN115051846A (zh) 2022-09-13
CN115051846B CN115051846B (zh) 2023-11-10

Family

ID=83162440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210639599.8A Active CN115051846B (zh) 2022-06-07 2022-06-07 基于超融合平台的k8s集群的部署方法及电子设备

Country Status (1)

Country Link
CN (1) CN115051846B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766717A (zh) * 2022-11-02 2023-03-07 北京志凌海纳科技有限公司 超融合分布式系统自动化部署方法及装置
CN117908904A (zh) * 2024-03-19 2024-04-19 麒麟软件有限公司 一种k8s集群部署及运维管理的方法和系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110752947A (zh) * 2019-10-18 2020-02-04 北京浪潮数据技术有限公司 一种k8s集群部署方法及装置,一种部署平台
CN111444020A (zh) * 2020-03-31 2020-07-24 中国科学院计算机网络信息中心 一种超融合计算系统架构及融合服务平台
US10841152B1 (en) * 2017-12-18 2020-11-17 Pivotal Software, Inc. On-demand cluster creation and management
CN111966366A (zh) * 2020-08-27 2020-11-20 苏州浪潮智能科技有限公司 一种多cpu架构的集群部署的方法和设备
CN112084009A (zh) * 2020-09-17 2020-12-15 湖南长城科技信息有限公司 PK体系下基于容器化技术构建和监控Hadoop集群与告警的方法
CN112153126A (zh) * 2020-09-11 2020-12-29 苏州浪潮智能科技有限公司 一种针对k8s集群的部署和节点管理方法和系统
CN113127152A (zh) * 2021-04-09 2021-07-16 浪潮软件科技有限公司 实现kubernetes容器多网络平面的方法及装置
CN113568624A (zh) * 2021-09-22 2021-10-29 苏州浪潮智能科技有限公司 一种镜像的拉取方法、系统、计算机设备及可读存储介质
CN113645071A (zh) * 2021-08-10 2021-11-12 广域铭岛数字科技有限公司 一种集群部署方法、系统、介质及电子终端

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10841152B1 (en) * 2017-12-18 2020-11-17 Pivotal Software, Inc. On-demand cluster creation and management
CN110752947A (zh) * 2019-10-18 2020-02-04 北京浪潮数据技术有限公司 一种k8s集群部署方法及装置,一种部署平台
CN111444020A (zh) * 2020-03-31 2020-07-24 中国科学院计算机网络信息中心 一种超融合计算系统架构及融合服务平台
CN111966366A (zh) * 2020-08-27 2020-11-20 苏州浪潮智能科技有限公司 一种多cpu架构的集群部署的方法和设备
CN112153126A (zh) * 2020-09-11 2020-12-29 苏州浪潮智能科技有限公司 一种针对k8s集群的部署和节点管理方法和系统
CN112084009A (zh) * 2020-09-17 2020-12-15 湖南长城科技信息有限公司 PK体系下基于容器化技术构建和监控Hadoop集群与告警的方法
CN113127152A (zh) * 2021-04-09 2021-07-16 浪潮软件科技有限公司 实现kubernetes容器多网络平面的方法及装置
CN113645071A (zh) * 2021-08-10 2021-11-12 广域铭岛数字科技有限公司 一种集群部署方法、系统、介质及电子终端
CN113568624A (zh) * 2021-09-22 2021-10-29 苏州浪潮智能科技有限公司 一种镜像的拉取方法、系统、计算机设备及可读存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766717A (zh) * 2022-11-02 2023-03-07 北京志凌海纳科技有限公司 超融合分布式系统自动化部署方法及装置
CN115766717B (zh) * 2022-11-02 2023-08-15 北京志凌海纳科技有限公司 超融合分布式系统自动化部署方法、装置、设备及介质
CN117908904A (zh) * 2024-03-19 2024-04-19 麒麟软件有限公司 一种k8s集群部署及运维管理的方法和系统
CN117908904B (zh) * 2024-03-19 2024-05-31 麒麟软件有限公司 一种k8s集群部署及运维管理的方法和系统

Also Published As

Publication number Publication date
CN115051846B (zh) 2023-11-10

Similar Documents

Publication Publication Date Title
CN108809722B (zh) 一种部署Kubernetes集群的方法、装置和存储介质
CN112214330A (zh) 集群中主节点的部署方法、装置及计算机可读存储介质
CN115051846B (zh) 基于超融合平台的k8s集群的部署方法及电子设备
CN111367534B (zh) 一种基于应用环境的服务编排方法及系统
KR102283736B1 (ko) Autosar 기반 응용 소프트웨어의 설정 코드 자동 생성 방법 및 장치
CN107783816A (zh) 虚拟机的创建方法及装置、大数据集群创建的方法及装置
US20230060053A1 (en) Method and apparatus of deploying a cluster, and storage medium
CN112631614B (zh) 应用部署方法、装置、计算机设备和存储介质
CN111198696B (zh) 一种基于裸机服务器的OpenStack大规模部署方法和系统
CN113127150B (zh) 云原生系统的快速部署方法、装置、电子设备和存储介质
CN115220874B (zh) 一种Kubernetes集群部署方法、装置、设备及存储介质
CN110727575B (zh) 一种信息处理方法、系统、装置、以及存储介质
CN114780080A (zh) 一种微前端集成方法、装置及监控方法
US11144292B2 (en) Packaging support system and packaging support method
US11119754B1 (en) Upgrading system components with forward and backward compatibility
CN114968477A (zh) 容器热迁移方法及容器热迁移装置
CN113419813B (zh) 一种基于容器平台部署裸机管理服务的方法及装置
CN114650223A (zh) 一种Kubernetes集群的网络配置方法、装置及电子设备
CN117112122A (zh) 一种集群部署方法和装置
CN114661375A (zh) 应用集成方法及装置
CN112291081B (zh) 云管理平台审计控制器集群数据的方法、系统及存储介质
WO2016078326A1 (zh) 一种虚拟机名称展示的方法、装置及系统
CN103051668B (zh) 一种服务器资源管理系统及管理方法
CN110782040A (zh) 一种pytorch任务训练方法、装置、设备及介质
CN113312148B (zh) 一种大数据服务部署方法、装置、设备及介质

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