CN114938394A - Cross-cluster network control method, device, equipment and storage medium - Google Patents

Cross-cluster network control method, device, equipment and storage medium Download PDF

Info

Publication number
CN114938394A
CN114938394A CN202210436826.7A CN202210436826A CN114938394A CN 114938394 A CN114938394 A CN 114938394A CN 202210436826 A CN202210436826 A CN 202210436826A CN 114938394 A CN114938394 A CN 114938394A
Authority
CN
China
Prior art keywords
workload
cluster
internet protocol
resource units
network
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
CN202210436826.7A
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.)
Jingdong Technology Information Technology Co Ltd
Original Assignee
Jingdong Technology Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jingdong Technology Information Technology Co Ltd filed Critical Jingdong Technology Information Technology Co Ltd
Priority to CN202210436826.7A priority Critical patent/CN114938394A/en
Publication of CN114938394A publication Critical patent/CN114938394A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering

Abstract

The disclosure provides a cross-cluster network control method, a device, equipment and a storage medium, which are applied to a cloud environment comprising a plurality of clusters, wherein the method comprises the following steps: if the target application instance is determined to be a cross-cluster application instance, acquiring the state of a first workload which is used for bearing the target application instance and comprises a plurality of resource units distributed in a plurality of clusters at a preset frequency, and creating a first application load balancer which is exposed to the outside for the first workload when the acquired state of the first workload is the first state; respectively mounting a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in a plurality of resource units of a first workload by a first application load balancer; and performing network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses, thereby realizing cross-cluster network node scheduling.

Description

