CN116560822A - Resource flow method, device and equipment - Google Patents

Resource flow method, device and equipment Download PDF

Info

Publication number
CN116560822A
CN116560822A CN202210099460.9A CN202210099460A CN116560822A CN 116560822 A CN116560822 A CN 116560822A CN 202210099460 A CN202210099460 A CN 202210099460A CN 116560822 A CN116560822 A CN 116560822A
Authority
CN
China
Prior art keywords
resource
resource pool
resources
container
target
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
CN202210099460.9A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210099460.9A priority Critical patent/CN116560822A/en
Priority to PCT/CN2023/071611 priority patent/WO2023143057A1/en
Publication of CN116560822A publication Critical patent/CN116560822A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Abstract

The application provides a resource flow method, a device and equipment, wherein the method comprises the following steps: and determining the state of the target resource, executing corresponding operation according to the state of the target resource, and classifying the target resource in the first resource pool into a second resource pool, wherein the resource in the first resource pool is used for one or more of a container, a safety container and a process for processing the first service, and the resource in the second resource pool is used for one or more of the container, the safety container and the process for processing the second service. Through the method and the device, the flow among the resources in different resource pools can be realized, the waste of the resources is avoided, the utilization rate of the resources is improved, and the use experience of users is improved.

Description

Resource flow method, device and equipment
Technical Field
The present disclosure relates to the field of storage, and in particular, to a method, an apparatus, and a device for resource flow.
Background
The super-converged system architecture (hyper converged infrastructure, HCI) includes one or more super-converged nodes that can be aggregated over a network, with resources on each super-converged node being used to process both computing traffic and storage traffic. In order to avoid the mutual interference of the storage service, the computing service and other services, the resources in the device are statically allocated in advance, for example, which resources are used for processing the storage service, which resources are used for processing the computing service, which resources are used for processing other services and the like, and cannot be dynamically changed in the running process of the application. However, in some scenarios, there may be a surplus of resources for processing the storage service during the operation, or there may be a surplus of resources for processing the computing service in some scenarios, which may result in unreasonable resource utilization.
At present, to change the allocation of resources, the resource allocation parameters must be manually adjusted, and then the application service is restarted, but this affects the operation of the service, resulting in service jitter and service interruption, and thus affecting the user experience.
Disclosure of Invention
The application provides a resource flow method, a device and equipment, and by adopting the resource flow method, the flow of resources can be realized without restarting an application service, so that the defects of service jitter and service interruption caused by restarting the application service are avoided, and the user experience is improved.
In a first aspect, the present application provides a resource flow method, including: and classifying the target resources in the first resource pool into a second resource pool, wherein the resources in the first resource pool are used for one or more of a container, a safety container and a process for processing the first service, and the resources in the second resource pool are used for one or more of a container, a safety container and a process for processing the second service.
It can be seen that the method provided by the present application can implement the flow of the target resources in different resource pools, where the resources in different resource pools are used to process different services, and the target resources may be resources occupied by a container, resources occupied by a secure container, resources occupied by a process, or a combination of the above multiple types. According to the method, the resource configuration parameters do not need to be manually adjusted, the application service does not need to be restarted, the user side does not feel in the resource flow process, and the operation of the service and the experience of the user side are not affected.
Based on the first aspect, in a possible implementation manner, the first service is one of a storage service and a computing service, and the second service is the other of the storage service and the computing service.
It is understood that, for example, traffic includes computing traffic and storage traffic, resources in a first pool of resources are used to process computing traffic, resources in a second pool of resources are used to process storage traffic, or resources in a first pool of resources are used to process storage traffic, resources in a second pool of resources are used to process computing traffic.
Based on the first aspect, in a possible implementation manner, the target resource includes one or more of a processor resource, a memory resource and a network resource.
Based on the first aspect, in a possible implementation manner, the first resource pool and the second resource pool are located in the same server.
Based on the first aspect, in a possible implementation manner, the classifying the target resource in the first resource pool into the second resource pool includes: releasing the occupied resources under the condition that the occupied resources exist in the target resources in the first resource pool; and classifying the target resource into a second resource pool.
It can be understood that if the occupied resource exists in the target resource in the first resource pool, the occupied resource needs to be released first, so that the target resource is in an idle state, and then the target resource is classified into the second resource pool.
Based on the first aspect, in a possible implementation manner, in a case that the occupied resource is occupied by a high priority application, the high priority application is translated into a free resource of the first resource pool.
It can be appreciated that if the occupied resource is occupied by the high priority application, the occupied resource can be replaced by the idle resource in the first resource pool, the high priority application is translated to the idle resource, the idle resource is used for processing the high priority application, the target resource is in an idle state, and then the target resource is classified into the second resource pool, so that the service of the high priority application is not affected.
Based on the first aspect, in a possible implementation manner, in a case that the occupied resource is occupied by a low priority application, the low priority application is deleted or translated into a free resource of the first resource pool.
It can be appreciated that if the occupied resource is occupied by the low priority application, one implementation may be to replace the occupied resource with an idle resource in the first resource pool, translate the low priority application to the idle resource, process the low priority application by the idle resource, make the target resource in an idle state, and then assign the target resource to the second resource pool; another implementation may be to delete the low priority application directly, leaving the target resource in an idle state, and then to fall into the second resource pool.
Based on the first aspect, in a possible implementation manner, the application form in the first resource pool is a container or a secure container, and the application form in the second resource pool is a process; or the application form in the first resource pool is a process, and the application form in the second resource pool is a container or a safe container.
It is understood that the method described in the present application may be applied to a scenario in which one of the first resource pool and the second resource pool is in the form of a container and a secure container, and the other is in the form of a process.
Based on the first aspect, in a possible implementation manner, before the classifying the target resource in the first resource pool into the second resource pool, the method further includes: and monitoring the occupied condition of each resource in the first resource pool and/or each resource in the second resource pool.
It can be understood that by monitoring the occupied condition of each resource in the first resource pool and/or each resource in the second resource pool, real-time flow of the resources is realized according to actual requirements, the situation that service blocking occurs due to mismatching of service application and the resources is avoided, and user experience can be improved by implementing the method and the device.
In a second aspect, the present application provides a resource flow device comprising: and the resource management framework is used for classifying the target resources in the first resource pool into a second resource pool, wherein the resources in the first resource pool are used for one or more of a container, a safety container and a process for processing the first service, and the resources in the second resource pool are used for one or more of a container, a safety container and a process for processing the second service.
Based on the second aspect, in a possible implementation manner, the first service is one of a storage service and a computing service, and the second service is the other of the storage service and the computing service.
Based on the second aspect, in a possible implementation manner, the target resource includes one or more of a processor resource, a memory resource and a network resource.
Based on the second aspect, in a possible implementation manner, the first resource pool and the second resource pool are located in the same server.
Based on the second aspect, in a possible implementation manner, the resource management framework is configured to: releasing the occupied resources under the condition that the occupied resources exist in the target resources in the first resource pool; and classifying the target resource into a second resource pool.
Based on the second aspect, in a possible implementation manner, the resource management framework is configured to: and in the case that the occupied resources are occupied by high-priority applications, translating the high-priority applications into free resources of the first resource pool.
Based on the second aspect, in a possible implementation manner, the resource management framework is configured to: in the event that the occupied resources are occupied by low priority applications, the low priority applications are deleted or translated into free resources of the first resource pool.
Based on the second aspect, in a possible implementation manner, the application form in the first resource pool is a container or a secure container, and the application form in the second resource pool is a process; or the application form in the first resource pool is a process, and the application form in the second resource pool is a container or a safe container.
Based on the second aspect, in a possible implementation manner, the apparatus further includes: and the monitoring module is used for monitoring the occupied condition of each resource in the first resource pool and/or each resource in the second resource pool.
Each functional module in the second aspect is configured to implement the method in the first aspect and any one of possible implementation manners of the first aspect.
In a third aspect, the present application provides a resource flow device, including a memory for storing instructions and a processor for calling the instructions stored in the memory to perform the method according to any one of the foregoing first aspect and any one of the possible implementation manners of the first aspect.
In a fourth aspect, the present application provides a computer readable storage medium comprising program instructions which, when executed by a computer, cause the computer to perform the method according to any one of the above first aspect and any one of the possible implementation manners of the first aspect.
In a fifth aspect, the present application provides a computer program product comprising computer program code which, when executed by a computing device, performs the method provided in the first aspect or any possible implementation of the first aspect. The computer program product may be a software installation package which may be downloaded and executed on a computing device in case the method provided in the first aspect or any of the possible implementations of the first aspect is required.
Drawings
FIG. 1 is a schematic diagram of a system architecture provided herein;
fig. 2 is a schematic structural diagram of a server provided in the present application;
FIG. 3 is a schematic flow chart of a resource flow method provided in the present application;
FIG. 4 is a schematic diagram of a state change of a resource provided in the present application;
FIG. 5 is a schematic view of resource flow provided herein;
FIG. 6 is a schematic diagram of a resource flow device provided herein;
fig. 7 is a schematic structural diagram of a resource flow device provided in the present application.
Detailed Description
Before describing the scheme of the embodiment of the application, a super fusion architecture is introduced.
The super fusion system architecture is a technical architecture for realizing calculation, storage and network fusion through software definition based on a standard and general hardware platform and realizing a software definition data center centered by virtualization. Wherein, the super-specific virtualization hyper, fusion refers to deploying the computing service and the storage service on one node. The resources used for calculation and the resources used for storage in the super fusion system are reasonably allocated and used through the virtual machine, and the super fusion system is a virtualization application taking the virtual machine as a core.
Referring to fig. 1, fig. 1 is a schematic diagram of a super-fusion system architecture provided in the present application, where the super-fusion system includes one or more bare metal servers, and each bare metal server may be regarded as a super-fusion node. Each super-fusion node may provide both computing and storage capabilities.
One or more virtual machines or containers may be created on the bare metal server, through which the deployment of resources on the bare metal server is accomplished, including processor resources, memory resources, and network resources. In practical application, the resources can be divided according to the service actually carried by the super fusion node. For example, all resources in the server may be divided into multiple resource pools, with the resources in each resource pool being used to process different traffic, e.g., all resources in the server may be divided into an A resource pool, a B resource pool, and a C resource pool, where the resources in the A resource pool are used to process computing traffic, the resources in the B resource pool are used to process storage traffic, and the resources in the C resource pool are used to process other traffic. Wherein the resources in each resource pool comprise one or more of processor resources, memory resources, and network resources.
At present, the mode of dividing the resources is statically set in advance, that is, the resources in each resource pool are statically configured in advance, and in the application running process, the resources in each resource pool cannot be dynamically changed, that is, the resources for computing services can only be used for computing services, cannot be used for processing storage services and other services, and the resources for storing services can only be used for storing services, cannot be used for processing computing services and other services. If the allocation of resources is to be changed, the resource allocation parameters must be adjusted to restart the application, but this causes traffic jitter and traffic interruption, which is not good for the user experience.
The application proposes a resource management framework (resource manage framework, RMF) for enabling the flow of resources in different resource pools. Referring to the schematic diagram shown in fig. 2, fig. 2 is a schematic structural diagram of a server provided in the present application, in fig. 2, resources in a first resource pool are used for use by a computing service, resources in a second resource pool are used for use by a storage service, or resources in the first resource pool are used for use by the storage service, and resources in the second resource pool are used for use by the computing service. RMF is described below and how resources flow is described by taking a first resource pool and a second resource pool as examples.
The RMF comprises a first resource pool management component, a second resource pool management component and a resource flow component, wherein the first resource pool management component is used for managing resources in a first resource pool and specifically comprises a resource query module, a flow interface module and a binding/unbinding module, and the second resource pool management component is used for managing resources in a second resource pool and specifically comprises a resource query module, a flow interface module and a binding/unbinding module.
The resource query module is configured to query the status of resources in the resource pool, where the status of resources includes whether resources are occupied, which applications are occupied, and the priority of the occupied applications, for example, the resource query module in the first resource pool management component may be configured to query the status of a certain resource in the first resource pool, and the resource query module in the second resource pool management component may be configured to query the status of a certain resource in the second resource pool. Wherein the application-occupied resources may exist in one or more of a container, a secure container, and a process. The priority of the application may be determined according to the importance degree of the service, and the application may include a high priority application and a low priority application. Alternatively, the priority of the application may be represented by the priority of the container or the security container or the process occupied by the application, if the application is a high priority container, the container occupied by the application is a high priority security container, the occupied process is a high priority process, if the application is a low priority application, the container occupied by the application is a low priority container, the occupied security container is a low priority security container, and the occupied process is a low priority process. One form of process is a virtual machine (virtualization machine, VM). Wherein the safety container (security container) is a container with higher safety than the container.
The flow interface module is used to implement the inflow or outflow of resources, for example, the flow interface module in the first resource pool management component may be used to implement the inflow or outflow of a certain resource in the first resource pool, and the flow interface module in the second resource pool management component may be used to implement the inflow or outflow of a certain resource in the second resource pool.
The binding/unbinding module is used for realizing binding or unbinding between the resources and the applications, for example, the binding/unbinding module in the first resource pool management component is used for realizing binding or unbinding between the resources in the first resource pool and the applications, and the binding/unbinding module in the second resource pool management component is used for realizing binding or unbinding between the resources in the second resource pool and the applications.
Optionally, the first resource pool management component may further include a status management module, and the second resource pool management component may further include a status management module. The state management module is for managing the state of the resource, e.g., the state management module in the first resource pool management component is for managing the state of the resource in the first resource pool, and the state management module in the second resource pool management component is for managing the state of the resource in the second resource pool. Specifically, the state management module is used for marking the resource with a label, and marking the resource as an idle state when the resource is unoccupied; when the resource is used for processing important business, namely the resource is occupied by a high-priority application, or the resource exists in the form of the resource occupied by a high-priority container or the resource occupied by a high-priority security container or the resource occupied by a high-priority process, the resource is marked as a translatable state; when the resource is used for processing common traffic, i.e. the resource is occupied by a low priority application, or the resource exists in the form of the resource occupied by a low priority container or the resource occupied by a low priority security container or the resource occupied by a low priority process, the resource is marked as a preemptible state.
The resource flow component is configured to receive resource flow information, where the resource flow information may be an instruction or a notification sent by a module or the like located outside the RMF, or may be an instruction or a notification or information sent by a device or a module or an apparatus located outside the server, where the instruction or the notification is configured to instruct to assign one or some resources in the first resource pool to the second resource pool, or assign one or some resources in the second resource pool to the first resource pool. The resource flow component is further configured to send a response message to a module located outside the RMF, or to a device or module or means located outside the server, where the response message may be in response to an instruction or notification, where the response message is used to indicate that the resource is classified as successful or that the resource is classified as failed.
When the resource flow component in the RMF receives the resource flow information, if the resource flow information indicates that a certain target resource in the first resource pool is classified into the second resource pool, a resource inquiry module in the first resource pool management component is called to inquire the state of the target resource according to the resource flow information, corresponding operation is executed according to the state, the target resource is in an idle state, and then the target resource is classified into the second resource pool. Optionally, the target resource is bound to the new application through a binding/unbinding module in the second resource pool management component, and the target resource is marked with a label through a state management module in the second resource pool management component, and the label is determined according to the priority degree of the new application bound with the target resource.
If the resource flow information indicates that a certain target resource in the second resource pool is classified into the first resource pool, a resource inquiry module in the second resource pool management component is called according to the resource flow information to inquire the state of the target resource, corresponding operation is executed according to the state, the target resource is in an idle state, and then the target resource is classified into the first resource pool. Optionally, the target resource is bound to the new application through a binding/unbinding module in the first resource pool management component, and the target resource is marked with a label through a state management module in the first resource pool management component, and the label is determined according to the priority degree of the new application bound with the target resource.
In this example, taking the computing service and the storage service as examples, how the resources in the first resource pool and the resources in the second resource pool flow is described, and in practical application, the resources in the first resource pool and the resources in the second resource pool may also be used for other services, which is not limited in this application. In addition, in practical application, the resources in the server can be divided into more resource pools for different services, and the dividing mode and the dividing number of the resource pools are not limited.
Based on the above schematic structural diagram of the server in fig. 2, the present application provides a resource flow method, which is applied to the server, and is shown in fig. 3, and fig. 3 is a schematic flow diagram of a resource flow method provided in the present application, where the method includes, but is not limited to, the following description.
S101, a server acquires resource flow information, wherein the resource flow information indicates that target resources in a first resource pool are classified into a second resource pool.
The application describes an example in which the resource flow information indicates that the target resource in the first resource pool is classified into the second resource pool, and it can be understood that the resource flow information may also indicate that the target resource in the second resource pool is classified into the first resource pool. The resource flow information and the sender of the resource flow information may refer to the description of the related content in fig. 2, and will not be described herein. Acquisition may be understood as reception if the resource flow information is sent by a device or means or module located outside the server.
The target resource may be any one or more of a processor resource, a network resource, and a memory resource, and the specific form of the processor resource, the network resource, and the memory resource is not limited in this application. The number of resource pools included in the server is not particularly limited, and the service for processing by the resources in the first resource pool and the service for processing by the resources in the second resource pool are not particularly limited.
In a possible implementation, the server may obtain the resource flow information through a resource flow component in RMF.
Optionally, before the server obtains the resource flow information, the server may further monitor the occupied condition of each resource in the first resource pool and/or each resource in the second resource pool. For example, in one example, the server monitors usage of each resource in the first resource pool and usage of each resource in the second resource pool in real time, and when it is monitored that the resources in the second resource pool are in an occupied state and it is monitored that there are resources in the first resource pool that are not occupied, that is, there are resources in the first resource pool that are in an idle state, the server generates resource flow information indicating that a resource in the first resource pool that is in an idle state is classified into the second resource pool. For another example, in a certain scenario, the server focuses more on the progress of the traffic processed by the resources in the second resource pool or the status of the traffic than the traffic processed by the resources in the first resource pool, and the server focuses only on the use condition of each resource in the second resource pool, and when the server monitors that each resource in the second resource pool is in an occupied state, the server generates resource flow information, wherein the resource flow information indicates that a certain resource in the first resource pool is classified into the second resource pool, and the classified resource is used for processing the traffic in the second resource pool.
S102, determining the state of the target resource.
The state of the target resource includes whether the target resource is occupied, which applications are occupied, the priority level of the occupied applications.
Optionally, the states of the target resource may be divided into an idle state, a translatable state and a preemptible state, where if no occupied resource exists in the target resource, the target resource is said to be in the idle state; if the occupied resource exists in the target resource and the occupied resource is occupied by the high-priority application, the target resource is called to be in a translatable state; if the occupied resource exists in the target resource and the occupied resource is occupied by the low-priority application, the target resource is in a preemptive state. Wherein the application comprises a high priority application and a low priority application, and the priority of the application can be determined according to actual service requirements.
The state of the target resource may be changed, for example, as shown in fig. 4, if the target resource in the idle state is occupied by the low priority application, the target resource becomes a preemptible state; releasing the resources occupied by the low-priority application in the target resources, and changing the target resources into an idle state; if the target resource in the idle state is occupied by the high-priority application, the target resource is changed into a translatable state; and translating the high-priority application to the idle resources in the same resource pool, namely replacing the target resource by the idle resources, rebinding the high-priority application bound with the target resource to the idle resources, and processing the high-priority application by using the idle resources, so that the target resource is changed into an idle state, wherein the idle resources refer to the resources in the idle state. The target resource in the preemptive state can be indirectly changed into the translatable state, the target resource is replaced by the idle resource in the same resource pool, the idle resource is used for processing the low-priority application, and the target resource is used for processing the high-priority application, so that the target resource is changed into the translatable state, or the resource occupying the target resource can be directly released, the target resource is used for processing the high-priority application, and the target resource is changed into the translatable state. Alternatively, the status of the target resource may be queried by a resource query module in the first resource pool management component.
S103, executing corresponding operation according to the state of the target resource, and classifying the target resource into a second resource pool.
If the occupied resource does not exist in the target resource, namely the target resource is in an idle state, the target resource can be directly classified into the second resource pool. In a possible implementation manner, the target resource may be partitioned from the first resource pool by calling a flow interface module in the first resource pool management component, and the target resource may be classified into the second resource pool by calling a flow interface module in the second resource pool management component.
If the resources occupied by the high-priority application exist in the target resources, namely, if the target resources are in a translatable state, idle resources in the first resource pool are determined, the target resources are replaced by the idle resources, the high-priority application bound with the target resources is bound to the idle resources, the high-priority application is processed by using the idle resources, the target resources are changed into an idle state, and the target resources are classified into the second resource pool. In a possible implementation manner, the resource in the first resource pool in the idle state is queried through the resource query module in the first resource pool management component, the binding/unbinding module interacts with the container arrangement component, the high-priority application is bound to the resource in the idle state through the container arrangement component, the high-priority application is processed by using the idle resource, the target resource is changed into the idle state, the target resource is divided from the first resource pool through the flow interface module in the first resource pool management component, and the target resource is classified into the second resource pool through the flow interface module in the second resource pool management component.
Optionally, if no idle resource exists in the first resource pool, a response message is sent, and the response message indicates that the target resource is classified as failed. In a possible implementation manner, the resource flow component sends a response message to the sender of the resource flow information if no resources in the idle state exist in the first resource pool via the resource query module in the first resource pool management component.
If the target resource exists a resource occupied by the low-priority application, namely the target resource is in a preemptible state, in one example, if the first resource pool exists a free resource, the target resource can be replaced by the free resource, the free resource is used for processing the low-priority application bound with the target resource, the target resource is changed into a free state, and then the target resource is classified into a second resource pool. In a possible implementation manner, whether the resource in the idle state exists in the first resource pool is queried through a resource query module in the first resource pool management component, if so, the resource query module can interact with the container arrangement component through the binding/unbinding module, the target resource is replaced by the resource in the idle state through the container arrangement component, the target resource is divided from the first resource pool through the flow interface module, and the target resource is classified into the second resource pool through the flow interface module in the second resource pool management component.
In yet another example, if there are no free resources in the first resource pool, the occupied resources in the target resources can be directly released, the target resources become free, and the target resources are classified into the second resource pool. In a possible implementation manner, whether the resources in the idle state exist in the first resource pool is queried through a resource query module in the first resource pool management component, if the resources in the idle state do not exist, the resources occupied by the target resources can be released through the container arrangement component, the target resources are divided from the first resource pool through a flow interface module in the first resource pool management component, and the target resources are classified into the second resource pool through a flow interface module in the second resource pool management component.
Optionally, after the target resource is classified into the second resource pool, the target resource may be used to process other services. The binding/unbinding module in the second resource pool management component can be used for binding the target resource with other applications, the resource inquiry module can be used for inquiring the state of the target resource, and the state management module can be used for marking the label on the target resource. In summary, referring to the schematic diagram shown in fig. 5, in the case that the target resource is in the idle state, the target resource may be directly classified into the second resource pool, as shown by the solid line in fig. 5; under the condition that the target resource is in a preemptive state and a translatable state, the target resource needs to be changed into an idle state, if the target resource is in the preemptive state, the occupied resource in the target resource can be directly released or the target resource is changed into the idle state through the replacement of the idle resource, and if the target resource is in the translatable state, the target resource can be changed into a hollow state through the replacement of the idle resource, and then the target resource is classified into a second resource pool. The initial state of the target resource belonging to the second resource pool is an idle state, and can be changed into a preemptive state by binding with the low-priority application and into a translatable state by binding with the high-priority application. Of course, the target resource in the translatable state or the preemptible state may also be changed to the idle state, and the details of how the states change are referred to above, which are not described herein for brevity of the description.
The method described in the application may be applied to the following scenario, where one end application form in the first resource pool and the second resource pool is a container or a secure container, and the other end application form is a process, that is: the application form in the first resource pool is a container or a safe container, and the application form in the second resource pool is a process; alternatively, the application form in the first resource pool is a process, and the application form in the second resource pool is a container or a secure container. The method can also be applied to the application forms of the first resource pool and the second resource pool which are both containers, or are both safe containers, or are both processes.
In the method described in the present application, the first resource pool and the second resource pool may be located in the same server, or may be located in different servers.
It can be seen that the present application proposes a resource management framework, through which the flow between the resources in different resource pools can be implemented, for example, the flow between the resources for processing computing services and the resources for processing storage services can be implemented, when the resources in the resource pool for processing one service are insufficient, the resources can be called from the resource pool for processing another service to the present resource pool through the resource management framework, as the resource processing service of the present resource pool, the application service does not need to be restarted.
Referring to fig. 6, fig. 6 is a schematic structural diagram of a resource flow device 600 provided in the present application, where the resource flow device 600 includes:
a resource management framework 610 for relocating target resources in a first resource pool for use by one or more of a container, a secure container, and a process for processing a first service to a second resource pool for use by one or more of a container, a secure container, and a process for processing a second service.
In a possible implementation manner, the first service is one of a storage service and a computing service, and the second service is the other of the storage service and the computing service.
In a possible implementation, the target resource includes one or more of a processor resource, a memory resource, and a network resource.
In a possible implementation, the first resource pool and the second resource pool are located in the same server.
In a possible implementation, the resource management framework 610 is configured to: releasing the occupied resources under the condition that the occupied resources exist in the target resources in the first resource pool; and classifying the target resource into a second resource pool.
In a possible implementation, the resource management framework 610 is configured to: and in the case that the occupied resources are occupied by high-priority applications, translating the high-priority applications into free resources of the first resource pool.
In a possible implementation, the resource management framework 610 is configured to: in the event that the occupied resources are occupied by low priority applications, the low priority applications are deleted or translated into free resources of the first resource pool.
In a possible implementation manner, the application form in the first resource pool is a container and a security container, and the application form in the second resource pool is a process; or the application form in the first resource pool is a process, and the application form in the second resource pool is a container or a safe container.
In a possible implementation manner, the apparatus 600 further includes: and a monitoring module 620, configured to monitor the occupied condition of each resource in the first resource pool and/or each resource in the second resource pool.
In a possible implementation, the resource management framework 610 includes: the system comprises a first resource pool management component, a second resource pool management component and a resource flow component, wherein the first resource pool management component is used for managing resources in a first resource pool, the first resource pool management component comprises a resource query module, a flow interface module and a binding/unbinding module, and the second resource pool management component is used for managing resources in a second resource pool and specifically comprises a resource query module, a flow interface module and a binding/unbinding module. The resource flow component is used to communicate with an external device or external module, such as receiving instructions or notifications sent by the external device or external module, sending response messages to the external device or external module, and so forth. For the specific functions and roles of the respective functional modules in the resource management framework 610, reference may be made to the descriptions related to fig. 2, and for brevity of the description, the specific roles of the respective functional modules in the resource management framework 610 will not be described herein.
The functional modules in fig. 6 are used to implement the steps described in the embodiment of the method in fig. 3, and specifically refer to the system architecture in fig. 2 and descriptions of related contents in the embodiment of the method in fig. 3, which are not repeated herein for brevity of description.
The present application further provides a resource flow device, referring to fig. 7, fig. 7 is a schematic structural diagram of a resource flow device 700 provided in the present application, where the resource flow device 700 may be a server, and includes: processor 710, communication interface 720, and memory 730. The processor 710, the communication interface 720, and the memory 730 may be connected to each other through an internal bus 740, or may communicate by other means such as wireless transmission.
By way of example, the bus 740 may be a peripheral component interconnect (peripheral component interconnect, PCI) bus or an industry standard architecture (extended industry standard architecture, EISA) bus, among others. The bus 740 may be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown in fig. 7, but not only one bus or one type of bus.
The processor 710 may be comprised of at least one general purpose processor such as a CPU, or a combination of a CPU and a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (programmable logic device, PLD), or a combination thereof. The PLD may be a complex programmable logic device (complex programmable logic device, CPLD), a field-programmable gate array (field-programmable gate array, FPGA), general-purpose array logic (generic array logic, GAL), or any combination thereof. Processor 710 executes various types of digitally stored instructions, such as software or firmware programs stored in memory 730, which enable resource flow device 700 to provide a wide variety of services.
The memory 730 is configured to store program codes and is controlled by the processor 710 to perform the steps described in the embodiment of fig. 3, and specific reference may be made to the description of the embodiment shown in the foregoing, which is not repeated herein.
Memory 730 may include volatile memory such as RAM; memory 730 may also include non-volatile memory such as ROM, flash memory; memory 730 may also include combinations of the above.
The communication interface 720 may be a wired interface (e.g., an ethernet interface), may be an internal interface (e.g., a high-speed serial computer expansion bus (peripheral component interconnect express, PCIE) bus interface), a wired interface (e.g., an ethernet interface), or a wireless interface (e.g., a cellular network interface or using a wireless local area network interface) for communicating with other devices or modules.
It should be noted that fig. 7 is only one possible implementation of the embodiment of the present application, and in practical applications, the resource flow device may further include more or fewer components, which is not limited herein. For matters not shown or described in the embodiments of the present application, reference may be made to the related descriptions in the embodiments of the foregoing method, which are not repeated herein.
The present application also provides a computer readable storage medium comprising computer program instructions which, when executed by a resource flow device, perform some or all of the steps described in the resource flow method embodiments described above.
The present application also provides a computer program product comprising program instructions which, when executed by a resource flow device, cause the resource flow device to perform some or all of the steps described in the resource flow method embodiments described above.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and for parts of one embodiment that are not described in detail, reference may be made to the related descriptions of other embodiments.
In the above embodiments, it may be implemented in whole or in part by software, hardware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product may contain code. When the computer program product is read and executed by a computer, some or all of the steps of the rendering method described in the above method embodiments may be implemented. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. 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), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium, or a semiconductor medium, etc.
The steps in the method of the embodiment of the application can be sequentially adjusted, combined or deleted according to actual needs; the units in the device of the embodiment of the application can be divided, combined or deleted according to actual needs.
The foregoing has outlined rather broadly the more detailed description of embodiments of the present application, wherein specific examples are provided herein to illustrate the principles and embodiments of the present application, the above examples being provided solely to assist in the understanding of the methods of the present application and the core ideas thereof; meanwhile, as those skilled in the art will have modifications in the specific embodiments and application scope in accordance with the ideas of the present application, the present description should not be construed as limiting the present application in view of the above.

