CN117950798A - Cluster management method and computing device - Google Patents

Cluster management method and computing device Download PDF

Info

Publication number
CN117950798A
CN117950798A CN202311870698.8A CN202311870698A CN117950798A CN 117950798 A CN117950798 A CN 117950798A CN 202311870698 A CN202311870698 A CN 202311870698A CN 117950798 A CN117950798 A CN 117950798A
Authority
CN
China
Prior art keywords
cluster
infrastructure
referenced
management
provisioning
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.)
Pending
Application number
CN202311870698.8A
Other languages
Chinese (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.)
XFusion Digital Technologies Co Ltd
Original Assignee
XFusion Digital Technologies 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 XFusion Digital Technologies Co Ltd filed Critical XFusion Digital Technologies Co Ltd
Priority to CN202311870698.8A priority Critical patent/CN117950798A/en
Publication of CN117950798A publication Critical patent/CN117950798A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

The embodiment of the application provides a cluster management method and computing equipment. According to the embodiment of the application, cluster resources and infrastructure resources are distinguished, the infrastructure resources to be referred are called by using first calling information, the configuration resources of the configuration plug-ins to be referred in the infrastructure resources to be referred are called, and finally, the configuration plug-ins to be referred are used, and the clusters are managed by combining the cluster resources based on a preset cluster management mechanism. That is, the infrastructure resources are intermediaries for acquiring the provisioning plug-in, during which the infrastructure resources do not participate in the job. That is, when the infrastructure changes, the cluster management flow is unchanged since the first call information and the configuration resources of the provisioning plugin to be referenced are unchanged, despite the change in infrastructure resources. Therefore, the cluster management method provided by the embodiment of the application is a unified cluster management mechanism facing to the user.

Description