Cross-cluster network control method, device, equipment and storage medium
Technical Field
The present disclosure relates to the field of cloud technologies, and in particular, to a cross-cluster network control method and apparatus, an electronic device, and a readable storage medium.
Background
Under a mixed cloud environment, Platform as a Service (PaaS) can host a public cloud cluster and a local cluster to realize mixed cloud management. The user may create multiple types of clusters with different functionality, such as multiple public cloud clusters through a kubernets application, and create application instances. The user may want to distribute the application instances across one cluster or multiple clusters provided by the service provider and may be configured to reach the goal of optimal utilization and high availability of resources by opening the network and unifying access.
The hybrid cloud management platform in the related technology only supports single cluster instance management, and cannot completely support the cross-cluster high-availability and network communication scene; or manual configuration and management are needed, and the expansibility is limited.
As described above, how to implement cross-cluster network node scheduling for automated cross-cluster instance management becomes an urgent problem to be solved.
The above information disclosed in this background section is only for enhancement of understanding of the background of the disclosure and therefore it may contain information that does not constitute prior art that is already known to a person of ordinary skill in the art.
Disclosure of Invention
The disclosure aims to provide a cross-cluster network control method, a cross-cluster network control device, an electronic device and a readable storage medium, and the cross-cluster network node scheduling is realized to solve the problem of automatic cross-cluster instance management.
Additional features and advantages of the disclosure will be set forth in the detailed description which follows, or in part will be obvious from the description, or may be learned by practice of the disclosure.
According to an aspect of the present disclosure, there is provided a cross-cluster network control method applied to a cloud environment including a plurality of clusters, the method including: if the target application instance is determined to be a cross-cluster application instance, acquiring a state of a first workload at a preset frequency, wherein the first workload is used for bearing the target application instance, the first workload comprises a plurality of resource units, and the plurality of resource units of the first workload are distributed in the plurality of clusters; when the state of the first workload is obtained to be a first state, a first application load balancer exposed to the outside is established for the first workload; respectively mounting a first application load balancer on a plurality of first Internet protocol addresses corresponding to a plurality of resource units exposed to the outside in a plurality of resource units of the first workload; and performing network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses.
According to an embodiment of the present disclosure, if it is determined that the target application instance is a cross-cluster application instance, acquiring a state of the first workload at a preset frequency includes: acquiring configuration information of the target application instance, wherein the configuration information comprises label information of the target application instance; judging whether the label information of the target application example comprises a cross-cluster application example label or not; and if the label information of the target application instance comprises a cross-cluster application instance label, acquiring the state of the first workload at the preset frequency.
According to an embodiment of the present disclosure, acquiring the state of the first workload at a preset frequency includes: detecting a resource change event of the first workload at the preset frequency; if the resource change event of the first workload is not detected within a preset length time period, acquiring that the state of the first workload is the first state.
According to an embodiment of the present disclosure, the network configuring the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses includes: acquiring configuration information of the target application instance, wherein the configuration information comprises public network binding requirement information; and binding the resource units mounted by the first application load balancer with a public network Internet protocol address according to the public network binding requirement information.
According to an embodiment of the present disclosure, the plurality of resource units exposed to the outside include a first resource unit, and a first internet protocol address corresponding to the first resource unit is an internet protocol address in a first subnet; the method further comprises the following steps: responding to a first capacity expansion request, allocating a second internet protocol address to a second resource unit in the plurality of clusters to obtain first routing information of the second resource unit, where the second internet protocol address is an internet protocol address in a second subnet, and the first routing information includes classless inter-domain routing information of the second subnet and the second internet protocol address; configuring second routing information for the second resource unit, where the second routing information includes the classless inter-domain routing information of the first subnet and the first internet protocol address, and the second routing information is used to indicate that the second subnet accesses the first resource unit; mounting the first application load balancer on the second internet protocol address.
According to still another aspect of the present disclosure, there is provided a cross-cluster network control apparatus applied to a cloud environment including a plurality of clusters including a first cluster and a plurality of second clusters, the apparatus including: the first network controller is arranged at a first node in the first cluster and used for acquiring the state of a first workload at a preset frequency if a target application instance is determined to be a cross-cluster application instance, wherein the first workload is used for bearing the target application instance; the first cluster controller is arranged at a second node in the first cluster and used for acquiring information that the first workload comprises a plurality of resource units, and the plurality of resource units of the first workload are distributed in the plurality of second clusters; the first network controller is further configured to create a first application load balancer exposed to the outside for the first workload when the state of the first workload is obtained as a first state; the first network controller is further configured to mount, according to information that the first workload includes multiple resource units, multiple first internet protocol addresses corresponding to multiple resource units exposed to the outside in the multiple resource units of the first workload by a first application load balancer, respectively; the first network controller is further configured to perform network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses.
According to an embodiment of the present disclosure, the first cluster controller is further configured to establish associations between the plurality of second clusters and the first cluster through a first interface, respectively.
According to an embodiment of the present disclosure, the apparatus further comprises: a second network controller, configured to, in response to a first capacity expansion request, allocate a second internet protocol address to a second resource unit in the plurality of clusters to obtain first routing information of the second resource unit, where the second internet protocol address is an internet protocol address in a second subnet, and the first routing information includes non-category inter-domain routing information of the second subnet and the second internet protocol address; the second network controller is further configured to configure second routing information for the second resource unit, where the second routing information includes the classless inter-domain routing information of the first subnet and the first internet protocol address, and the second routing information is used to indicate that the second subnet accesses the first resource unit; the first network controller is further configured to mount the second internet protocol address on the first application load balancer.
According to still another aspect of the present disclosure, there is provided a cross-cluster network control apparatus applied to a cloud environment including a plurality of clusters, the apparatus including: an obtaining module, configured to obtain a state of a first workload at a preset frequency if it is determined that a target application instance is a cross-cluster application instance, where the first workload is used to bear the target application instance, the first workload includes a plurality of resource units, and the plurality of resource units of the first workload are distributed in the plurality of clusters; the first processing module is used for creating a first application load balancer exposed to the outside for the first workload when the state of the first workload is obtained as a first state; the second processing module is used for mounting a first application load balancer on a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in a plurality of resource units of the first workload respectively; and the configuration module is used for performing network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses so that the first application load balancer distributes the network data processed by the target application instance according to the plurality of first internet protocol addresses.
According to an embodiment of the present disclosure, the obtaining module is further configured to: acquiring configuration information of the target application instance, wherein the configuration information comprises label information of the target application instance; judging whether the label information of the target application example comprises a cross-cluster application example label; and if the label information of the target application instance comprises a cross-cluster application instance label, acquiring the state of the first workload at the preset frequency.
According to an embodiment of the present disclosure, the obtaining module is further configured to: detecting a resource change event of the first workload at the preset frequency; if the resource change event of the first workload is not detected within a preset length time period, acquiring that the state of the first workload is the first state.
According to an embodiment of the disclosure, the configuration module is further configured to: acquiring configuration information of the target application instance, wherein the configuration information comprises public network binding requirement information; and binding the resource units mounted by the first application load balancer with a public network Internet protocol address according to the public network binding requirement information.
According to an embodiment of the present disclosure, the plurality of resource units exposed to the outside include a first resource unit, and a first internet protocol address corresponding to the first resource unit is an internet protocol address in a first subnet; the device further comprises: a third processing module, configured to, in response to the first capacity expansion request, allocate a second internet protocol address to a second resource unit in the multiple clusters to obtain first routing information of the second resource unit, where the second internet protocol address is an internet protocol address in a second subnet, and the first routing information includes non-category inter-domain routing information of the second subnet and the second internet protocol address; the configuration module is further configured to configure second routing information for the second resource unit, where the second routing information includes the classless inter-domain routing information of the first subnet and the first internet protocol address, and the second routing information is used to indicate that the second subnet accesses the first resource unit; the second processing module is further configured to mount the second internet protocol address on the first application load balancer.
According to still another aspect of the present disclosure, there is provided an electronic device including: a memory, a processor and executable instructions stored in the memory and executable in the processor, the processor implementing any of the methods described above when executing the executable instructions.
According to yet another aspect of the present disclosure, there is provided a computer-readable storage medium having stored thereon computer-executable instructions that, when executed by a processor, implement any of the methods described above.
The cross-cluster network control method provided by the embodiment of the disclosure includes obtaining a state of a first workload, which is used for bearing a target application instance and includes a plurality of resource units distributed in a plurality of clusters, at a preset frequency after determining that the target application instance is a cross-cluster application instance, creating a first application load balancer exposed to the outside for the first workload when the state of the first workload is obtained as a first state, then respectively mounting a plurality of first internet protocol addresses corresponding to the plurality of resource units exposed to the outside in the plurality of resource units of the first workload by the first application load balancer, and performing network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses, therefore, cross-cluster network node scheduling can be realized, and automatic cross-cluster instance management is realized.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The above and other objects, features and advantages of the present disclosure will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings.
Fig. 1 shows a schematic diagram of a system architecture in an embodiment of the present disclosure.
Fig. 2 shows a flowchart of a cross-cluster network control method in an embodiment of the present disclosure.
Fig. 3 is a schematic diagram illustrating a processing procedure of step S202 shown in fig. 2 in an embodiment.
Fig. 4 is a schematic diagram illustrating a processing procedure of step S208 shown in fig. 2 in an embodiment.
Fig. 5 is a flow chart illustrating another cross-cluster network control method in accordance with an exemplary embodiment.
Fig. 6 is a schematic diagram illustrating an implementation of a cross-cluster network control device in an application scenario, according to an example embodiment.
Fig. 7 is a schematic diagram of another implementation of the cross-cluster network control device in an application scenario according to fig. 6.
Fig. 8 is a schematic diagram of an implementation of the cross-cluster network control device in an application scenario according to the embodiments shown in fig. 2 to 7.
Fig. 9 shows a block diagram of a cross-cluster network control device in an embodiment of the disclosure.
Fig. 10 shows a block diagram of another cross-cluster network control apparatus in an embodiment of the present disclosure.
Fig. 11 shows a schematic structural diagram of an electronic device in an embodiment of the present disclosure.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and thus their repetitive description will be omitted.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the subject matter of the present disclosure can be practiced without one or more of the specific details, or with other methods, apparatus, steps, etc. In other instances, well-known structures, methods, devices, implementations, or operations are not shown or described in detail to avoid obscuring aspects of the disclosure.
Furthermore, the terms "first", "second", etc. are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the present disclosure, "a plurality" means at least two, e.g., two, three, etc., unless explicitly specifically limited otherwise. The symbol "/" generally indicates that the former and latter associated objects are in an "or" relationship.
In this disclosure, unless expressly stated or limited otherwise, the terms "connected" and the like are to be construed broadly, e.g., can be electrically connected or can communicate with one another; may be directly connected or indirectly connected through an intermediate. The specific meaning of the above terms in the present disclosure can be understood by those of ordinary skill in the art as appropriate.
As described above, the hybrid cloud management platform in the related art only supports single cluster instance management, and cannot completely support a cross-cluster high-availability and network communication scenario; or manual configuration and management are needed, the change of resources cannot be perceived in real time, and the expansibility is limited.
Some mature open source projects attempt to solve the problem of cross-cluster high availability, and some multi-cluster management software functions have supported partitioning of topology domains across clusters, cross-cluster service scheduling, and so on. On the basis of the items, the function of the network plug-in is enhanced by the embodiments of the present disclosure, and the main focus is on cross-cluster application of the network plug-in, after determining that the target application instance is a cross-cluster application instance, acquiring, at a preset frequency, a state of a first workload for carrying the target application instance and including a plurality of resource units distributed in a plurality of clusters, when the state of the first workload is acquired as the first state, creating an externally exposed first application load balancer for the first workload, then respectively mounting a plurality of first internet protocol addresses corresponding to the externally exposed resource units in the plurality of resource units of the first workload by the first application load balancer, and then performing network configuration on the externally exposed resource units according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses, therefore, cross-cluster network node scheduling can be realized, and automatic cross-cluster instance management is realized.
Fig. 1 illustrates an exemplary system architecture 10 to which the cross-cluster network control method or cross-cluster network control apparatus of the present disclosure may be applied.
As shown in fig. 1, the system architecture 10 may be a network formed by a Virtual Private Cloud (VPC) 102 and a VPC 104, the VPC 102 and the VPC 104 may be further divided into a Private Subnet (Private Subnet)1022 and a Private Subnet 1024, a cluster (cluster)10222 and a cluster 10422 may be respectively deployed on the Private Subnet 1022 and the Private Subnet 1024, and target application instances in the embodiment of the present disclosure may be distributed in the cluster 10222 and the cluster 10422. A plurality of nodes (nodes) 102222 may be disposed in cluster 10222, and at least one resource unit 1022222 may run on each node 102222; also disposed in cluster 10422 may be a plurality of nodes 104222, each node 104222 having at least one resource unit (pod)1042222 running thereon. Resource units 1022222 and resource unit 1042222 may serve as a workload (workload) to carry a target application instance in embodiments of the present disclosure.
It should be understood that the number of VPC networks, subnets, clusters, nodes, resource units, etc. in fig. 1 is merely illustrative. There may be any number of VPC networks, subnets, clusters, nodes, and resource units, as desired for an implementation.
Fig. 2 is a flow chart illustrating a method of controlling a cross-cluster network in accordance with an exemplary embodiment. The method as shown in FIG. 2 may be applied to a cloud environment comprising a plurality of clusters, such as may be applied to the cloud environment shown in FIG. 1; the method as shown in fig. 2 may be performed by a network plug-in disposed on one (management) cluster, for example, may be implemented by the first network controller 602 in fig. 6.
Referring to fig. 2, a method 20 provided by an embodiment of the present disclosure may include the following steps.
In step S202, if it is determined that the target application instance is a cross-cluster application instance, a state of a first workload is obtained at a preset frequency, where the first workload is used for bearing the target application instance, the first workload includes a plurality of resource units, and the plurality of resource units of the first workload are distributed in a plurality of clusters.
In some embodiments, for example, an application may employ a hybrid cloud management platform to install and manage components. The hybrid cloud management platform may use kubernets (which is abbreviated as "K8 s" in fig. 8) as a platform for container scheduling, and kubernets is taken as an example for illustration in the disclosure, but is not limited thereto. Kubernets can host many types of clusters, which may include public cloud clusters and private cloud clusters.
In some embodiments, for example, the plurality of clusters may be co-account, co-regional clusters.
In some embodiments, the tag of the target application instance may be utilized to determine whether it is a cross-cluster application instance, for example, and the detailed description may refer to fig. 3.
In some embodiments, the status of the first workload may be listened to by acquiring the status of the first workload at a preset frequency, for example, the preset frequency may be 0.5s, or 1s, or 2s, and so on.
In step S204, when the state of the first workload is obtained as the first state, a first application load balancer exposed to the outside is created for the first workload.
In some embodiments, the first status may be a ready status, and whether the first workload is ready may be determined by monitoring a resource incremental change through a controller (controller) mechanism of kubernets, for example, a resource change event of the first workload may be detected at a preset frequency, and if the resource change event of the first workload is not detected within a preset length time period, the status of the first workload is obtained as the first status.
In some embodiments, the exposed first Application Load Balancer may be an externally accessible Application Load Balancer (ALB).
In step S206, the first application load balancer mounts a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in the plurality of resource units of the first workload, respectively.
In some embodiments, the first application load balancer may mount, one by one, Internet Protocol (IP) addresses of the credit granting network cards corresponding to the externally exposed pod on each cluster.
In some embodiments, for example, the pod accessible to the exposed resource units may also be distributed in multiple clusters.
In step S208, network configuration is performed on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes the network data processed by the target application instance according to the plurality of first internet protocol addresses.
In some embodiments, for example, it may be determined whether ALB needs to bind to the public network according to the configuration of the target application instance, and configure a domain name for each externally exposed pod on which the ALB is mounted, so that the ALB distributes network data processed by the target application instance according to the IP address. Reference may be made to fig. 4 for a specific embodiment.
Each cluster in the related art is in an independent VPC, networks between VPCs are isolated, an ALB (or domain control) in a cluster cannot schedule nodes across clusters, so that nodes between clusters are isolated, a same instance cannot be created across clusters, manual intervention migration and switching are required when network scheduling across clusters is involved, and scalability of clusters and network resources is limited.
According to the cross-cluster network control method provided by the embodiment of the disclosure, after the target application instance is determined to be the cross-cluster application instance, the state of the first workload for bearing the target application instance and including the plurality of resource units distributed in the plurality of clusters is obtained at the preset frequency, when the state of the first workload is obtained to be the first state, the first application load balancer exposed to the outside is created for the first workload, then the first application load balancer is respectively mounted with the plurality of first internet protocol addresses corresponding to the plurality of resource units exposed to the outside in the plurality of resource units of the first workload, and then the plurality of resource units exposed to the outside are subjected to network configuration according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses, therefore, cross-cluster network node scheduling can be realized, and automatic cross-cluster instance management is realized.
Fig. 3 is a schematic diagram illustrating a processing procedure of step S202 shown in fig. 2 in an embodiment. As shown in fig. 3, in the embodiment of the present disclosure, the step S202 may further include the following steps.
Step S302, obtaining the configuration information of the target application instance, wherein the configuration information comprises the label information of the target application instance.
In some embodiments, configuration information for resources of a target application instance may be queried through a controller mechanism of kubernets, from which information for a kubernets tag (label) of the target application instance may be queried.
Step S304, judging whether the label information of the target application example comprises a cross-cluster application example label.
Step S306, if the tag information of the target application instance includes a cross-cluster application instance tag, acquiring the state of the first workload at a preset frequency.
In some embodiments, the network plugin may be managed by an operator (operator) of kubernets in a declarative Application Interface (API) style customization of kubernets, so as to implement monitoring of the workload status, and the specific implementation may refer to step S202.
According to the cross-cluster network control method provided by the embodiment of the disclosure, a controller mechanism based on Kubernetes automatically executes a cross-cluster network scheme according to a configuration label through an operator, so that the high availability and expandability of the system are further improved, and the operation and maintenance cost of manual intervention is saved.
Fig. 4 is a schematic diagram illustrating a processing procedure of step S208 shown in fig. 2 in an embodiment. As shown in fig. 4, in the embodiment of the present disclosure, the step S208 may further include the following steps.
Step S402, obtaining the configuration information of the target application instance, wherein the configuration information comprises public network binding requirement information.
Step S404, binding the resource units mounted by the first application load balancer with the public network Internet protocol address according to the public network binding requirement information.
Fig. 5 is a flow chart illustrating another method of controlling a cross-cluster network in accordance with an exemplary embodiment. The method shown in fig. 5 may be applied, for example, to a cloud environment including a plurality of clusters, such as the cloud environment shown in fig. 1, or fig. 6-8. Referring to fig. 2, the plurality of resource units exposed to the outside may include a first resource unit, and a first internet protocol address corresponding to the first resource unit is an internet protocol address in the first subnet.
Referring to fig. 5, a method 50 provided by an embodiment of the present disclosure may include the following steps.
In step S502, in response to the first capacity expansion request, a second internet protocol address is allocated to a second resource unit in the multiple clusters to obtain first routing information of the second resource unit, where the second internet protocol address is an internet protocol address in a second subnet, and the first routing information includes classless inter-domain routing information and the second internet protocol address of the second subnet.
In some embodiments, a second internet protocol address of the network card in the second subnet may be configured for the second resource unit in response to the first capacity expansion request, and the first Routing information of the second resource unit after the network card is configured may include Classless Inter-Domain Routing (CIDR) information and the second internet protocol address of the second subnet.
In step S504, second routing information is configured for the second resource unit, the second routing information includes the classless inter-domain routing information of the first subnet and the first internet protocol address, and the second routing information is used to indicate that the second subnet accesses the first resource unit.
In some embodiments, the pod that has been exposed to the outside can be accessed through the second subnet, for example, the pod can be a first resource unit in the first subnet, and the second routing information is added to the second resource unit to open the network between the second resource unit and the first resource unit in different subnets.
In some embodiments, this may be accomplished by a network plug-in (such as the second network controller 606 shown in FIG. 6) disposed on the cluster in the subnet.
In step S506, the first application load balancer is mounted with the second internet protocol address.
In the related art, network access between two VPCs is realized by using a certain IP address in a network card binding subnet (subnet) of one of the VPCs, and inserting the network card into a node (node) of the other VPC after the network card is granted, so that after the IP address of the subnet is exhausted, the existing instance cannot be expanded.
According to the method provided by the embodiment of the disclosure, the capacity expansion of the network resource of the corresponding user side can be supported, after the IP address of one subnet with the VPC is exhausted, the continuous capacity expansion of the subnet can be increased, and the expandability of the system is greatly improved.
Fig. 6 is a schematic diagram illustrating an implementation of a cross-cluster network control device in an application scenario, according to an example embodiment. The plurality of clusters in the service-side virtual private cloud 60 environment shown in fig. 6 may include a first cluster 6002 and a plurality of second clusters (e.g., include a second cluster 6004 and a second cluster 6006), the second cluster 6004 and the second cluster 6006 are respectively located in a first subnet 60002 and a second subnet 60004, underlying multi-cluster registration and scheduling management may be implemented based on multi-cluster management software 60022, and the multi-cluster management software may manage a first cluster controller 604 provided on the first cluster 6002, a first network controller 602, a second network controller 606 provided on the second cluster 6004, and a second network controller 608 provided on the second cluster 6006.
The first network controller 602 may be disposed at a first node 60024 in the first cluster, and configured to perform step S63, wherein step S63 may include obtaining a status of the first workload for carrying the target application instance at a preset frequency if the target application instance is determined to be a cross-cluster application instance (step S202); when the state of the first workload is the first state, creating a first application load balancer exposed to the outside for the first workload (step S204); according to the information that the first workload includes a plurality of resource units, respectively mounting a first application load balancer on a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in the plurality of resource units of the first workload (step S206); and performing network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes the network data processed by the target application instance according to the plurality of first internet protocol addresses (step S208).
The first cluster controller 604 may be disposed at a second node (not shown) in the first cluster, and configured to perform step S62, wherein step S62 may include obtaining information that the first workload includes a plurality of resource units, and the plurality of resource units of the first workload are distributed in a plurality of second clusters;
the first cluster controller 604 is further configured to execute step S61, wherein step S61 establishes a plurality of associations between the second clusters and the first cluster through the first interface 6010, respectively, for example, the second clusters may be registered on a control panel of the multi-cluster management software 60022. The first interface 6010 may be a cloud service resource operation interface (cloud Development Kit (SDK)) publicly.
The first cluster 6002 may further include a host node 60026, and an application program interface Service (API Service)600262 disposed on the host node 60026 may be configured to provide interfaces for adding, deleting, modifying, monitoring, and the like of various resource objects (pod, Service, and the like) of Kubernetes, and is a data bus and a data center of the entire system. The controller management 600264 provided at the master node 60026 may be used to manage the controllers in the first cluster 6002.
The second network controller 606, which may be disposed at the first node 60042 in the second cluster 6004, may be configured to execute step S66, where step S66 may include configuring a network card (IP address) to the first resource unit 600424, modifying a routing rule (custom routing-Table), whether a routing of the self-routing network card is normal, and the like. The first resource unit 600422 may be located in the namespace 600422 of the first node 60042, including various types of information for the first resource unit 600424, including a resource unit name, an externally exposed tag 6004242, and so on.
A third resource unit 600444 may be located on the second node 60044 in the second cluster 6004, and the third resource unit 600444 may be a Deployment resource unit (Deployment Pod), which may act as the global controller 600446.
The second cluster 6004 may also have a master node 60046, and the application interface Service 600462 provided in the master node 60046 may be configured to provide interfaces for adding, deleting, modifying, checking, and monitoring various resource objects (pod, Service, etc.). Controller management 600464 provided at the master node 60046 may be used to manage the controllers in the second cluster 6004. The master node 60046 in the second cluster 6004 may be used to feed back the status of each pod in the second cluster 6004 to the first cluster 6002.
A second network controller 608, which may be disposed at the first node 60062 in the second cluster 6006, may be configured to perform step S64, where step S64 may include configuring a network card (IP address) to the first resource unit 600624, for example, in response to the first capacity expansion request, allocating a second internet protocol address to a second resource unit in the plurality of clusters to obtain first routing information of the second resource unit (step S502), where the second internet protocol address is an internet protocol address in the second subnet 60004, and the first routing information includes classless inter-domain routing information of the second subnet and the second internet protocol address. The first node 60062 is configured to perform step S65, where step S65 may include modifying a routing rule (custom Route-Table), for example, configuring second routing information for the second resource unit (step S504), where the second routing information includes the classless inter-domain routing information and the first internet protocol address of the first subnet, and the second routing information is used to indicate that the second subnet accesses the first resource unit; whether the routing of the self-routing inspection network card is normal or not is judged. The first resource unit 600624 may be located in a namespace 600622 of the first node 60062, including various types of information for the first resource unit 600624, including resource unit names, externally exposed tags 6006242, and so on.
A third resource unit 600644 may be disposed on the second node 60064 in the second cluster 6006, and the third resource unit 600644 may be a Deployment resource unit (Deployment Pod), which may act as the global controller 600646.
The second cluster 6006 may also be provided with a host node 60066, and the application program interface Service 600662 provided in the host node 60066 may be used to provide interfaces for adding, deleting, modifying, checking, monitoring, and the like of various resource objects (pod, Service, and the like). Controller management 600664 provided at the master node 60066 may be used to manage the controllers in the second cluster 6006. The master node 60066 in the second cluster 6006 may be used to feed back the status of each pod in the second cluster 6006 to the first cluster 6002.
The first network controller 602 may also be configured to mount the first application load balancer with the second internet protocol address (step S506).
Fig. 7 is a schematic diagram of another implementation of the cross-cluster network control device in an application scenario according to fig. 6. Fig. 7 is a user-side virtual private cloud 70 environment corresponding to fig. 6, in which the first subnet 70002 and the second subnet 70004 correspond to the first subnet 60002 and the second subnet 60004 in fig. 6, respectively, and step S64 and step S65 are involved, respectively, and may be used to transfer a first capacity expansion request from the user side.
According to the method provided by the embodiment of the disclosure, a network plug-in is arranged on a first cluster according to the configuration on a target application example, if a label of cross-cluster application is found, the ready state of corresponding workload in a multi-cluster management module is monitored, once the label is ready, an externally exposed ALB is created for the workload, the ALB can mount the IP addresses of the credit granting network cards corresponding to the exposed pots on each cluster one by one, then whether the ALB needs to bind a public network or not is judged according to the configuration, and a domain name is configured; the first cluster and the second cluster are respectively provided with network access plug-ins with single cluster dimensionality, and an asynchronous dual-operator mechanism is adopted to be responsible for automatic maintenance of externally exposed network resources (domain names/load balancing/network cards/public network IP/security groups) of the clusters, so that the problems of cross-cluster network node scheduling and capacity expansion of a public cloud service provider and multi-subnet communication and access of a user use side are solved. The method not only supports the capacity expansion and the external exposure of the service side cross-cluster creation instance, but also supports the capacity expansion of the corresponding user side network resource, and can increase the continuous capacity expansion of the subnet after the IP address in the same subnet as the VPC is exhausted, thereby greatly improving the expandability of the system.
Fig. 8 is a schematic diagram of an implementation of the cross-cluster network control device in an application scenario according to the embodiments shown in fig. 2 to 7. The plurality of clusters in fig. 8 may be one main Cluster (Host Cluster)802 and a plurality of K8s sub-clusters, such as K8s Cluster 1, K8s Cluster 2 … … K8s Cluster n shown in fig. 8. The master cluster 802 may be used as a management node and other types of clusters registered as sub-clusters on the master cluster 802. The K8s cluster 1, the K8s cluster 2 … … K8s cluster n constitute service sides (servicepins) 804, each cluster is 2-3 Availability Zones (AZ) deployments (Availability zone a, Availability zone B, and Availability zone C as shown in fig. 8), and nodes in the same cluster may correspond to different physical AZ. Corresponding to the service side, the user side (userPin) VPC 806 also includes 2 subnet of the user, such as subnet 1 and subnet 2 shown in fig. 8, where K8s cluster 1, K8s cluster 2 … … K8s cluster n are under the same account and same area (region) under servicePin (e.g. area 1 shown in fig. 8).
The multi-cluster management software 8022 may have different options, for example, it may process workload information such as deployment information, cluster information, etc. through the controller 80242 disposed at the node 8024, the controller 80262 disposed at the node 8026, and resources such as a mediation Domain (Domain), a public network IP address (implemented by svc (service)), an ALB, etc. If the number of copies (replicas) of a pod in Deployment (Deployment)1 is 3, resource unit 1, resource unit 2, and resource unit 3 shown in fig. 8 are added with copy resource unit 4 of 4 during capacity expansion.
The K8s cluster 1 and the K8s cluster 2 … … K8s cluster n are first registered on a control panel of the multi-cluster management software 8022, and the multi-cluster management software 8022 manages cluster distribution of the pods in the workload and the replica number of the pods according to user configuration. Then, according to the configuration on the target application instance, if a label of the cross-cluster application is found, the controller 80262 monitors the ready state of the corresponding workload in the multi-cluster management module, once the label is ready, an externally exposed ALB is created for the workload, the ALB mounts the IP address of the credit granting network card corresponding to the pod exposed on each cluster one by one, and then judges whether the ALB needs to bind the public network according to the configuration, and configures the domain name.
For example, the CIDR of subnet 1 is 10.0.16.0/22, and after configuring the network card, the following records may be recorded in the route of resource unit 1:
10.0.16.0/22dev eth2 proto key scan link src 10.0.17.225, wherein 10.0.17.225 (IP 1 shown in FIG. 8) is the IP address of the network card corresponding to resource unit 1.
If subnet 2 is added newly during capacity expansion, e.g., the CIDR of subnet 2 is 10.0.64.0/22, subnet 2 is required to access the exposed resource unit 3. The following records may be recorded in the route of the resource unit 4 after the network card is configured:
10.0.64.0/22dev eth2 proto kernel scope link src 10.0.64.3
where 10.0.64.3 (IP 2 shown in FIG. 8) is the network card IP address to which resource unit 4 corresponds. The second network controller (608 in fig. 6) plug-in, which may be implemented through the K8s API, automatically configures, after creating the above network card, to automatically add the following routes on this resource unit 4:
10.0.16.0/22via 10.0.64.1dev eth2
wherein 10.0.16.0/22 is the CIDR of subnet 1, 10.0.64.1 is the network card IP address corresponding to resource unit 3.
The method can be realized by setting a main operator plug-in on the main cluster 802 and setting a daemon operator plug-in on the K8s sub-cluster respectively, and the daemon operator can be set on one pod on each node and is responsible for controlling resource configuration on each node.
According to the method provided by the embodiment of the disclosure, a multi-cluster Kubernets controller mechanism is utilized, and multi-cluster registration and scheduling management of a bottom layer is performed based on multi-cluster management software, so that the problems of cross-cluster network automatic scheduling and getting through and multi-subnet mutual communication among cross VPCs are solved.
Fig. 9 is a schematic diagram illustrating a cross-cluster network controller according to an example embodiment. The apparatus as shown in FIG. 9 may be applied to a cloud environment comprising a plurality of clusters, such as may be applied to the cloud environment shown in FIG. 1; the apparatus as shown in fig. 9 may be implemented by a network plug-in disposed on a (management) cluster, for example, by the first network controller 602 in fig. 6.
Referring to fig. 9, an apparatus 90 provided by an embodiment of the disclosure may include an obtaining module 902, a first processing module 904, a second processing module 906, and a configuring module 908.
The obtaining module 902 may be configured to, if it is determined that the target application instance is a cross-cluster application instance, obtain, at a preset frequency, a state of a first workload, where the first workload is used to carry the target application instance, the first workload includes a plurality of resource units, and the plurality of resource units of the first workload are distributed in a plurality of clusters.
The first processing module 904 may be configured to create a first application load balancer exposed to the outside for the first workload when the state of the first workload is obtained as the first state.
The second processing module 906 may be configured to mount, by the first application load balancer, a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in the plurality of resource units of the first workload, respectively.
The configuration module 908 may be configured to perform network configuration on the exposed resource units according to the first internet protocol addresses, so that the first application load balancer distributes the network data processed by the target application instance according to the first internet protocol addresses.
Fig. 10 is a schematic diagram illustrating another cross-cluster network controller according to an example embodiment. The apparatus shown in fig. 10 may be applied to, for example, a cloud environment including a plurality of clusters, for example, may be applied to the cloud environment shown in fig. 1, or fig. 6 to 8. Referring to fig. 9, the plurality of resource units exposed to the outside may include a first resource unit, and a first internet protocol address corresponding to the first resource unit is an internet protocol address in the first subnet.
Referring to fig. 10, the apparatus 100 provided by the embodiment of the present disclosure may include an obtaining module 1002, a first processing module 1004, a second processing module 1006, a configuring module 1008, and a third processing module 1010.
The obtaining module 1002 may be configured to, if it is determined that the target application instance is a cross-cluster application instance, obtain, at a preset frequency, a state of a first workload, where the first workload is used to carry the target application instance, the first workload includes a plurality of resource units, and the plurality of resource units of the first workload are distributed in a plurality of clusters.
The obtaining module 1002 may further be configured to obtain configuration information of the target application instance, where the configuration information includes tag information of the target application instance; judging whether the label information of the target application example comprises a cross-cluster application example label; and if the label information of the target application example comprises a cross-cluster application example label, acquiring the state of the first workload at a preset frequency.
The obtaining module 1002 may be further configured to detect a resource change event of the first workload at a preset frequency; if the resource change event of the first workload is not detected within the preset length time period, the state of the first workload is obtained as a first state.
The first processing module 1004 may be configured to create a first application load balancer exposed to the outside for the first workload when the state of the first workload is obtained as the first state.
The second processing module 1006 may be configured to mount, by the first application load balancer, a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in the plurality of resource units of the first workload, respectively.
The plurality of resource units exposed to the outside may include a first resource unit, and a first internet protocol address corresponding to the first resource unit is an internet protocol address in the first subnet.
The second processing module 1006 may also be configured to mount the first application load balancer to the second internet protocol address.
The configuration module 1008 may be configured to perform network configuration on the exposed resource units according to the first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the first internet protocol addresses.
The configuration module 1008 may also be configured to obtain configuration information of the target application instance, where the configuration information includes public network binding requirement information; and binding the resource units mounted by the first application load balancer with the public network Internet protocol address according to the public network binding requirement information.
The configuration module 1008 is further configured to configure second routing information for the second resource unit, the second routing information including the classless inter-domain routing information for the first subnet and the first internet protocol address, the second routing information indicating that the second subnet accesses the first resource unit.
The third processing module 1010 is configured to, in response to the first capacity expansion request, allocate a second internet protocol address to a second resource unit in the plurality of clusters to obtain first routing information of the second resource unit, where the second internet protocol address is an internet protocol address in a second subnet, and the first routing information includes non-category inter-domain routing information and the second internet protocol address of the second subnet.
The specific implementation of each module in the apparatus provided in the embodiment of the present disclosure may refer to the content in the foregoing method, and is not described herein again.
Fig. 11 shows a schematic structural diagram of an electronic device in an embodiment of the present disclosure. It should be noted that the apparatus shown in fig. 11 is only an example of a computer system, and should not bring any limitation to the function and the scope of the application of the embodiments of the present disclosure.
As shown in fig. 11, the device 1100 includes a Central Processing Unit (CPU)1101, which can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)1102 or a program loaded from a storage section 1108 into a Random Access Memory (RAM) 1103. In the RAM 1103, various programs and data necessary for the operation of the device 1100 are also stored. The CPU1101, ROM 1102, and RAM 1103 are connected to each other by a bus 1104. An input/output (I/O) interface 1105 is also connected to bus 1104.
The following components are connected to the I/O interface 1105: an input portion 1106 including a keyboard, mouse, and the like; an output portion 1107 including a signal such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage section 1108 including a hard disk and the like; and a communication section 1109 including a network interface card such as a LAN card, a modem, or the like. The communication section 1109 performs communication processing via a network such as the internet. A driver 1110 is also connected to the I/O interface 1105 as necessary. A removable medium 1111 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 1110 as necessary, so that a computer program read out therefrom is mounted into the storage section 1108 as necessary.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication portion 1109 and/or installed from the removable medium 1111. The above-described functions defined in the system of the present disclosure are executed when the computer program is executed by a Central Processing Unit (CPU) 1101.
It should be noted that the computer readable medium shown in the present disclosure may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer-readable signal medium may include a propagated data signal with computer-readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present disclosure may be implemented by software or hardware. The described modules may also be provided in a processor, which may be described as: a processor includes an acquisition module, a first processing module, a second processing module, and a configuration module. The names of these modules do not in some cases constitute a limitation on the module itself, and for example, an acquisition module may also be described as a "module that acquires the status of a workload".
As another aspect, the present disclosure also provides a computer-readable medium, which may be contained in the apparatus described in the above embodiments; or may be separate and not incorporated into the device. The computer readable medium carries one or more programs which, when executed by a device, cause the device to comprise:
if the target application instance is determined to be a cross-cluster application instance, acquiring the state of a first workload at a preset frequency, wherein the first workload is used for bearing the target application instance, the first workload comprises a plurality of resource units, and the plurality of resource units of the first workload are distributed in a plurality of clusters; when the state of the first workload is obtained to be a first state, a first application load balancer exposed to the outside is established for the first workload; respectively mounting a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in a plurality of resource units of a first workload by a first application load balancer; and performing network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses.
Exemplary embodiments of the present disclosure are specifically illustrated and described above. It is to be understood that the disclosure is not limited to the precise construction, arrangements, or instrumentalities described herein; on the contrary, the disclosure is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.