Claims (18)

1. A method of resource flow, comprising:
and classifying the target resources in the first resource pool into a second resource pool, wherein the resources in the first resource pool are used for one or more of a container, a safety container and a process for processing the first service, and the resources in the second resource pool are used for one or more of a container, a safety container and a process for processing the second service.
2. The method of claim 1, wherein the first service is one of a storage service and a computing service, and the second service is the other of the storage service and the computing service.
3. The method of claim 1 or 2, wherein the target resource comprises one or more of a processor resource, a memory resource, and a network resource.
4. A method according to any of claims 1 to 3, wherein the first and second resource pools are located in the same server.
5. The method of any of claims 1 to 4, wherein the classifying the target resource in the first resource pool into the second resource pool comprises:
releasing the occupied resources under the condition that the occupied resources exist in the target resources in the first resource pool;
and classifying the target resource into a second resource pool.
6. The method of claim 5, wherein the step of determining the position of the probe is performed,
and in the case that the occupied resources are occupied by high-priority applications, translating the high-priority applications into free resources of the first resource pool.
7. The method of claim 5, wherein the step of determining the position of the probe is performed,
in the event that the occupied resources are occupied by low priority applications, the low priority applications are deleted or translated into free resources of the first resource pool.
8. The method according to any of claims 1-7, wherein the application form in the first resource pool is a container, a secure container, and the application form in the second resource pool is a process; or the application form in the first resource pool is a process, and the application form in the second resource pool is a container or a safe container.
9. A resource flow device, comprising:
and the resource management framework is used for classifying the target resources in the first resource pool into a second resource pool, wherein the resources in the first resource pool are used for one or more of a container, a safety container and a process for processing the first service, and the resources in the second resource pool are used for one or more of a container, a safety container and a process for processing the second service.
10. The apparatus of claim 9, wherein the first service is one of a storage service and a computing service, and the second service is the other of the storage service and the computing service.
11. The apparatus of claim 9 or 10, wherein the target resource comprises one or more of a processor resource, a memory resource, and a network resource.
12. The apparatus according to any of claims 9 to 11, wherein the first resource pool and the second resource pool are located in the same server.
13. The apparatus according to any one of claims 9 to 12, wherein the resource management framework is configured to:
releasing the occupied resources under the condition that the occupied resources exist in the target resources in the first resource pool;
and classifying the target resource into a second resource pool.
14. The apparatus of claim 13, wherein the resource management framework is configured to:
and in the case that the occupied resources are occupied by high-priority applications, translating the high-priority applications into free resources of the first resource pool.
15. The apparatus of claim 13, wherein the resource management framework is configured to:
in the event that the occupied resources are occupied by low priority applications, the low priority applications are deleted or translated into free resources of the first resource pool.
16. The apparatus according to any of claims 9-15, wherein the application form in the first resource pool is a container, a secure container, and the application form in the second resource pool is a process; or the application form in the first resource pool is a process, and the application form in the second resource pool is a container or a safe container.
17. A resource flow device comprising a memory for storing instructions and a processor for invoking the instructions stored in the memory to perform the method of any of claims 1 to 8.
18. A computer readable storage medium comprising program instructions which, when executed by a computer, cause the computer to perform the method of any of claims 1 to 8.
CN202210099460.9A 2022-01-27 2022-01-27 Resource flow method, device and equipment Pending CN116560822A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210099460.9A CN116560822A (en) 2022-01-27 2022-01-27 Resource flow method, device and equipment
PCT/CN2023/071611 WO2023143057A1 (en) 2022-01-27 2023-01-10 Resource flow method, apparatus and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210099460.9A CN116560822A (en) 2022-01-27 2022-01-27 Resource flow method, device and equipment