Cluster management method and computing device
Technical Field
The present application relates to the field of server technologies, and in particular, to a cluster management method and a computing device.
Background
Kubernetes (k 8s for short) is an open-source container orchestration engine for automated deployment, expansion, and operation of container clusters. k8s can connect various interfaces and plug-ins and can quickly respond to user needs, quickly and predictably deploy and expand user applications, etc., gradually becoming a de facto standard for container orchestration. Currently, more and more systems extend or run their own applications based on the k8s platform.
K8s employs a namespace isolation technique to isolate namespace-level resources within k8s, but such isolation techniques cannot isolate cluster-level resources such as custom resource categories (Custom Resource Definition, CRDs). The namespace-level resource is a resource for managing memory and a processor (Central Processing Unit, CPU). Therefore, in an environment with a higher security level, for example, in a public cloud environment, it is necessary to extend or run its own application by adopting a multi-cluster technology, that is, each tenant monopolizes one k8s cluster.
There are a number of Cluster management approaches in the related solution, such as Cluster application program interface (Cluster Application Program Interface, cluster API) technology. However, in the current cluster management method, the cluster management is affected by the infrastructure, and if the infrastructure is changed, the cluster management flow needs to be adjusted. That is, the current cluster management approach lacks a user-oriented, unified cluster management mechanism.
Disclosure of Invention
The embodiment of the application provides a cluster management method and computing equipment, which are used for providing a unified cluster management mechanism facing to a user.
In order to achieve the above purpose, the application adopts the following technical scheme:
in a first aspect, an embodiment of the present application provides a cluster management method, where the method includes:
Acquiring cluster resources, wherein the cluster resources comprise first call information, and the first call information is call information of an infrastructure environment to be referred; acquiring infrastructure resources to be referenced corresponding to the infrastructure environment to be referenced according to first call information in the cluster resources, wherein the infrastructure resources to be referenced are used for representing configuration information of the infrastructure environment to be referenced; the infrastructure resources to be referenced include second call information; the second call information is call information of the to-be-referenced backup plug-in; and calling the standby plug-in to be referred to for cluster management according to the second calling information in the infrastructure resources to be referred to.
In this way, the embodiment of the application distinguishes the cluster resource from the infrastructure resource, uses the first calling information to call the infrastructure resource to be referenced, uses the configuration resource of the configuration plug-in to be referenced in the infrastructure resource to call the configuration plug-in to be referenced, and finally uses the configuration plug-in to be referenced to manage the cluster based on a preset cluster management mechanism and combines the cluster resource. That is, the infrastructure resources are intermediaries for acquiring the provisioning plug-in, during which the infrastructure resources do not participate in the job. That is, when the infrastructure changes, the cluster management flow is unchanged since the first call information and the configuration resources of the provisioning plugin to be referenced are unchanged, despite the change in infrastructure resources. Therefore, the cluster management method provided by the embodiment of the application is a unified cluster management mechanism facing to the user.
In a possible implementation manner, according to the to-be-referenced provisioning plugin resource, the to-be-referenced provisioning plugin is matched from the at least one provisioning plugin, and the to-be-referenced provisioning plugin resource is used for describing attribute information of the to-be-referenced provisioning plugin; calling the matched standby plug-in to be referred; invoking a management node to be referenced by using the preparation plug-in to be referenced; the to-be-referenced preparation plug-in has a corresponding relation with the to-be-referenced management node; and carrying out cluster management by utilizing the management node to be referred. The embodiment of the application introduces a provisioning (provisioning) plug-in, and uniformly converts node requirements and infrastructure descriptions of the cluster into calls and requests for the infrastructure management back end. Thus, unified k8s cluster management is facilitated.
In one possible implementation manner, if the to-be-referenced backup plug-in is a Cluster application program interface Cluster API backup plug-in, calling a Cluster API management node by using the Cluster API backup plug-in; the Cluster API management node is used for managing the Cluster based on a Cluster API management specification and the Cluster resource; and carrying out Cluster management by using the Cluster API management node.
In yet another possible implementation manner, if the to-be-referenced provisioning plugin is Terraform provisioning plugin, invoking Terraform the management node using the Terraform provisioning plugin; the Terraform management node is to manage the cluster based on Terraform specification and the cluster resources; and performing cluster management by utilizing Terraform management node management.
In yet another possible implementation manner, if the to-be-referenced provisioning plugin is OpenShift provisioning plugin, the cluster management is performed by using the RedHat OpenShift container cluster node management.
Thus, the provisioning plugin can support a variety of heterogeneous infrastructures, meeting the diversified cluster creation needs.
In yet another possible implementation, the standby plugin to be referenced listens for the management state of the cluster; and the standby plug-in to be referenced adjusts cluster resources according to the monitored management state of the cluster. Thus, the user can perceive the creation state of the k8s cluster in real time.
Further, responsive to the target infrastructure resource submitted at the display interface; adjusting an infrastructure environment corresponding to the target infrastructure resource according to the target infrastructure resource; determining whether the server address and the user name password of the adjusted infrastructure environment are valid; if so, determining that the adjustment is successful. Thereby, the infrastructure environment is ensured to be effective.
In yet another possible implementation, the to-be-referenced provisioning plug-in obtains to-be-referenced infrastructure resources; the to-be-referenced provisioning plugin connects to the to-be-referenced infrastructure environment according to the to-be-referenced infrastructure resources. Hereby is achieved that a k8s cluster is created in the infrastructure environment to which the infrastructure resources correspond.
In yet another possible implementation, in response to the cluster resource submitted at the display interface, authenticating the cluster resource through kube-apiserver, determining whether the cluster resource conforms to an authentication mechanism of the cluster; if the authentication mechanism of the cluster is met, the cluster resource is authenticated through kube-apiserver, whether the cluster resource meets the admission rule is determined, and if so, the cluster resource is obtained.
In a second aspect, an embodiment of the present application provides a cluster management apparatus, including:
The cluster acquisition unit is used for acquiring cluster resources, wherein the cluster resources comprise first call information, and the first call information is call information of an infrastructure environment to be referred;
an infrastructure acquisition unit, configured to acquire infrastructure resources to be referred corresponding to the infrastructure environment to be referred according to first call information in the cluster resources, where the infrastructure resources to be referred are used to represent configuration information of the infrastructure environment to be referred; the infrastructure resources to be referenced include second call information; the second call information is call information of the to-be-referenced backup plug-in;
and the calling unit is used for calling the standby plug-in for cluster management according to the second calling information in the infrastructure resources to be referred.
In a third aspect, embodiments of the present application provide a computing device comprising a memory and a processor; the memory is coupled to the processor; the memory is used for storing program instructions; the processor is configured to invoke the program instructions to cause the computing device to perform the operational steps of any of the possible cluster management methods of the first aspect.
In a fourth aspect, embodiments of the present application also provide a computer readable storage medium having stored thereon a computer program which, when run on a computer, causes the computer to perform the operational steps of any one of the possible cluster management methods of the first aspect described above.
In a fifth aspect, embodiments of the present application also provide a computer program product which, when run on a computer, causes the operational steps of any one of the possible cluster management methods of the first aspect.
Any of the foregoing cluster management methods, computing devices, or computer-readable storage media or computer program products, etc. are used to execute the corresponding methods provided above, and therefore, the benefits achieved by the foregoing cluster management methods may refer to the benefits in the corresponding methods, and are not repeated herein.
Drawings
Fig. 1 is a schematic diagram of a cluster management node according to an embodiment of the present application;
fig. 2 is a flowchart of an implementation of a cluster management method according to an embodiment of the present application;
FIG. 3A is a schematic diagram of a cluster resource customization interface according to an embodiment of the present application;
FIG. 3B is a schematic diagram of a cluster resource adjustment mode according to an embodiment of the present application;
FIG. 4 is a schematic diagram of a management cluster based on a target provisioning plug-in;
FIG. 5 is a diagram of a complete cluster management node architecture according to an embodiment of the present application;
FIG. 6 is a schematic diagram of another cluster management node according to an embodiment of the present application;
FIG. 7 is an interaction diagram of an infrastructure administrator managing an infrastructure provided by an embodiment of the present application;
FIG. 8 is an interaction diagram of creating a cluster by a cluster administrator according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a cluster management device according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of a computing device 900 according to an embodiment of the present application.
Detailed Description
The terms first, second, third and the like in the description and in the claims and in the drawings are used for distinguishing between different objects and not for limiting the specified order.
In embodiments of the application, words such as "exemplary" or "such as" are used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" or "e.g." in an embodiment should not be taken as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion.
K8s clusters are an open source platform for deploying and managing containerized applications on one or more computing devices. With k8s clusters, the operational tasks of container management can be automated and more manageable. The k8s cluster consists of a control plane and a working node.
The control plane is also called a control plane and consists of a group of core components including a k8s API server, a scheduler, a controller, a manager and the like. These components are responsible for receiving and processing user's operation requests and managing the resources in the k8s cluster. In an embodiment of the application, the management and control plane comprises a cluster management controller, an infrastructure management controller and a provisioning plugin. The cluster management controller is used for managing cluster resources in the k8s cluster, and the infrastructure management controller is used for managing infrastructure resources in the k8s cluster. The backup plug-in is used for being connected with the cluster management back end to uniformly manage the k8s clusters.
The working node is used for running the actual application of the user. In the k8s cluster, each node is registered with the management plane, such that the management plane manages the working nodes. The working node may be a physical machine, a virtual machine, a cloud instance, or the like.
Currently, the management of k8s clusters often adopts Cluster API technology. Cluster API technology expands the Cluster concept based on CRD, users customize clusters, management and control planes and working nodes, and a manipulator (also called an Operator) and a plugin (also called a Provider) of the Cluster API cooperate to create the working nodes of k8s clusters, and the working nodes are initialized to form the clusters. Taking a VSphere platform to create a k8s cluster based on a VSphere virtual machine as an example for explanation. Based on the k8s cluster of the VSphere virtual machine, the infrastructure, the control plane and the working nodes need to be configured in the creation process.
The configured infrastructure includes: the address of the VSphere management service, the transport layer security protocol (Transport Layer Security, TLS) certificate fingerprint of the management service, a reference to access credentials (e.g., user name and password), the name of the k8s cluster to be created, and the internet protocol (Internet Protocol, IP) and port of the k8s cluster management and control plane to be created.
The configured control surface includes: the configuration of the management and control plane node, the release version of the k8s cluster to be created, the virtual machine template of the management and control plane node (comprising the specification of the virtual machine, the mirror image of the operating system and the like), and the configuration of the cluster management tool.
The configuration of the cluster management tool includes custom configuration related to the node, such as disk partition, installation of a third party tool, etc., and cluster initialization configuration, such as configuration of a container runtime, configuration of a container network interface (Container Network Interface, CNI) network plug-in and a container storage interface (Container Storage Interface, CSI) storage plug-in, etc. These cluster management tool configurations, together with the Bootstrap Operator generated configurations, are issued to the working nodes of the k8s cluster through a group-init or registration etc. configuration system.
The configured working node comprises: the name of the k8s cluster to be created, the number of worker nodes, the computer (Machine) template of the worker nodes, etc. The key of the Machine template of the working node is a virtual Machine module corresponding to the working node, such as the specification of a virtual Machine, an operating system mirror image, and the like.
The Cluster API technique described above requires consideration of the orchestration of the working nodes on the underlying infrastructure in managing the k8s clusters. When the infrastructure changes, the management flow of k8s cluster management needs to be adjusted. The current cluster management mode lacks a unified cluster management mechanism facing to users.
In view of the above problems, an embodiment of the present application provides a cluster management method, by distinguishing a cluster resource from an infrastructure resource, calling the infrastructure resource to be referred by using first call information, calling the provisioning plugin to be referred by using a configuration resource of the provisioning plugin to be referred in the infrastructure resource to be referred, and finally using the provisioning plugin to be referred to manage a cluster based on a preset cluster management mechanism by combining the cluster resource. That is, the infrastructure resources are intermediaries for acquiring the provisioning plug-in, during which the infrastructure resources do not participate in the job. That is, when the infrastructure changes, the cluster management flow is unchanged since the first call information and the configuration resources of the provisioning plugin to be referenced are unchanged, despite the change in infrastructure resources. Therefore, the cluster management method provided by the embodiment of the application is a unified cluster management mechanism facing to the user.
The cluster management method provided by the embodiment of the application is described in detail below with reference to the accompanying drawings.
Referring to fig. 1, a schematic diagram of a cluster management node according to an embodiment of the present application is shown. Cluster management node 101 includes cluster management controller 102, infrastructure management controller 103, provisioning plugin 104.
The infrastructure management controller 103 is configured to monitor and discover infrastructure resources, and send the monitored infrastructure resources to the cluster management controller 102, so that the cluster management controller 102 loads and runs the provisioning plugin 104, and connects the provisioning plugin 104 to the infrastructure environment corresponding to the infrastructure resources.
The cluster management controller 102 is connected to the infrastructure management controller 103, and is configured to start the infrastructure management controller 103, and obtain a provisioning plug-in 104 corresponding to the infrastructure resource from the infrastructure management controller 103. Cluster management controller 102 is also configured to load and run provisioning plugin 104 after obtaining the configuration resources of provisioning plugin 104 from infrastructure management controller 103.
The provisioning plugin 104 invokes the cluster management node 105 to manage the k8s cluster based on a preset cluster management mechanism. Cluster management node 105 connects to the infrastructure environment. Optionally, the cluster management node connects and manages the management plane node and the working node in the working cluster through a resource management API in the infrastructure environment.
The embodiment of the application is not particularly limited to the way of managing the k8s cluster, for example, the k8s cluster is subjected to the scheduling actions such as creation, deletion, capacity expansion, capacity contraction and the like.
Referring to fig. 2, the flowchart is a flowchart for implementing a cluster management method according to an embodiment of the present application, where the method is applied to a cluster management node shown in fig. 1, and the method specifically includes: s21: the cluster management controller acquires cluster resources.
The cluster resource is used for describing attribute information of the k8s cluster to be managed, such as cloud data, a container network, management and control plane description information, working node description information, first call information and other customized attribute information of the k8s cluster to be managed. The cluster management node manages k8s clusters according to cluster resources, for example, a container network in the cluster resources, and manages internet access segments of the k8s clusters.
The cloud data of the k8s cluster to be managed is used for determining the name and version of the k8s cluster to be managed, including the name and the cluster version of the k8s cluster to be managed. For example, the name of the k8s cluster to be managed is cluster 1, and the cluster version is 1.28.1.
The container network of the k8s cluster to be managed is used for distributing internet protocol addresses in the container network address range for the container in the k8s cluster, and the internet protocol addresses comprise a container network segment, a service network segment and an API service monitoring port. For example, the container network segment is 192.168.0.0/16 and the server network segment is 10.96.0.0/16.
The control plane description information of the k8s cluster to be managed is used for describing the control plane of the k8s cluster. Including the number of management plane nodes, management plane specifications, and management plane Operating System (OS) image information. The number of management plane nodes is also called the number of management nodes, and is used for representing the number of management planes to be managed, for example, the number of management nodes is 1, and the number of management planes to be managed is 1. The management plane specification is also called a management node specification, for example, the management node specification is 32 cores 64g+200g.
The working node description information of the k8s cluster to be managed is used for describing working node information, including the number of working nodes, working node templates (including specifications, OS mirror images and the like), and managing the Internet protocol and ports of the surface.
The first call information of the k8s cluster to be managed is also called infrastructure call information, and is used for calling the infrastructure environment. Wherein the infrastructure environment is used to represent the operating environment of the k8s cluster, e.g. VMware environment, private cloud environment, public cloud environment. The infrastructure invocation information includes an infrastructure name and an infrastructure network. The infrastructure network is used to access an external IP (VIP or EIP) including API services, a node physical network ID, and a node physical subnetwork ID list.
The embodiment of the application is not particularly limited to the type of the cluster to be adjusted, and can be, for example, an authenticated k8s release cluster or a customized k8s cluster.
The cluster management controller may obtain cluster resources of the cluster to be adjusted in the following manner.
Referring to fig. 3A, a schematic diagram of a cluster resource definition interface according to an embodiment of the present application is shown. The user can set the cluster resources needed by the cluster to be adjusted in the cluster resource custom interface.
The cluster resource custom interface comprises resources such as cluster naming, infrastructure of associated references, cluster version, number of management nodes, specification of management nodes, operating System (OS) of management nodes, cluster access entrance, container network segment, cluster description, number of working nodes, specification of working nodes, OS of working nodes (used for describing OS image of working nodes), service network segment and the like. The user may enter or select cluster resources at a specified location. For example, the user may input the cluster resource of the cluster to be adjusted through an input box corresponding to the cluster resource. The user can select the pre-stored resources of the cluster management node in the drop-down input box corresponding to the cluster resources, including the infrastructure, the cluster version resources, the management node specification, the management node OS and the like. Wherein the infrastructure and cluster access entry describe first call information.
Exemplary description: the user inputs Cluster 1 in an input box corresponding to the Cluster name, selects an input box corresponding to the infrastructure, selects 1.28.1 in a drop-down input box corresponding to the Cluster version, inputs 1 in an input box corresponding to the number of management nodes, selects an "A server: 32 cores 64G+200G" in a drop-down input box corresponding to the number of management nodes, selects M in a drop-down input box corresponding to the management node OS, inputs 70.182.4.56 in an input box corresponding to the Cluster access entry, inputs 192.168.0.0/16 in an input box of the container network segment, and the like. At this time, the Cluster resource is specifically called Cluster 1, the infrastructure resource is the resource corresponding to the infracuction A, the Cluster version is 1.28.1, the number of management nodes is 1, the specification of the management nodes is A server, namely 32 cores 64G+200G, the OS mirror image of the management nodes is M, the Cluster access inlet is 70.182.4.56, and the container network segment is 192.168.0.0/16.
In one possible implementation, the cluster resource customization interface also displays the existing cluster resources. For example, after the user inputs the Cluster name as Cluster 1 and the infrastructure selects an infra structure A, other Cluster resources of the Cluster resource custom interface are automatically filled to indicate that the Cluster 1 Cluster already exists, and the user can perform modification or deletion operations, such as modifying a container network segment, accessing a network segment, and the like, on the Cluster resources corresponding to the existing Cluster 1 Cluster.
In yet another possible implementation manner, referring to fig. 3B, a schematic diagram of a cluster resource adjustment mode is provided in an embodiment of the present application.
Fig. 3B (a) shows a schematic display diagram of a cluster resource source definition interface when a user inputs the cluster resource of fig. 3A and clicks on the next operation and the cluster resource corresponding to the cluster resource already exists. For example, display "is a cluster corresponding to a cluster resource already present to perform a delete operation? ", and shows the corresponding choices" yes "and" no ". And when the user selects 'yes', the cluster management node performs deleting operation on the clusters corresponding to the cluster resources. Otherwise, the cluster in which the cluster management node already exists is the needed cluster.
Fig. 3B (B) shows a schematic diagram of a display of the cluster resource definition interface when the cluster resource corresponding to the cluster resource does not exist after the user inputs the cluster resource of fig. 3A and clicks the next operation. For example, display "does a cluster corresponding to a cluster resource already not exist and do a create operation performed? ", and shows the corresponding choices" yes "and" no ". When the user selects 'yes', the cluster management node performs cluster creation operation on the cluster resource. If the user selects no, the adjustment operation is performed on the cluster resources existing in the cluster management node based on the preset specification, for example, the cluster resources in the cluster corresponding to the same infrastructure are adjusted to meet the cluster resources acquired by the user executing the operation in fig. 3A.
It should be noted that, in the cluster resource definition interface, the user may input all cluster resources, or the user may input part of cluster resources, and embodiments of the present application are not limited specifically.
In the embodiment of the present application, the cluster management controller 102 monitors the cluster resources in the cluster resource custom interface, and when at least one cluster resource is monitored to change, the cluster management controller 102 acquires the cluster resources from the cluster resource custom interface. When no cluster resource change is monitored, it means that the user does not need to adjust the existing cluster resources, and at this time, the cluster management node 101 does not perform subsequent operations.
S22: and the cluster management controller acquires infrastructure resources to be referenced according to the cluster resources.
The infrastructure resources to be referenced refer to infrastructure resources corresponding to the infrastructure environment to be referenced. The infrastructure environment to be referred to refers to an infrastructure environment called by first calling information in cluster resources. For example, the first call information shown in fig. 3 is an infrastructure name of an infrastructure a, and the infrastructure resource to be referred to is an infrastructure resource corresponding to the infrastructure environment of the infrastructure a.
An infrastructure resource is a set of configurations that have the same role and that are used to describe the configuration information of the infrastructure environment. The infrastructure resources include: authentication credentials of the infrastructure, server addresses of infrastructure management, extensions and custom parameters of the infrastructure (e.g., infrastructure item ID, supported cluster release version, supported node specification list, and supported node operating system list). In addition, the infrastructure resource also comprises second calling information, wherein the second calling information is information for calling the provisioning plugin. For example, the second call information configures resources for the provisioning plugin, where the provisioning plugin configures resources to describe configuration information of the provisioning plugin.
The infrastructure resources in the embodiment of the application can be resources corresponding to the existing infrastructure environment in the cluster management node, and can also be resources corresponding to the infrastructure environment to be added by an infrastructure manager according to the needs. The embodiment of the application is not particularly limited to the infrastructure environment corresponding to the infrastructure resources.
In an embodiment of the present application, the cluster management controller 102 may match an infrastructure resource to be referenced from at least one infrastructure resource according to the first call information in the cluster resource. For example, the cluster management node includes a plurality of infrastructure environments, infrastructure environment a, infrastructure environment B, and infrastructure environment C, respectively. Infrastructure environments A, B and C are used to represent different infrastructure environments. The infrastructure name of the first call information is a name corresponding to the infrastructure environment a, and the cluster management node may match the infrastructure environment to be referred to as the infrastructure environment a, and obtain the infrastructure resource to be referred to as the infrastructure resource of the infrastructure environment a.
Further, cluster management controller 102 activates infrastructure management controller 103. Specifically, the cluster management controller 102 sends a startup instruction to the infrastructure management controller 103, the startup instruction includes first call information, the infrastructure management controller 103 starts up after receiving the startup instruction, and matches infrastructure resources to be referenced from the plurality of infrastructure resources by using the first call information in the startup instruction. The infrastructure management controller 103 returns the matched infrastructure resources to be referenced to the cluster management controller 102, so that the cluster management controller 102 calls the provisioning plugin 104 according to the information in the infrastructure resources to be referenced.
Further, the infrastructure management controller 103 is configured to monitor the infrastructure resources to be referenced, and when the infrastructure resources to be referenced change, the infrastructure management controller 103 sends the monitored information to the cluster management controller 102 for adjustment. In the embodiment of the application, different resources are managed by using different controllers, so that the system manager can manage the infrastructure, and the cluster manager can manage the clusters. For example, when an infrastructure administrator manages an infrastructure, the infrastructure management controller 103 may be notified, and the infrastructure management controller 103 directly manages the infrastructure environment.
S23: and the cluster management controller acquires the standby plug-in according to the second call information in the infrastructure resources to be referred.
The standby plug-in is used for managing the k8s cluster to be managed based on a preset cluster management mechanism, and comprises a cluster management node or steps required to be executed by an administrator for accessing various basic resources and the like. The standby plug-in refers to a standby plug-in corresponding to the second call information.
The provisioning plugin, also known as a provisioning plugin, is used to support different infrastructure architectures, and different cluster management mechanisms.
For example, a provisioning plug-in (abbreviated as CAPI provisioning plug-in) corresponding to Cluster API technology is used for supporting the CAPI management node. The CAPI management node includes: and providing programs (called CAPI & Providers for short) corresponding to the CAPI framework and the infrastructure, and realizing the arrangement actions of cluster creation, deletion, capacity expansion, capacity shrinkage and the like based on the CAPI specification. The Terraform technology corresponds to the provisioning plug-in being Terraform provisioning plug-in. Terraform is configured to support Terraform management nodes, and Terraform management nodes comprise Terraform engines and plugins (including corresponding provider programs of infrastructure), which are called Terraform & Plugins for short, so as to implement scheduling actions such as cluster creation, deletion, capacity expansion and capacity shrinkage based on Terraform specifications.
Further, a new OpenShift provisioning plugin is supported, which supports managing RedHat OpenShift container clusters.
In the embodiment of the application, the cluster management controller can match the standby plug-in to be referred from at least one standby plug-in according to the second call information in the infrastructure resources to be referred. For example, the cluster management node includes a plurality of provisioning plugins, namely provisioning plugin a, provisioning plugin B, and provisioning plugin C. The provisioning plugin a, the provisioning plugin B and the provisioning plugin C are used to represent different provisioning plugins. For example, the second call information is configuration resources of the to-be-referenced provisioning plugin, and the cluster management controller may obtain the to-be-referenced provisioning plugin from the provisioning plugin a, the provisioning plugin B, and the provisioning plugin C based on the configuration resources of the to-be-referenced provisioning plugin.
In an embodiment of the present application, cluster management controller 102 first obtains configuration resources of the provisioning plug-in to be referenced from infrastructure resources to be referenced. The ready-to-reference plug-in 104 is then loaded to manage the k8s clusters to be managed.
S24: and calling a standby plug-in to be referred to and managing the cluster.
It should be noted that, before managing the cluster, the to-be-referenced backup plug-in is first connected to the corresponding infrastructure environment based on the acquired to-be-referenced infrastructure resource, so as to implement cluster management in the corresponding infrastructure environment. For example, the infrastructure resource to be referenced is a resource of infrastructure environment a, then the provisioning plug-in to be referenced needs to be connected into infrastructure environment a.
Then, the cluster management node uses an infrastructure supported by the to-be-referenced provisioning plugin based on the to-be-referenced provisioning plugin, adopts different cluster management mechanisms, and integrates cluster resources to manage the k8s cluster to be managed.
Exemplary description: referring to FIG. 4, a schematic diagram of a management cluster based on a provisioning plug-in to be referenced is shown. The to-be-referenced provisioning plugin is a CAPI provisioning plugin, and the CAPI provisioning plugin supports CAPI & Providers.
The standby plug-in sends a management instruction to the CAPI framework. The management instruction carries cluster resources.
Cluster APIOperators in the CAPI framework listens to and discovers the cluster resources and nodes (also called machines) that make up the cluster that are carried in the management instructions. The Cluster resources shown in fig. 4 are specifically Cluster1 resources, and Cluster nodes forming Cluster1 correspond to Machine 1 resources. Cluster APIOperators convert Cluster1 resources and Machine 1 resources into descriptions that can be identified by CAPI plug-ins, for example, cluster1 resources are converted into Provider Cluster API-corresponding Provider Cluster1 and Machine 1 resources are converted into Machine 1-corresponding Provider (Provider Machine 1).
After the CAPI plug-in monitors Cluster APIOperators the conversion complete operation, it obtains Provider Cluster 1 and Provider Machine 1. After a program plug-in (simply called Provider plug-in) listens for and discovers Provider Cluster 1 and Provider Machine 1, it connects and manages the infrastructure to be referenced environment in which the Cluster to be managed is managed. For example, a k8s cluster is created in the Vmware infrastructure environment.
Further, because it takes a long time to manage the cluster to be managed, the standby plug-in is further configured to monitor the management state of the cluster, and synchronize the monitored cluster management state to the cluster resource, so that the cluster administrator knows the management state of the cluster. For example, after the backup plugin to be referenced monitors that k8s cluster creation is successful, the k8s cluster creation is successfully synchronized to the cluster resource, and a creation success identifier is displayed on a display interface.
Therefore, the k8s Cluster can be managed uniformly by utilizing the existing Cluster API technology and the like corresponding to the to-be-referenced backup plug-in.
In addition, in order to better explain the cluster management manner provided by the embodiment of the present application, the embodiment of the present application provides fig. 5, which fully describes the cluster management node and the management manner described above. Referring to fig. 5, a complete cluster management node architecture diagram is provided in an embodiment of the present application. The cluster description shown in fig. 5 is used to represent cluster resources and the infrastructure resource description is used to describe infrastructure resources.
The cluster management controller listens for and discovers cluster description 1. The Cluster description 1 is used for describing Cluster resources corresponding to the Cluster 1. Cluster resource association corresponding to Cluster 1 references infrastructure description A. That is, cluster resources are created on an infrastructure resource basis. Infrastructure description a is used to describe infrastructure resources corresponding to infrastructure environment-a. In addition, infrastructure description a also associates reference CAPI provisioning plug-in 401 configuration resources. The CAPI provisioning plug-in uses provisioning to configure resources.
The cluster management controller 102 uses the infrastructure description a to send a start instruction to the infrastructure management controller 103 to start the infrastructure management controller 103. The startup instruction carries first call information corresponding to the infrastructure description a, and the infrastructure management controller 103 may monitor and discover the infrastructure description a according to the first call information carried by the startup instruction. After the infrastructure management controller 103 listens for and discovers the infrastructure description a, the infrastructure description a is returned to the cluster management controller.
Cluster management controller 102 loads and runs a caps provisioning plug-in 401 using caps provisioning plug-in configuration resources according to the infrastructure description a association referenced caps provisioning plug-in configuration resources. Provisioning plug-A401 queries and connects to infrastructure environment-A.
It is to be appreciated that the cluster management node includes a plurality of infrastructure environments, and the provisioning plug-in-a 401 matches the infrastructure environment-a from the plurality of infrastructure environments based on the acquisition of infrastructure resources, the provisioning plug-a 401 and the infrastructure environment-a, such that the caps provisioning plug-in 401 manages k8s clusters in the infrastructure environment-a.
In an alternative implementation, CAPI provisioning plug-in 401 sends a create instruction to the CAPI framework. The create instruction carries Cluster 1 resource. Cluster APIOperators 402 in the CAPI framework monitors and discovers Cluster 1 resources and Machine 1 resources carried in the management instruction, and converts the Cluster 1 resources and the Machine 1 resources into CAPI plug-ins capable of identifying Provider Cluster 1 and Provider Machine 1.
After CAPI plug-in listens and discovers Cluster APIOperators that the transition is complete, it obtains Provider Cluster1 and Provider Machine 1.Provider plug-in-1 listens for and discovers Provider Cluster1 and Provider Machine1, then connects and manages infrastructure environment-A, creating Cluster1 in infrastructure environment-A.
In another alternative implementation, CAPI provisioning plug-in 401 sends a delete instruction to the CAPI frame. The delete instruction carries Cluster 1 resource and Machine 1 resource. Cluster APIOperators 402 in the CAPI framework monitors and discovers Cluster 1 resources and Machine 1 resources carried in the management instruction, and converts the Cluster 1 resources and the Machine 1 resources into CAPI plug-ins capable of identifying Provider Cluster 1 and Provider Machine 1.
CAPI plug-in 403 listens for and discovers Cluster APIOperators that 402 has completed the conversion operation and obtains Provider Cluster 1 and Provider Machine 1.Provider plug-in-1 404 listens for and discovers Provider Cluster 1 and Provider Machine 1, then connects and manages infrastructure environment-A, and deletes Cluster 1 from infrastructure environment-A.
Next, the caps provisioning plug-in 401 listens to the Cluster 1 create or delete status and synchronously updates the monitored status into Cluster description 1. For example, the creation success identification may be displayed on a cluster resource customization interface.
The embodiment of the application introduces a provisioning (provisioning) plug-in, and uniformly converts node requirements and infrastructure descriptions of the cluster into calls and requests for the infrastructure management back end. Thus, unified k8s cluster management is facilitated.
The embodiment of the application provides a cluster management method, which is characterized in that cluster resources and infrastructure resources are distinguished, first calling information is utilized to call infrastructure resources to be referred, configuration resources of configuration plug-ins to be referred in the infrastructure resources to be referred are utilized to call configuration plug-ins to be referred, and finally, the configuration plug-ins to be referred are utilized to manage clusters based on a preset cluster management mechanism, and the clusters are managed by combining the cluster resources. That is, the infrastructure resources are intermediaries for acquiring the provisioning plug-in, during which the infrastructure resources do not participate in the job. That is, when the infrastructure changes, the cluster management flow is unchanged since the first call information and the configuration resources of the provisioning plugin to be referenced are unchanged, despite the change in infrastructure resources. Therefore, the cluster management method provided by the embodiment of the application is a unified cluster management mechanism facing to the user. Furthermore, the embodiment of the application uniformly divides the bottom physical resources into cluster resources and infrastructure resources, so that a user can independently manage clusters or infrastructure. Therefore, the cluster management method provided by the embodiment of the application can support clear weight and domain division control.
On the other hand, the provisioning plugin provided by the embodiment can support various heterogeneous infrastructures to meet diversified cluster creation requirements. The following description will take a cluster management node including a CAPI provisioning plug-in and a Terraform provisioning plug-in as an example.
Referring to fig. 6, another schematic diagram of a k8s cluster management node according to an embodiment of the present application is shown. The k8s cluster management node includes kube-apiserver 501 in addition to the k8s cluster management control and infrastructure management controller shown in fig. 1.kube-apiserver 501 is a k8s API server, which correspondingly provides APIs for clients and other components to call. kube-apiserver 501 are used to authenticate, authenticate and manage the resources of the k8s cluster for user requests.
The user submits a custom resource to kube-apiserver 501, where the custom resource may be a custom resource of the k8s cluster or a custom resource of the infrastructure. kube-apiserver 501 authenticate and authenticate custom resources submitted by users and notify the k8s cluster management controller after persistence.
In the embodiment of the application, the k8s cluster management controller is connected kube-apiserver 501, and after the k8s cluster management controller 102 receives the notification of kube-apiserver 501, the infrastructure management controller 103 is started, and the infrastructure management controller 103 is connected and checks the infrastructure environment. Or after the k8s cluster management controller 102 acquires the k8s cluster resources and the infrastructure description of the k8s cluster resource association reference, starting the infrastructure management controller 103, and the infrastructure management controller 103 monitors and discovers the infrastructure description of the k8s cluster resource association reference to drive the corresponding provisioning plugin.
In an embodiment of the application, the provisioning plugins include CAPI provisioning plugins 401 and Terraform provisioning plugin 504. Wherein CAPI provisioning plug-in 401 corresponds to CAPI & Providers 03 and terraform provisioning plug-in 504 corresponds to Terraform & Plugins 502.
When the infrastructure resource is the resource corresponding to infrastructure environment a, the k8s cluster management controller loads and runs the caps provisioning plug-in 401.CAPI provisioning plug-in 401 invokes CAPI & Providers03 in the k8s Cluster management backend, converts "k8s Cluster" and "infrastructure" into resources such as templates, provider in Cluster APIs, and adjusts work k8s Cluster x in infrastructure environment A.
When the infrastructure resource is the resource corresponding to infrastructure environment B, the k8s cluster management controller loads and runs Terraform the provisioning plug-in 504.Terraform the provisioning plug-in 504 invokes Terraform & Plugins 502 in the k8s cluster management backend, converting "k8s clusters" and "infrastructure" into resources in Terraform, plug in description and executing the tuning work k8s cluster y in infrastructure environment B.
It should be noted that the k8s cluster management controller may also be connected to other provisioning plugins, such as a custom provisioning plugin. Wherein, the custom provisioning plugin interfaces and adapts to the third party infrastructure environment, and manages and arranges the bottom physical resources required by the k8s cluster in the provisioning plugin.
Thus, the k8s cluster management node provided by the embodiment of the application can flexibly expand and support a plurality of existing k8s cluster management mechanisms through the provisioning plug-in, can support a plurality of heterogeneous infrastructures, and meets the requirement of k8s cluster management diversification.
The infrastructure management and the k8s cluster management are described below by taking the infrastructure manager side and the k8s cluster manager side as examples.
Referring to fig. 7, an interaction diagram of an infrastructure administrator managing an infrastructure is provided in an embodiment of the present application.
S71: infrastructure administrators submit infrastructure resources.
An infrastructure administrator refers to an administrator with rights to manage the infrastructure.
In one possible implementation, an administrator performs a login operation based on identity information at a login interface corresponding to the k8s cluster management node. The embodiment of the application is not particularly limited to the identity information, for example, the identity information can be a login account number and a password, and can also be face information or voice information of login. The k8s cluster management controller acquires the identity information of the administrator and judges whether the administrator is an infrastructure administrator or not. If the administrator is an infrastructure administrator, entering an infrastructure resource custom interface.
At this time, the k8s cluster management node stores the identity information of the infrastructure manager in advance, and determines that the manager is the infrastructure manager when the identity information of the manager is identical to the pre-stored identity information of the infrastructure manager.
In another possible implementation manner, the login interface corresponding to the k8s cluster management node displays an administrator identity option, which specifically includes an "infrastructure administrator" option and a "k8s cluster administrator" option. The administrator selects the option of "infrastructure administrator" on the login interface, and determines the identity of the administrator as the infrastructure administrator.
Infrastructure administrators can enter, modify, delete infrastructure resources at an infrastructure resource customization interface to define an infrastructure environment.
S72: kube-apiserver notify the infrastructure management controller to adjust the infrastructure environment.
Kube-apiserver authenticates the custom resources of the infrastructure submitted by the infrastructure administrator, determines whether the custom resources meet the authentication mechanism supported by the k8s cluster, and if so, enters authentication. If the user-defined resource does not meet the access right, stopping executing the subsequent operation.
Kube-apiserver authenticate the custom resource, determine if the custom resource meets the admission rules, and if so, the custom resource can enter the infrastructure environment managed by the infrastructure management controller. If the user-defined resource does not meet the access right, stopping executing the subsequent operation.
After authentication and authorization pass, and after persistence, the infrastructure management controller is notified, causing the infrastructure management controller to adjust the infrastructure environment. Specifically, the infrastructure environment is adjusted by adding and modifying and deleting "infrastructure" custom extended resources.
In an embodiment of the present application, the infrastructure management controller is registered in kube-apiserver in advance. As such, kube-apiserver notify the infrastructure management controller upon receiving the custom resources submitted by the infrastructure administrator.
S73: the infrastructure management controller adjusts the infrastructure environment.
The infrastructure management controller adjusts the infrastructure environment based on the custom resources of the infrastructure submitted by the infrastructure administrator.
S74: the infrastructure management controller connects and checks the infrastructure environment.
The infrastructure management controller connects the adjusted infrastructure environment. In addition, the infrastructure management controller may also check the infrastructure environment, for example, check whether the server address and the username password are valid, if so, indicating that the infrastructure environment adjustment is successful, otherwise, indicating that the infrastructure environment adjustment is failed. Thus, through the inspection of the infrastructure management controller, the k8s cluster management node can be ensured to normally operate in the infrastructure environment.
S75: the infrastructure management controller updates the infrastructure status through kube-apiserver,
The infrastructure management controller sends the updated status of the infrastructure environment to kube-apiserver, through kube-apiserver to the display interface, and presents the updated status of the infrastructure environment to the infrastructure administrator.
That is, the infrastructure manager can manage the infrastructure through the infrastructure management controller, and k8s cluster management is not involved.
Referring to fig. 8, the interaction diagram of k8s cluster creation by a k8s cluster administrator is provided in an embodiment of the present application.
S81: the k8s cluster administrator submits cluster resources for the k8s cluster.
The k8s cluster administrator refers to an administrator with the right to manage the k8s cluster.
In one possible implementation, the administrator performs a login operation on a login interface corresponding to the k8s cluster management node, for example, login based on an account number and a password, or login through voice, or the like. The k8s cluster management controller acquires the identity information of the administrator and judges whether the administrator is a k8s cluster administrator. If the administrator is a k8s cluster administrator, entering a k8s cluster resource custom interface.
At this time, the k8s cluster management node stores the identity information of the cluster manager in advance, and determines that the manager is the cluster manager when the identity information of the manager is identical to the pre-stored identity information of the cluster manager.
In another possible implementation manner, the login interface corresponding to the k8s cluster management node displays an administrator identity option, which specifically includes an "infrastructure administrator" option and a "k8s cluster administrator" option. And the administrator selects a 'k 8s cluster administrator' option on a login interface, and determines the identity of the administrator as a base k8s cluster administrator.
As shown in (B) of fig. 3B, the k8s cluster administrator may input custom extended resources at the k8s cluster resource custom interface for creating k8s cluster resources.
S82: kube-apiserver notify the k8s cluster management controller.
Kube-apiserver authenticates cluster resources submitted by a cluster administrator, determines whether the cluster resources meet an authentication mechanism supported by a k8s cluster, and enters authentication if the cluster resources meet the requirements. If the access permission is not met, the cluster resource does not have the access permission, and the subsequent operation is stopped.
Kube-apiserver authenticates the cluster resources and determines whether the cluster resources meet the admission rules, and if so, the custom resources can enter a cluster management controller to manage k8s clusters. If the user-defined resource does not meet the access right, stopping executing the subsequent operation.
After passing the authentication and authorization, and after persistence, the cluster management controller is notified to adjust the infrastructure environment. Specifically, the infrastructure environment is adjusted by adding and modifying and deleting "infrastructure" custom extended resources.
It should be noted that the k8s cluster management controller and the k8s cluster management backend, such as CAPI & & Provider, are pre-registered on kube-apiserver. Thus, after kube-apiserver authentication is successful, the k8s cluster management controller is informed to perform corresponding operation.
S83: and the k8s cluster management controller acquires infrastructure resources associated with the k8s cluster according to the cluster resources of the k8s cluster.
S84: and the k8s cluster management controller loads and invokes a corresponding provisioning plug-in of the infrastructure resources to provision the k8s cluster resources.
S85: and the provisioning plugin realizes the k8s cluster according to the arrangement and configuration of the k8s cluster management back end, and executes a k8s cluster arrangement flow.
The k8s cluster arrangement flow comprises the steps of configuring a k8s cluster network, preparing k8s cluster resources and the like. The orchestration and configuration of the k8s cluster management backend is done in an infrastructure environment. That is, the k8s cluster management backend needs to connect and manage the infrastructure environment.
S86: and the k8s cluster management controller sends a query instruction to the provisioning plugin, and the query instruction is used for querying the state of k8s cluster resources.
The k8s cluster management controller sends a query instruction to the provisioning plugin to query the state of k8s cluster resources. The query instruction is also called a query k8s cluster resource status instruction. The k8s cluster resource state refers to the scheduling progress of the k8s cluster resource, such as scheduling 80%, scheduling completion, etc.
Illustratively, after receiving the acquisition instruction, the k8s cluster management controller periodically sends the acquisition instruction to the provisioning plug-in for querying the provisioning progress of the k8s cluster resource. For example, a fetch instruction is sent to the provisioning plug-in every 1 ms.
S87: and the provisioning plugin queries the k8s cluster resource state from the k8s cluster management back end according to the query instruction.
And after receiving the query instruction sent by the k8s cluster management controller, the provisioning plugin queries the k8s cluster resource state from the k8s cluster management back end. The k8s cluster management back end corresponds to a provisioning plugin, and the provisioning plugin corresponds to an infrastructure environment.
Illustratively, the provisioning plugin listens for the k8s cluster resource status of the k8s cluster management backend, and sends the result of the listening to the k8s cluster management controller.
The execution sequence of step S86 and step S87 is not unique, and S86 may be executed first, S87 may be executed later, S87 may be executed first, and S86 may be executed later, or both may be executed simultaneously. The application is not particularly limited.
S88: the provisioning plug-in synchronizes the acquired k8s cluster resource state to the k8s cluster management controller.
S89: the k8s cluster management controller sends the acquired k8s cluster resource status to kube-apiserver.
In addition, the k8s cluster administrator may send query instructions to kube-apiserver, kube-apiserver to expose the current k8s cluster resource status to the k8s cluster administrator.
As can be clearly determined from the contents shown in fig. 7 and fig. 8, the k8s cluster management manner provided by the embodiment of the present application provides a unified k8s cluster description and infrastructure description, and supports multiple heterogeneous infrastructures through a provisioning (provisioning) plug-in, so that a user can manage k8s clusters conveniently and self-service. In addition, by separating the descriptions of k8s clusters and infrastructure objects, clear weight-division and domain-division control is supported, namely, a system manager manages the infrastructure and a k8s cluster manager manages the k8s clusters in a self-service manner.
In addition, the embodiment of the application provides a cluster management device. Referring to fig. 9, the structure of a cluster management device according to an embodiment of the present application is shown. The device comprises:
A cluster obtaining unit 801, configured to obtain a cluster resource, where the cluster resource includes first call information, and the first call information is call information of an infrastructure environment to be referred to;
An infrastructure obtaining unit 802, configured to obtain infrastructure resources to be referenced corresponding to an infrastructure environment to be referenced according to first call information in the cluster resources, where the infrastructure resources to be referenced are used to represent configuration information of the infrastructure environment to be referenced; the infrastructure resources to be referenced include second call information; the second call information is call information of the to-be-referenced backup plug-in;
And the calling unit 803 is used for calling the standby plugin to be referred to perform cluster management according to the second calling information in the infrastructure resource to be referred to.
In one example, the second call information is a to-be-referenced provisioning plug-in resource, and the call unit is specifically configured to:
Matching the to-be-referenced provisioning plugin from at least one provisioning plugin according to-be-referenced provisioning plugin resources, wherein the to-be-referenced provisioning plugin resources are used for describing attribute information of the to-be-referenced provisioning plugin; calling the matched standby plug-in to be referred; invoking a management node to be referenced by utilizing a provisioning plug-in to be referenced; the to-be-referenced preparation plug-in has a corresponding relation with the to-be-referenced management node; and performing cluster management by using the management node to be referred.
Optionally, if the to-be-referenced backup plug-in is a Cluster application program interface Cluster API backup plug-in, calling a Cluster API management node by using the Cluster API backup plug-in; the Cluster API management node is used for managing clusters based on the Cluster API management specification and Cluster resources; cluster management is performed by using Cluster API management nodes.
Optionally, if the to-be-referenced provisioning plugin is Terraform provisioning plugin, invoking Terraform the management node by using the Terraform provisioning plugin; terraform the management node is used for managing clusters based on Terraform specification and cluster resources; cluster management is performed using Terraform management node management.
Optionally, if the to-be-referenced provisioning plugin is OpenShift provisioning plugin, invoking RedHat OpenShift the container cluster node by using the OpenShift provisioning plugin; cluster management is performed using RedHat OpenShift container cluster node management.
In another example, the apparatus further comprises: the monitoring unit is used for monitoring the management state of the cluster by the standby plug-in to be quoted; and the standby plug-in to be referenced adjusts cluster resources according to the monitored management state of the cluster.
The apparatus further comprises a response unit for responding to the target infrastructure resources submitted at the display interface; adjusting an infrastructure environment corresponding to the target infrastructure resource according to the target infrastructure resource; determining whether the server address and the user name password of the adjusted infrastructure environment are valid; if so, determining that the adjustment is successful. Thereby, the infrastructure environment is ensured to be effective.
In yet another possible implementation, the to-be-referenced provisioning plug-in obtains to-be-referenced infrastructure resources; the to-be-referenced provisioning plugin connects to the to-be-referenced infrastructure environment according to the to-be-referenced infrastructure resources. Hereby is achieved that a k8s cluster is created in the infrastructure environment to which the infrastructure resources correspond.
In another possible implementation manner, the response unit is further configured to, when the cluster resource submitted by the interface is displayed, authenticate the cluster resource through kube-apiserver, and determine whether the cluster resource accords with an authentication mechanism of the cluster; if the authentication mechanism of the cluster is met, the cluster resource is authenticated through kube-apiserver, whether the cluster resource meets the admission rule is determined, and if so, the cluster resource is obtained.
As shown in fig. 10, an embodiment of the present application further provides a computing device 900, including a processor 901 and a memory 903, where the memory 903 is electrically connected to the processor 901; the memory 903 is used to store program instructions for the cluster management method involved in the above embodiments; the processor 901 is configured to call up a corresponding part of the program instructions so that the computing device may perform the cluster management method referred to in the above embodiments.
Embodiments of the present application also provide a computer readable storage medium having stored thereon computer instructions which, when executed on a computing device, cause the computing device to perform the cluster management method referred to in the above embodiments.
For the explanation of the relevant content and the description of the beneficial effects in any of the above-mentioned computer-readable storage media, reference may be made to the above-mentioned corresponding embodiments, and the description thereof will not be repeated here.
Embodiments of the present application provide a computer program product which, when run on a computer, causes the computer to perform the cluster management method referred to in the above embodiments.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using a software program, it may be wholly or partly implemented in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, the processes or functions in accordance with embodiments of the present application are produced in whole or in part.
The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by a wired (e.g., coaxial cable, fiber optic, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device including one or more servers, data centers, etc. that can be integrated with the available medium. The usable medium may be a magnetic medium (e.g., a floppy disk, a magnetic tape), an optical medium (e.g., a digital video disc (digital video disc, DVD)), or a semiconductor medium (e.g., a Solid State Disk (SSD)), or the like.
The above description is only of the preferred embodiment of the present application, and is not intended to limit the present application in any way. While the application has been described with reference to preferred embodiments, it is not intended to be limiting. Any person skilled in the art can make many possible variations and modifications to the technical solution of the present application or modifications to equivalent embodiments using the methods and technical contents disclosed above, without departing from the scope of the technical solution of the present application. Therefore, any simple modification, equivalent variation and modification of the above embodiments according to the technical substance of the present application still fall within the scope of the technical solution of the present application.

Claims (10)

1. A method of cluster management, the method comprising:
acquiring cluster resources, wherein the cluster resources comprise first call information, and the first call information is call information of an infrastructure environment to be referred;
Acquiring infrastructure resources to be referenced corresponding to the infrastructure environment to be referenced according to first call information in the cluster resources, wherein the infrastructure resources to be referenced are used for representing configuration information of the infrastructure environment to be referenced; the infrastructure resources to be referenced include second call information; the second call information is call information of the to-be-referenced backup plug-in;
and calling the standby plug-in to be referred to for cluster management according to the second calling information in the infrastructure resources to be referred to.
2. The method of claim 1, wherein the second call information is a provisioning plug-in resource to be referenced, and the calling the provisioning plug-in to be referenced for cluster management according to the second call information in the infrastructure resource to be referenced comprises:
Matching the to-be-referenced provisioning plugin from the at least one provisioning plugin according to the to-be-referenced provisioning plugin resource, wherein the to-be-referenced provisioning plugin resource is used for describing attribute information of the to-be-referenced provisioning plugin;
calling the matched standby plug-in to be referred;
invoking a management node to be referenced by using the preparation plug-in to be referenced; the to-be-referenced preparation plug-in has a corresponding relation with the to-be-referenced management node;
And carrying out cluster management by utilizing the management node to be referred.
3. The method according to claim 2, wherein if the to-be-referenced provisioning plugin is a Cluster application program interface Cluster API provisioning plugin, the invoking the to-be-referenced management node with the to-be-referenced provisioning plugin includes:
Calling a Cluster API management node by using the Cluster API provisioning plug-in; the Cluster API management node is used for managing the Cluster based on a Cluster API management specification and the Cluster resource;
the cluster management by using the management node to be referenced comprises the following steps:
and carrying out Cluster management by using the Cluster API management node.
4. The method of claim 2, wherein if the to-be-referenced provisioning plugin is Terraform provisioning plugin, the invoking the to-be-referenced management node with the to-be-referenced provisioning plugin comprises:
invoking Terraform a management node using the Terraform provisioning plug-in; the Terraform management node is to manage the cluster based on Terraform specification and the cluster resources;
the cluster management by using the management node to be referenced comprises the following steps:
And performing cluster management by utilizing Terraform management node management.
5. The method of claim 2, wherein if the to-be-referenced provisioning plugin is OpenShift provisioning plugin, the invoking the to-be-referenced management node with the to-be-referenced provisioning plugin comprises:
utilizing OpenShift to prepare plug-in calls RedHat OpenShift container cluster nodes;
the cluster management by using the management node to be referenced comprises the following steps:
and performing cluster management by using the RedHat OpenShift container cluster node management.
6. The method according to claim 1, wherein the method further comprises:
The standby plug-in to be referred monitors the management state of the cluster;
and the standby plug-in to be referenced adjusts the cluster resources according to the monitored management state of the cluster.
7. The method according to claim 1, wherein the method further comprises:
responding to the target infrastructure resources submitted at the display interface;
adjusting an infrastructure environment corresponding to the target infrastructure resource according to the target infrastructure resource;
Determining whether the server address and the user name password of the adjusted infrastructure environment are valid;
If so, determining that the adjustment is successful.
8. The method according to any one of claims 1-7, further comprising:
Responding to the cluster resource submitted by a display interface, and authenticating the cluster resource through kube-apiserver to determine whether the cluster resource accords with an authentication mechanism of the cluster;
If the authentication mechanism of the cluster is met, authenticating the cluster resource through kube-apiserver, determining whether the cluster resource meets an admission rule, and if so, acquiring the cluster resource.
9. The method of claim 1, wherein after the invoking the to-be-referenced provisioning plugin, the method further comprises:
The to-be-referenced provisioning plugin acquires the to-be-referenced infrastructure resources;
The to-be-referenced provisioning plugin connects the to-be-referenced infrastructure environment according to the to-be-referenced infrastructure resource.
10. A computing device, the computing device comprising a memory and a processor; the memory is coupled to the processor;
The memory is used for storing program instructions; the processor is configured to invoke the program instructions to cause the computing device to perform the method of any of claims 1-9.
CN202311870698.8A 2023-12-29 2023-12-29 Cluster management method and computing device Pending CN117950798A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311870698.8A CN117950798A (en) 2023-12-29 2023-12-29 Cluster management method and computing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311870698.8A CN117950798A (en) 2023-12-29 2023-12-29 Cluster management method and computing device

Publications (1)

Publication Number Publication Date
CN117950798A true CN117950798A (en) 2024-04-30

Family

ID=90802917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311870698.8A Pending CN117950798A (en) 2023-12-29 2023-12-29 Cluster management method and computing device

Country Status (1)

Country Link
CN (1) CN117950798A (en)

Similar Documents

Publication Publication Date Title
US10827008B2 (en) Integrated user interface for consuming services across different distributed networks
US10148493B1 (en) API gateway for network policy and configuration management with public cloud
WO2018095416A1 (en) Information processing method, device and system
US9569266B2 (en) Apparatus, method, and computer program product for solution provisioning
JP7217816B2 (en) Program orchestration for cloud-based services
US10917294B2 (en) Network function instance management method and related device
JP6190949B2 (en) Automatic configuration of access to virtual infrastructure manager by virtual network function manager
WO2016037479A1 (en) Method, device and system for optimizing virtualized network function (vnf)
EP3603028B1 (en) Methods and systems for providing wake-on-demand access to session servers
JP2016500854A (en) LDAP-based multi-customer in-cloud identity management system
US11281476B2 (en) Plugin framework to support zero touch management of heterogeneous infrastructure elements across distributed data centers
WO2014169870A1 (en) Virtual network element automatic loading and virtual machine ip address acquisition method and system, and storage medium
US20210136004A1 (en) Cloud service for cross-cloud operations
CN116848528A (en) Techniques for automatically configuring minimum cloud service access rights for container applications
CN109857464B (en) System and method for platform deployment and operation of mobile operating system
US10785056B1 (en) Sharing a subnet of a logically isolated network between client accounts of a provider network
CN113923023B (en) Authority configuration and data processing method, device, electronic equipment and medium
KR101544487B1 (en) Virtual desktop service system for client that has multiple user accounts
US10979416B2 (en) System and method for authentication in a public cloud
CN114270785A (en) Setting device, communication system, setting method, and program
Parák et al. Challenges in achieving iaas cloud interoperability across multiple cloud management frameworks
CN117950798A (en) Cluster management method and computing device
Hao Edge Computing on Low Availability Devices with K3s in a Smart Home IoT System
US20230337064A1 (en) Stretching clusters for radio access networks across multiple availability zones
US20230337063A1 (en) Cellular system observability architecture

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