Claims (11)

1. A cross-cluster network control method is applied to a cloud environment comprising a plurality of clusters, and comprises the following steps:
if the target application instance is determined to be a cross-cluster application instance, acquiring a state of a first workload at a preset frequency, wherein the first workload is used for bearing the target application instance, the first workload comprises a plurality of resource units, and the plurality of resource units of the first workload are distributed in the plurality of clusters;
when the state of the first workload is obtained to be a first state, a first application load balancer exposed to the outside is established for the first workload;
respectively mounting a first application load balancer on a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in a plurality of resource units of the first workload;
and performing network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses.
2. The method of claim 1, wherein obtaining the status of the first workload at a predetermined frequency if the target application instance is determined to be a cross-cluster application instance comprises:
acquiring configuration information of the target application instance, wherein the configuration information comprises label information of the target application instance;
judging whether the label information of the target application example comprises a cross-cluster application example label;
and if the label information of the target application instance comprises a cross-cluster application instance label, acquiring the state of the first workload at the preset frequency.
3. The method of claim 1, wherein obtaining the status of the first workload at a predetermined frequency comprises:
detecting a resource change event of the first workload at the preset frequency;
if the resource change event of the first workload is not detected within a preset length time period, acquiring that the state of the first workload is the first state.
4. The method of claim 1, wherein network configuring the exposed resource units according to the first internet protocol addresses comprises:
acquiring configuration information of the target application instance, wherein the configuration information comprises public network binding requirement information;
and binding the resource units mounted by the first application load balancer with public network Internet protocol addresses according to the public network binding requirement information.
5. The method of claim 1, wherein the exposed resource units include a first resource unit, and a first internet protocol address corresponding to the first resource unit is an internet protocol address in a first subnet;
the method further comprises the following steps:
responding to a first capacity expansion request, allocating a second internet protocol address to a second resource unit in the plurality of clusters to obtain first routing information of the second resource unit, where the second internet protocol address is an internet protocol address in a second subnet, and the first routing information includes non-category inter-domain routing information of the second subnet and the second internet protocol address;
configuring second routing information for the second resource unit, where the second routing information includes the classless inter-domain routing information of the first subnet and the first internet protocol address, and the second routing information is used to indicate that the second subnet accesses the first resource unit;
mounting the first application load balancer on the second internet protocol address.
6. A cross-cluster network control apparatus applied to a cloud environment including a plurality of clusters including a first cluster and a plurality of second clusters, the apparatus comprising:
the first network controller is arranged at a first node in the first cluster and used for acquiring the state of a first workload at a preset frequency if a target application instance is determined to be a cross-cluster application instance, wherein the first workload is used for bearing the target application instance;
the first cluster controller is arranged at a second node in the first cluster and used for acquiring information that the first workload comprises a plurality of resource units, and the plurality of resource units of the first workload are distributed in the plurality of second clusters;
the first network controller is further configured to create a first application load balancer exposed to the outside for the first workload when the state of the first workload is obtained as a first state;
the first network controller is further configured to mount, according to information that the first workload includes multiple resource units, multiple first internet protocol addresses corresponding to multiple resource units exposed to the outside in the multiple resource units of the first workload by a first application load balancer, respectively;
the first network controller is further configured to perform network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses, so that the first application load balancer distributes network data processed by the target application instance according to the plurality of first internet protocol addresses.
7. The apparatus of claim 6, wherein the first cluster controller is further configured to establish the association between the plurality of second clusters and the first cluster through a first interface respectively.
8. The apparatus of claim 6, further comprising: a second network controller, configured to, in response to a first capacity expansion request, allocate a second internet protocol address to a second resource unit in the plurality of clusters to obtain first routing information of the second resource unit, where the second internet protocol address is an internet protocol address in a second subnet, and the first routing information includes non-category inter-domain routing information of the second subnet and the second internet protocol address;
the second network controller is further configured to configure second routing information for the second resource unit, where the second routing information includes the classless inter-domain routing information of the first subnet and the first internet protocol address, and the second routing information is used to indicate that the second subnet accesses the first resource unit;
the first network controller is further configured to mount the second internet protocol address on the first application load balancer.
9. An apparatus for controlling a cross-cluster network, applied to a cloud environment including a plurality of clusters, the apparatus comprising:
an obtaining module, configured to obtain a state of a first workload at a preset frequency if it is determined that a target application instance is a cross-cluster application instance, where the first workload is used to bear the target application instance, the first workload includes a plurality of resource units, and the plurality of resource units of the first workload are distributed in the plurality of clusters;
the first processing module is used for creating a first application load balancer exposed to the outside for the first workload when the state of the first workload is obtained as a first state;
the second processing module is used for mounting a first application load balancer on a plurality of first internet protocol addresses corresponding to a plurality of resource units exposed to the outside in a plurality of resource units of the first workload respectively;
and the configuration module is used for performing network configuration on the plurality of resource units exposed to the outside according to the plurality of first internet protocol addresses so that the first application load balancer distributes the network data processed by the target application instance according to the plurality of first internet protocol addresses.
10. An electronic device, comprising: memory, processor and executable instructions stored in the memory and executable in the processor, characterized in that the processor implements the method according to any of claims 1-5 when executing the executable instructions.
11. A computer-readable storage medium having computer-executable instructions stored thereon, wherein the executable instructions, when executed by a processor, implement the method of any of claims 1-5.
CN202210436826.7A 2022-04-13 2022-04-13 Cross-cluster network control method, device, equipment and storage medium Pending CN114938394A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210436826.7A CN114938394A (en) 2022-04-13 2022-04-13 Cross-cluster network control method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210436826.7A CN114938394A (en) 2022-04-13 2022-04-13 Cross-cluster network control method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114938394A true CN114938394A (en) 2022-08-23