Publications (1)

Publication Number Publication Date
CN116560822A true CN116560822A (en) 2023-08-08

Family

ID=87470428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210099460.9A Pending CN116560822A (en) 2022-01-27 2022-01-27 Resource flow method, device and equipment

Country Status (2)

Country Link
CN (1) CN116560822A (en)
WO (1) WO2023143057A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030061262A1 (en) * 2001-09-25 2003-03-27 Hahn Stephen C. Method and apparatus for partitioning resources within a computer system
CN102279771B (en) * 2011-09-02 2013-07-10 北京航空航天大学 Method and system for adaptively allocating resources as required in virtualization environment
TWI623236B (en) * 2016-12-19 2018-05-01 宏碁股份有限公司 Method and communication device for dynamically allocating resources
CN110457135A (en) * 2019-08-09 2019-11-15 重庆紫光华山智安科技有限公司 A kind of method of resource regulating method, device and shared GPU video memory
CN112948113A (en) * 2021-03-01 2021-06-11 上海微盟企业发展有限公司 Cluster resource management scheduling method, device, equipment and readable storage medium

Also Published As

Publication number Publication date
WO2023143057A1 (en) 2023-08-03

Similar Documents

Publication Publication Date Title
CN110611926B (en) Alarm method and device
CN109845303B (en) Management method and management unit for network slices
EP3291499B1 (en) Method and apparatus for network service capacity expansion
JP6332774B2 (en) Network function virtualized NFV failure management apparatus, device, and method
CN108370341B (en) Resource allocation method, virtual network function manager and network element management system
CN112789832B (en) Dynamic slice priority handling
US10848366B2 (en) Network function management method, management unit, and system
JP2020510384A (en) Network slice management method, unit, and system
US10993127B2 (en) Network slice instance management method, apparatus, and system
CN109600769B (en) Communication method and device
CN109600760B (en) Network management method, equipment and system
WO2020185132A1 (en) Method and current edge cloud manager for controlling resources
CN110557270A (en) Network slice management method and device
CN110933152A (en) Preheating method, device and system and electronic equipment
CN109076027B (en) Network service request
CN112752352B (en) Method and equipment for determining I-SMF (intermediate session management function)
CN116560822A (en) Resource flow method, device and equipment
CN114697210B (en) Network performance guarantee method and device
WO2018082574A1 (en) Information sending method, unit and system
CN113765871A (en) Fortress management method and device
CN111629054A (en) Message processing method, device and system, electronic equipment and readable storage medium
CN107005468B (en) Method and device for determining NSD (non-volatile memory) to be uploaded
EP4055778B1 (en) Code activation management method for network slicing solutions, and corresponding entity, server and computer program
WO2024069949A1 (en) Management of hardware resources included in communication system
CN108694571A (en) A kind of method for processing business and device based on multi-process

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