Family

ID=82862957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210436826.7A Pending CN114938394A (en) 2022-04-13 2022-04-13 Cross-cluster network control method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114938394A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115333993A (en) * 2022-10-11 2022-11-11 江苏博云科技股份有限公司 Method, equipment and storage medium for customizing container group routing in container environment

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060026599A1 (en) * 2004-07-30 2006-02-02 Herington Daniel E System and method for operating load balancers for multiple instance applications
CN109032760A (en) * 2018-08-01 2018-12-18 北京百度网讯科技有限公司 Method and apparatus for application deployment
CN110213358A (en) * 2019-05-23 2019-09-06 深圳壹账通智能科技有限公司 Method, node, equipment and the storage medium of cluster resource scheduling
CN110581873A (en) * 2018-06-11 2019-12-17 中国移动通信集团浙江有限公司 cross-cluster redirection method and monitoring server
US20200042364A1 (en) * 2018-07-31 2020-02-06 Hewlett Packard Enterprise Development Lp Movement of services across clusters
CN111614738A (en) * 2020-05-07 2020-09-01 北京金山云网络技术有限公司 Service access method, device, equipment and storage medium based on Kubernetes cluster
US10785158B1 (en) * 2019-05-22 2020-09-22 Chunghwa Telecom Co., Ltd. System and method for provisioning both IPV4 and IPV6 internet service and load balancer service
CN111885123A (en) * 2020-07-06 2020-11-03 苏州浪潮智能科技有限公司 Construction method and device of cross-K8 s target service access channel
US20210089415A1 (en) * 2019-09-25 2021-03-25 Sap Se High availability for a relational database management system as a service in a cloud platform
CN112615856A (en) * 2020-12-16 2021-04-06 上海道客网络科技有限公司 Multi-cluster network security policy management and control method and system
CN113572831A (en) * 2021-07-21 2021-10-29 重庆星环人工智能科技研究院有限公司 Communication method between Kubernetes clusters, computer equipment and medium
CN113572838A (en) * 2021-07-22 2021-10-29 北京金山云网络技术有限公司 Network access method, device, equipment and medium based on Kubernetes
US20210373971A1 (en) * 2020-05-29 2021-12-02 Vmware, Inc. Cross-cluster load balancer
CN113746887A (en) * 2020-11-05 2021-12-03 北京沃东天骏信息技术有限公司 Cross-cluster data request processing method, device and storage medium
CN113783774A (en) * 2021-08-20 2021-12-10 北京快乐茄信息技术有限公司 Cross-cluster network configuration method and device, communication equipment and storage medium
CN113886058A (en) * 2020-07-01 2022-01-04 中国联合网络通信集团有限公司 Cross-cluster resource scheduling method and device
US20220038311A1 (en) * 2020-07-30 2022-02-03 Vmware, Inc. Hierarchical networking for nested container clusters
CN114153566A (en) * 2021-12-20 2022-03-08 浪潮电子信息产业股份有限公司 Cross-processor architecture multi-container inter-cluster service discovery method, device and equipment

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060026599A1 (en) * 2004-07-30 2006-02-02 Herington Daniel E System and method for operating load balancers for multiple instance applications
CN110581873A (en) * 2018-06-11 2019-12-17 中国移动通信集团浙江有限公司 cross-cluster redirection method and monitoring server
US20200042364A1 (en) * 2018-07-31 2020-02-06 Hewlett Packard Enterprise Development Lp Movement of services across clusters
CN109032760A (en) * 2018-08-01 2018-12-18 北京百度网讯科技有限公司 Method and apparatus for application deployment
US10785158B1 (en) * 2019-05-22 2020-09-22 Chunghwa Telecom Co., Ltd. System and method for provisioning both IPV4 and IPV6 internet service and load balancer service
CN110213358A (en) * 2019-05-23 2019-09-06 深圳壹账通智能科技有限公司 Method, node, equipment and the storage medium of cluster resource scheduling
US20210089415A1 (en) * 2019-09-25 2021-03-25 Sap Se High availability for a relational database management system as a service in a cloud platform
CN111614738A (en) * 2020-05-07 2020-09-01 北京金山云网络技术有限公司 Service access method, device, equipment and storage medium based on Kubernetes cluster
US20210373971A1 (en) * 2020-05-29 2021-12-02 Vmware, Inc. Cross-cluster load balancer
CN113886058A (en) * 2020-07-01 2022-01-04 中国联合网络通信集团有限公司 Cross-cluster resource scheduling method and device
CN111885123A (en) * 2020-07-06 2020-11-03 苏州浪潮智能科技有限公司 Construction method and device of cross-K8 s target service access channel
US20220038311A1 (en) * 2020-07-30 2022-02-03 Vmware, Inc. Hierarchical networking for nested container clusters
CN113746887A (en) * 2020-11-05 2021-12-03 北京沃东天骏信息技术有限公司 Cross-cluster data request processing method, device and storage medium
CN112615856A (en) * 2020-12-16 2021-04-06 上海道客网络科技有限公司 Multi-cluster network security policy management and control method and system
CN113572831A (en) * 2021-07-21 2021-10-29 重庆星环人工智能科技研究院有限公司 Communication method between Kubernetes clusters, computer equipment and medium
CN113572838A (en) * 2021-07-22 2021-10-29 北京金山云网络技术有限公司 Network access method, device, equipment and medium based on Kubernetes
CN113783774A (en) * 2021-08-20 2021-12-10 北京快乐茄信息技术有限公司 Cross-cluster network configuration method and device, communication equipment and storage medium
CN114153566A (en) * 2021-12-20 2022-03-08 浪潮电子信息产业股份有限公司 Cross-processor architecture multi-container inter-cluster service discovery method, device and equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115333993A (en) * 2022-10-11 2022-11-11 江苏博云科技股份有限公司 Method, equipment and storage medium for customizing container group routing in container environment
CN115333993B (en) * 2022-10-11 2022-12-09 江苏博云科技股份有限公司 Method, equipment and storage medium for customizing container group routing in container environment

Similar Documents

Publication Publication Date Title
US10701139B2 (en) Life cycle management method and apparatus
US20220377045A1 (en) Network virtualization of containers in computing systems
CN108536519B (en) Method for automatically building Kubernetes main node and terminal equipment
US20200092222A1 (en) Automated migration of compute instances to isolated virtual networks
US8010651B2 (en) Executing programs based on user-specified constraints
US10148736B1 (en) Executing parallel jobs with message passing on compute clusters
US20170371717A1 (en) Resource management in cloud systems
CN108028827B (en) Method and device for managing certificate in network function virtualization architecture
CN109075986B (en) Network function instance management method and related equipment
US11368407B2 (en) Failover management using availability groups
US11082505B2 (en) Dynamic discovery of available storage servers
CN111510515B (en) Method and device for distinguishing containers of mixed application environment
US20210337016A1 (en) Peripheral device enabling virtualized computing service extensions
US10673694B2 (en) Private network mirroring
US20150372935A1 (en) System and method for migration of active resources
CN113810230A (en) Method, device and system for carrying out network configuration on containers in container cluster
US20230042205A1 (en) Customer activation on edge computing environment
CN114938394A (en) Cross-cluster network control method, device, equipment and storage medium
CN115086166A (en) Computing system, container network configuration method, and storage medium
CN113986539A (en) Method, device, electronic equipment and readable storage medium for realizing pod fixed IP
US20210157652A1 (en) Customized partitioning of compute instances
CN114745757B (en) Cluster switching method, device, equipment and medium
CN107682184B (en) Cloud service platform region resource extended method, device, equipment and storage medium
CN114070889B (en) Configuration method, traffic forwarding device, storage medium, and program product
CN115827148A (en) Resource management method and device, electronic equipment and storage medium

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