This application relates to the field of communications technologies, and in particular, to a resource configuration method and an apparatus.
Network functions virtualization (NFV) is a technology in which software processing of many functions is borne by a telecommunications network operator by using commodity hardware such as x86 and a virtualization technology, and some network functions are implemented in a general high-performance server, a switch, and a storage device, so that high device costs of a network are reduced.
In a process of instantiating a virtualized network function (VNF) by using an NFV architecture, before performing a life cycle operation procedure for the VNF, a VNF manager (VNFM) may request a resource from an NFV orchestrator (NFVO) for a resource user. The NFVO allocates a resource to the resource user based on a resource limit maintained for the resource user. A quantity of resources allocated by the NFVO to the resource user is less than the resource limit, and the resource limit maintained by the NFVO is a permitted allowance. When the permitted allowance maintained by the NFVO cannot satisfy resource consumption of the VNF, the NFVO may continue to request a resource from at least one virtualized infrastructure manager (VIM). The at least one VIM may determine a tenant corresponding to the resource user, and allocate a resource to the tenant based on a locally maintained resource limit. A quantity of resources allocated by each VIM to the tenant is less than a corresponding resource limit maintained by the VIM, and the resource limit maintained by the VIM is a resource quota (quota).
It can be learned based on the foregoing descriptions that, during instantiation of a VNF, a resource configuration device (an NFVO or a VIM) can have a resource limit configured only unidirectionally, and allocate a resource to a resource user or a tenant based on a maintained resource limit. Such a resource allocation mode is relatively undiversified and inflexible. In addition, when the VNF is scaled out, after a target resource application volume for the scale-out exceeds the resource limit maintained by the resource configuration device, the resource configuration device cannot allocate sufficient resources to the VNF, affecting life cycle management of the VNF. According to the foregoing resource configuration method, a sudden requirement for an additional resource cannot be elastically responded to.
Embodiments of the present invention provide a resource configuration method and an apparatus, to resolve prior-art problems of a relatively undiversified and inflexible resource allocation mode, and being incapable of elastically responding to a sudden requirement for an additional resource.
Specific technical solutions provided in the embodiments of the present invention are as follows:
According to a first aspect, an embodiment of the present invention provides a resource configuration method. The method includes:
According to the foregoing method, the resource configuration device may obtain a resource increment specific to a resource group, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by the resource configuration device, the resource configuration device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
In one embodiment, the resource configuration device may obtain the first resource increment in the following two manners:
First manner: The resource configuration device receives a resource increment request message sent by a resource request device and carrying an identifier of the resource group, and obtains the first resource increment included in the resource increment request message.
Second manner: The resource configuration device generates the first resource increment based on a local resource configuration.
According to the first manner, the resource configuration device may obtain, by using the resource request device, a resource increment specific to the resource group, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group. According to the second manner, the resource configuration device may determine a resource increment specific to the resource group based on a resource configuration of the resource configuration device, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group.
In one embodiment, the resource configuration device allocates the first resources to the resource group by using the following method:
In this way, the resource configuration device can directly allocate the first resources to the resource group.
In one embodiment, after the resource configuration device reserves the first resources for the resource group, when a resource limit maintained by the resource configuration device is less than a target resource application volume of the resource group, the resource configuration device allocates some or all of the first resources to the resource group, where the resource limit is allocated by the resource configuration device to the resource group.
According to the foregoing manner, when the maintained resource limit is less than the target resource application volume of the resource group, the resource configuration device can allocate, to the resource group, the first resources reserved for the resource group.
In one embodiment, the resource configuration device determines the first resources of the first resource increment by using the following operations:
According to the foregoing method, the resource configuration device determines the first resources when the application condition is satisfied, to perform resource configuration on the resource group. For the resource configuration device, based on the application condition for the first resources, flexibility of performing resource configuration by the resource configuration device is improved.
In one embodiment, when the resource configuration device obtains the first resource increment in the first manner in the foregoing design, the resource configuration device obtains, from the resource increment request message, the application condition included in the resource increment request message.
In one embodiment, when the resource configuration device obtains the first resource increment in the second manner in the foregoing design, the resource configuration device obtains the application condition that is locally stored, that is sent by another device, or that is preset by a user.
In one embodiment, the application condition used in the foregoing design includes any one or a combination of a time range, a service entity range, and a virtual resource data center range; the time range is used to limit a time during which the first resources of the first resource increment are reserved for the resource group; the service entity range is used to limit an entity that implements life cycle management of a particular virtualized network function VNF; and the virtual resource data center range is used to limit a particular data center in which the first resources are located.
According to the foregoing method, the resource configuration device can reserve a resource for the resource group or allocate a resource to the resource group when determining that various dimensions of application conditions are satisfied, thereby improving flexibility of performing resource configuration by the resource configuration device.
In one embodiment, after the resource configuration device reserves the first resources for the resource group or allocates the first resources to the resource group, the resource configuration device obtains a second resource increment specific to the resource group; and releases the first resources, determines second resources of the second resource increment, and reserves the second resources for the resource group or allocates the second resources to the resource group.
According to the foregoing method, the resource configuration device can modify a resource reserved for or allocated to the resource group, thereby improving flexibility of allocating a resource to the resource group.
In one embodiment, the resource configuration device may obtain the second resource increment in the following two manners:
First manner: The resource configuration device receives a resource increment modification request message sent by the resource request device and carrying the identifier of the resource group, and obtains the second resource increment included in the resource increment modification request message.
Second manner: The resource configuration device generates the second resource increment based on a local resource configuration.
In one embodiment, after the resource configuration device reserves the first resources for the resource group or allocates the first resources to the resource group, the resource configuration device may delete the first resources in the following two manners:
First manner: The resource configuration device receives a resource increment deletion request message sent by the resource request device and carrying the identifier of the resource group, and releases the first resources based on the resource increment deletion request message.
Second manner: The resource configuration device deletes the first resources based on a local resource configuration.
According to the foregoing method, the resource configuration device can delete a resource reserved for or allocated to the resource group, thereby improving flexibility of allocating a resource to the resource group.
In one embodiment, the resource configuration device includes a network functions virtualization orchestrator NFVO or a virtualized infrastructure manager VIM.
According to a second aspect, an embodiment of the present invention provides a resource configuration method. The method includes:
According to the foregoing method provided in this embodiment of the present invention, the first resource management device obtains the resource increment request message sent by the second resource management device, and then forwards the resource increment request message to the resource configuration device corresponding to the first resource management device, to flexibly perform resource configuration on the resource group to which the second resource management device is specific. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by a resource configuration device corresponding to the second resource management device, the resource configuration device corresponding to the first resource management device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
In one embodiment, the first resource management device forwards the resource increment request message to the resource configuration device by using the following operations:
According to the foregoing method, the first resource management device processes, based on a negotiation policy of comparing identity levels, the resource increment request message sent by the second resource management device.
In one embodiment, the first resource management device forwards the resource increment request message to the resource configuration device by using the following operations:
According to the foregoing method, the first resource management device processes, based on a negotiation policy of comparing the priorities of the resource management devices, the resource increment request message sent by the second resource management device.
In one embodiment, the first resource management device forwards the resource increment request message to the resource configuration device by using the following operations:
According to the foregoing method, the first resource management device processes, based on a negotiation policy of comparing the weights of the resource management devices, the resource increment request message sent by the second resource management device.
In one embodiment, during the determining, by the first resource management device, a weight of the second resource management device, the following operations are included:
According to the foregoing method, the first resource management device can determine the weight of the first resource management device and the weight of the second resource management device.
In one embodiment, the resource increment request message further includes an application condition, and the application condition is used to indicate a necessary condition under which the resource of the resource increment is reserved for or is allocated to the resource group.
In this way, the resource configuration device corresponding to the first resource management device performs resource configuration on the resource group when the application condition is satisfied. Based on the application condition, flexibility of performing resource configuration by the resource configuration device is improved.
In one embodiment, the application condition includes any one or a combination of a time range, a service entity range, and a virtual resource data center range; the time range is used to limit a time during which the first resources of the resource increment are reserved for the resource group; the service entity range is used to limit an entity that implements life cycle management of a particular virtualized network function VNF; and the virtual resource data center range is used to limit a particular data center in which a resource requested by using the resource increment request message is located.
According to the foregoing method, the resource configuration device can reserve a resource for the resource group or allocate a resource to the resource group when determining that various dimensions of application conditions are satisfied, thereby improving flexibility of performing resource configuration by the resource configuration device.
In one embodiment, the first resource management device includes a first virtualized network function manager VNFM, and the second resource management device includes a second VNFM.
According to a third aspect, an embodiment of the present invention further provides a resource configuration device. The resource configuration device has a function of implementing operations of the resource configuration device in the foregoing method example. The function may be implemented by hardware, or may be implemented by hardware executing corresponding software. The hardware or the software includes one or more modules corresponding to the foregoing function.
In one embodiment, a structure of the resource configuration device includes an obtaining unit and a processing unit. These units may perform corresponding functions in the foregoing method example. For details, refer to detailed descriptions in the method example. Details are not described herein.
In one embodiment, a structure of the resource configuration device includes a transceiver, a processor, a bus, and a memory. The transceiver is configured to communicate and interact with another device. The processor is configured to support the resource configuration device in performing a corresponding function in the foregoing method. The memory is coupled with the processor, and stores a necessary program instruction and necessary data for the resource configuration device.
According to a fourth aspect, an embodiment of the present invention further provides a first resource management device. The first resource management device has a function of implementing operations of the first resource management device in the foregoing method example. The function may be implemented by hardware, or may be implemented by hardware executing corresponding software. The hardware or the software includes one or more modules corresponding to the foregoing function.
In one embodiment, a structure of the first resource management device includes an obtaining unit and a processing unit. These units may perform corresponding functions in the foregoing method example. For details, refer to detailed descriptions in the method example. Details are not described herein.
In one embodiment, a structure of the first resource management device includes a transceiver, a processor, a bus, and a memory. The transceiver is configured to communicate and interact with another device. The processor is configured to support the first resource management device in performing a corresponding function in the foregoing method. The memory is coupled with the processor, and stores a necessary program instruction and necessary data for the first resource management device.
According to a fifth aspect, an embodiment of the present invention provides a resource configuration system. The resource configuration system includes a resource configuration device and a resource request device.
According to a sixth aspect, an embodiment of the present invention further provides another resource configuration system. The resource configuration system includes a first resource management device, a second resource management device, and a resource configuration device corresponding to the first resource management device.
According to the resource configuration method provided in the embodiments of the present invention, the resource configuration device may obtain a resource increment specific to a resource group, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by the resource configuration device, the resource configuration device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
To make the objectives, technical solutions, and advantages of the present invention clearer, the following further describes the present invention in detail with reference to the accompanying drawings. The described embodiments are merely some rather than all of the embodiments of the present invention. All other embodiments obtained by persons of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
Embodiments of the present invention provide a resource configuration method and an apparatus, to resolve prior-art problems of a relatively undiversified and inflexible resource allocation mode, and being incapable of elastically responding to a sudden requirement for an additional resource. The method and the apparatus are conceived based on a same invention. The method and the apparatus have similar principles for resolving the problems. Therefore, for implementation of the apparatus and the method, refer to each other, and details of repeated parts are not described.
In the embodiments of the present invention, a resource configuration device may obtain a resource increment specific to a resource group, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by the resource configuration device, the resource configuration device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
In the following, some terms in this application are described, to help persons skilled in the art have a better understanding.
A resource configuration device used in the embodiments of the present invention is a device that implements resource configuration in an NFV architecture. In one embodiment, the resource configuration device may include an NFVO or a VIM.
A resource request device used in the embodiments of the present invention is a device that requests the resource configuration device to perform resource configuration in the NFV architecture. In one embodiment, the resource request device may include a VNFM or an NFVO. In a same embodiment, when the resource request device is a VNFM, the resource configuration device is an NFVO; or when the resource request device is an NFVO, the resource configuration device is a VIM.
A resource management device used in the embodiments of the present invention is a device that can send a resource request to another resource management device in the NFV architecture. One NFV architecture includes a plurality of resource management devices, and each resource management device corresponds to a resource configuration device. One of the plurality of resource management devices can send a resource request to at least one other resource management device. The resource management device may include a VNFM.
A resource group used in the embodiments of the present invention is a logic resource set, and is used to indicate a subset of at least one resource instance allocated to one tenant. When a resource is a service resource, the resource group is a service resource group. When a resource is a virtual resource, the resource group is an infrastructure resource group. Usually, in the NFV architecture, an NFVO and a VNFM perform resource configuration on a service resource group, and a VIM performs resource configuration on an infrastructure resource group.
A resource limit provided in the embodiments of the present invention is maintained by the resource configuration device, and is an allocated maximum quantity of available resources allocated by the resource configuration device to a resource group or reserved by the resource configuration device for a resource group. For example, when the resource configuration device includes an NFVO, the resource limit is a permitted allowance; or when the resource configuration device includes a VIM, the resource limit is a quota.
A permitted allowance used in the embodiments of the present invention is maintained by an NFVO in the NFV architecture. Corresponding permitted allowances maintained by the NFVO for different granularities (such as a VNFM, a VNF, a VNF group, and a network service (NS)) are different. For the NFVO, the VNFM, the VNF, the VNF group, the NS, and the like may also be referred to as resource users.
A quota used in the embodiments of the present invention is maintained by a VIM in the NFV architecture, and the VIM maintains different quotas for different tenants.
A plurality of means two or more than two.
The term and/or describes an association relationship for describing associated objects and represents that three relationships may exist. For example, A and/or B may represent the following three cases: Only A exists, both A and B exist, and only B exists. The character “/” generally indicates an “or” relationship between the associated objects.
In addition, it should be understood that, in the description of this application, terms “first” and “second” are only used to distinguish the purpose of the description, but cannot be understood as indication or implication of relative importance, and cannot be understood as an indication or implication of a sequence.
To more clearly describe the technical solutions in the embodiments of the present invention, a possible NFV architecture in the embodiments of the present invention is described below with reference to
As shown in
The NFV-MANO 110 may include an NFV orchestrator (NFVO) 111, one or more VNF managers (VNFM) 112, and one or more virtualized infrastructure managers (VIM) 113. The NFVI 150 may include a hardware resource layer including computing hardware 1521, storage hardware 1522, and network hardware 1523, a virtualization layer, and a virtual resource layer including a virtual computer 1511 (such as a virtual machine), a virtual storage 1512, and a virtual network 1513.
The computing hardware 1521 in the hardware resource layer may be a dedicated processor or a general purpose processor such as a central processing unit (CPU) configured to provide processing and computing functions. The storage hardware 1522 such as a magnetic disk or a network attached storage (NAS) is configured to provide a storage capability. The network hardware 1523 may be a switch, a router, and/or another network device.
The virtualization layer in the NFVI 150 is configured to abstract a hardware resource in the hardware resource layer to decouple the VNF 140 from a physical layer to which the hardware resource belongs, to provide a virtual resource to the VNF.
The virtual resource layer may include the virtual computer 1511, the virtual storage 1512, and the virtual network 1513. The virtual computer 1511 and the virtual storage 1512 may be provided to the VNF 140 in a form of a virtual machine or another virtual container. For example, one VNF 140 includes one or more virtual machines. The virtualization layer forms the virtual network 1513 by abstracting the network hardware 1523. The virtual network 1513 is configured to implement communication between a plurality of virtual machines or a plurality of virtual containers of another type that bear the VNF. The virtual network may be created by using a technology such as a virtual LAN (VLAN), a virtual private local area network service (VPLS), a virtual extensible local area network (VxLAN), or network virtualization using generic routing encapsulation (NVGRE).
The OSS/BSS 120 is mainly oriented to a telecommunications service operator, and provides comprehensive network management and service operation functions, including network management (such as fault monitoring and network information collection), charging management, customer service management, and the like.
The NFV-MANO 110 may be configured to implement monitoring and management of the VNF 140 and the NFVI 150. The NFVO 111 may communicate with the one or more VNFMs 112 to implement a resource related request, send configuration information to the VNFM 112, and collect status information of the VNF 140. Additionally, the NFVO 111 may communicate with the VIM 113 to allocate a resource, and/or reserve and exchange configuration information and status information of virtualized hardware resources. The VNFM 112 may be configured to: manage the one or more VNFs 140 and perform various management functions, for example, initiate, update, query, and/or terminate the VNF 140. The VIM 113 may be configured to control and manage interaction between the VNF 140 and the computing hardware 1521, the storage hardware 1522, the network hardware 1523, the virtual computer 1511, the virtual storage 1512, and the virtual network 1513. For example, the VIM 113 may be configured to perform an operation of allocating a resource to the VNF 140. The VNFM 112 and the VIM 113 may communicate with each other to exchange the configuration and status information of the virtualized hardware resources.
The NFVI 150 includes hardware and software. The hardware and the software jointly establish a virtualized environment to deploy, manage, and execute the VNF 140. In other words, the hardware resource layer and the virtual resource layer are configured to provide a virtual resource, for example, a virtual machine and/or a virtual container in another form, to the VNF 140.
As shown in
As can be learned based on descriptions of functions of composition parts in a system architecture of an NFV system, the VNFM 112 is configured to perform various management functions on the VNF 140, for example, initiate, update, query, and terminate the VNF 140. The VIM 113 is configured to control and manage interaction between the VNF 140 and other parts. Therefore, if one VNF 140 is to be implemented, the VNFM 112 and the VIM 113 need to work cooperatively. Therefore, the VNFM 112 and the VIM 113 can communicate with each other to exchange the configuration and status information of the virtualized hardware resources. The VNFM 112 and the VIM 113 establish a communication connection by using an interface.
An embodiment of the present invention provides a resource configuration method. The method may be used in, but is not limited to, the NFV architecture shown in
Operation 201: The resource configuration device obtains a first resource increment specific to a resource group.
In one embodiment, when the resource configuration device is an NFVO, the resource group is a service resource group; or when the resource configuration device is a VIM, the resource group is an infrastructure resource group.
In one embodiment, the resource configuration device may obtain the first resource increment in the following two manners:
First manner: The resource configuration device receives a resource increment request message sent by a resource request device and carrying an identifier of the resource group, and obtains the first resource increment included in the resource increment request message.
Second manner: The resource configuration device generates the first resource increment based on a local resource configuration.
In the first manner, the resource request device may include a VNFM or an NFVO. When the resource request device is a VNFM, the resource configuration device is an NFVO; or when the resource request device is an NFVO, the resource configuration device is a VIM. In the second manner, the resource request device may include an NFVO or a VIM.
Operation 202: The resource configuration device determines first resources of the first resource increment, and reserves the first resources for the resource group or allocates the first resources to the resource group.
In one embodiment, the first resource may be a computing resource, a network resource, a storage resource, or a port resource. This is not limited in the present invention.
In one embodiment, the determining, by the resource configuration device, first resources of the first resource increment includes the following operations:
According to the foregoing method, the resource configuration device determines the first resources when the application condition is satisfied, to perform resource configuration on the resource group. For the resource configuration device, based on the application condition for the first resources, flexibility of performing resource configuration by the resource configuration device is improved.
In one embodiment, the application condition may include, but is not limited to, any one or a combination of a time range, a service entity range, and a virtual resource data center range;
According to the foregoing method, the resource configuration device can reserve a resource for the resource group or allocate a resource to the resource group when determining that various dimensions of application conditions are satisfied, thereby improving flexibility of performing resource configuration by the resource configuration device.
In one embodiment, in operation 202, the resource configuration device may directly allocate the first resources to the resource group; or the resource configuration device reserves the first resources for the resource group instead of directly allocating the first resources to the resource group. In this way, when a resource limit allocated by the resource configuration device to the resource group cannot meet a requirement, the first resources are allocated to the resource group.
The allocating, by the resource configuration device, the first resources to the resource group includes:
According to the method, the resource configuration device can directly add the first resources to the resource limit.
In one embodiment, after the reserving, by the resource configuration device, the first resources for the resource group, the method further includes:
According to the foregoing method, the resource configuration device can allocate a resource to the resource group based on the first resources.
In one embodiment, when the resource configuration device performs operation 201, if the resource configuration device obtains the first resource increment in the first manner, after operation 202, the resource configuration device may return a resource increment response message to the resource request device. The resource increment response message is used to notify the resource request device that the resource configuration device has performed resource configuration on the resource group.
In one embodiment, after operation 202, the resource configuration device may further manage, for example, modify or delete, the first resources reserved for or allocated to the resource group.
In one embodiment, after the resource configuration device reserves the first resources for the resource group or allocates the first resources to the resource group, the resource configuration device modifies the first resources, and the following operations are included:
According to the foregoing method, the resource configuration device can modify a resource reserved for or allocated to the resource group, thereby improving flexibility of allocating a resource to the resource group.
In one embodiment, in the foregoing operations, a manner of obtaining the second resource increment by the resource configuration device is the same as a manner of obtaining the first resource increment, and includes the following two manners. Details are not described again in this embodiment of the present invention:
First manner: The resource configuration device receives a resource increment modification request message sent by the resource request device and carrying the identifier of the resource group, and obtains the second resource increment included in the resource increment modification request message.
Second manner: The resource configuration device generates the second resource increment based on a local resource configuration.
In one embodiment, after the resource configuration device reserves the first resources for the resource group or allocates the first resources to the resource group, the resource configuration device may delete the first resources in the following two manners:
First manner: The resource configuration device receives a resource increment deletion request message sent by the resource request device and carrying the identifier of the resource group, and releases the first resources based on the resource increment deletion request message.
Second manner: The resource configuration device deletes the first resources based on a local resource configuration. Herein, deletion of the first resources may be deletion of information about the first resources from a resource configuration table.
According to the foregoing method, the resource configuration device can delete a resource reserved for or allocated to the resource group, thereby improving flexibility of allocating a resource to the resource group.
According to the resource configuration method provided in this embodiment of the present invention, the resource configuration device may obtain a resource increment specific to a resource group, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by the resource configuration device, the resource configuration device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
An embodiment of the present invention further provides another resource configuration method. The method may be used in, but is not limited to, the NFV architecture shown in
Operation 301: A first resource management device obtains a resource increment request message sent by a second resource management device and carrying an identifier of a resource group, where the resource increment request message further includes a resource increment.
In one embodiment, a resource management interface is maintained between resource management devices in the NFV architecture, and is configured to perform resource negotiation. To be specific, the first resource management device sends a resource increment request message to another resource management device (the second resource management device), to request the another resource management device to perform resource configuration on the resource group corresponding to the first resource management device.
Operation 302: The first resource management device forwards the resource increment request message to a resource configuration device, so that the resource configuration device reserves a resource for the resource group or allocates a resource to the resource group based on the resource increment request message, where the resource configuration device corresponds to the first resource management device.
In one embodiment, the first resource management device processes, based on a particular negotiation policy, the resource increment request message sent by the second resource management device. The negotiation policy includes a manner such as a manner of comparing identity levels (which are classified into a primary manager, a non-primary manager, and the like), a manner of comparing priorities of the resource management devices, or a manner of comparing weights of the resource management devices.
In one embodiment, when the first resource management device performs operation 302 by using the manner of comparing the identity levels, the following operations are included:
In one embodiment, when the first resource management device performs operation 302 by using the manner of comparing the priorities of the resource management devices, the following operations are included:
In one embodiment, when the first resource management device performs operation 302 by using the manner of comparing the weights of the resource management devices, the following operations are included:
In one embodiment, the determining, by the first resource management device, a weight of the second resource management device includes:
According to the foregoing three manners, the first resource management device can implement resource negotiation in a plurality of different manners.
The resource increment request message further includes an application condition, and the application condition is used to indicate a necessary condition under which the resource of the resource increment is reserved for or is allocated to the resource group.
The application condition is carried in the resource increment request message. In this way, the resource configuration device corresponding to the first resource management device performs resource configuration on the resource group when the application condition is satisfied. Based on the application condition, flexibility of performing resource configuration by the resource configuration device is improved.
In one embodiment, the application condition may include, but is not limited to, any one or a combination of a time range, a service entity range, and a virtual resource data center range;
According to the foregoing method, the resource configuration device can reserve a resource for the resource group or allocate a resource to the resource group when determining that various dimensions of application conditions are satisfied, thereby improving flexibility of performing resource configuration by the resource configuration device.
In one embodiment, after operation 302, the resource configuration device corresponding to the first resource management device can perform, by using the resource configuration method shown in
According to the resource configuration method provided in this embodiment of the present invention, the first resource management device obtains the resource increment request message sent by the second resource management device, and then forwards the resource increment request message to the resource configuration device corresponding to the first resource management device, to flexibly perform resource configuration on the resource group to which the second resource management device is specific. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by a resource configuration device corresponding to the second resource management device, the resource configuration device corresponding to the first resource management device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
Based on the foregoing embodiment, an embodiment of the present invention further provides a resource configuration device. The resource configuration device can implement the resource configuration method shown in
The obtaining unit 401 is configured to obtain a first resource increment specific to a resource group.
The processing unit 402 is configured to: determine first resources of the first resource increment, and reserve the first resources for the resource group or allocate the first resources to the resource group.
In one embodiment, the obtaining unit 401 is further configured to:
In one embodiment, when allocating the first resources to the resource group, the processing unit 402 is specifically configured to:
In one embodiment, the processing unit 402 is further configured to:
In one embodiment, when determining the first resources of the first resource increment, the processing unit 402 is further configured to:
In one embodiment, the application condition includes any one or a combination of a time range, a service entity range, and a virtual resource data center range;
In one embodiment, the obtaining unit 401 is further configured to:
In one embodiment, when obtaining the second resource increment, the obtaining unit 401 is further configured to:
In one embodiment, the processing unit 402 is further configured to: after reserving the first resources for the resource group or allocating the first resources to the resource group, receive a resource increment deletion request message sent by the resource request device and carrying the identifier of the resource group, and release the first resources based on the resource increment deletion request message; or delete the first resources based on a local resource configuration.
In one embodiment, the resource configuration device 400 includes an NFVO or a VIM.
According to the resource configuration device provided in this embodiment of the present invention, the resource configuration device may obtain a resource increment specific to a resource group, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by the resource configuration device, the resource configuration device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
Based on the foregoing embodiment, an embodiment of the present invention further provides a first resource management device. The resource management device can implement the resource configuration method shown in
The obtaining unit 501 is configured to obtain a resource increment request message sent by a second resource management device and carrying an identifier of a resource group, where the resource increment request message further includes a resource increment.
The processing unit 502 is configured to forward the resource increment request message to a resource configuration device, so that the resource configuration device reserves a resource for the resource group or allocates a resource to the resource group based on the resource increment request message, where the resource configuration device corresponds to the first resource management device 500.
In one embodiment, the processing unit 502 is further configured to:
In one embodiment, the processing unit 502 is further configured to:
In one embodiment, the processing unit 502 is further configured to:
In one embodiment, when determining the weight of the second resource management device, the processing unit 502 is further configured to:
In one embodiment, the resource increment request message further includes an application condition, and the application condition is used to indicate a necessary condition under which the resource of the resource increment is reserved for or is allocated to the resource group.
In one embodiment, the application condition includes any one or a combination of a time range, a service entity range, and a virtual resource data center range;
In one embodiment, the first resource management device 500 includes a first VNFM, and the second resource management device includes a second VNFM.
According to the first resource management device provided in this embodiment of the present invention, the first resource management device obtains the resource increment request message sent by the second resource management device, and then forwards the resource increment request message to the resource configuration device corresponding to the first resource management device, to flexibly perform resource configuration on the resource group to which the second resource management device is specific. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by a resource configuration device corresponding to the second resource management device, the resource configuration device corresponding to the first resource management device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
It should be noted that unit division in this embodiment of the present invention is an example and is merely logical function division. During actual implementation, there may be another division manner. Functional units in this embodiment of this application may be integrated into one processing unit, or each of the units may exist alone physically, or two or more units are integrated into one unit. The integrated unit may be implemented in a form of hardware, or may be implemented in a form of a software functional unit.
When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, the integrated unit may be stored in a computer-readable storage medium. Based on such an understanding, the technical solutions of this application essentially, or the part contributing to the prior art, or all or some of the technical solutions may be implemented in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for instructing a computer device (which may be a personal computer, a server, a network device, or the like) or a processor to perform all or some of the operations of the methods described in the embodiments of this application. The foregoing storage medium includes: any medium that can store program code, such as a USB flash drive, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disc.
Based on the foregoing embodiment, an embodiment of the present invention further provides a resource configuration device. The resource configuration device may include the NFVO or the VIM in the NFV architecture shown in
The transceiver 601, the processor 602, and the memory 604 are connected to each other by using the bus 603. The bus 603 may be a peripheral component interconnect (PCI) bus, an extended industry standard architecture (EISA) bus, or the like. The bus may be categorized as an address bus, a data bus, a control bus, or the like. For ease of indication, the bus is indicated by using only one bold line in
The transceiver 601 is configured to communicate and interact with another device connected to the resource configuration device 600.
The processor 602 is configured to implement the resource configuration method shown in
In one embodiment, when obtaining the first resource increment, the processor 602 is further configured to:
In one embodiment, when allocating the first resources to the resource group, the processor 602 is further configured to:
In one embodiment, the processor 602 is further configured to:
In one embodiment, when determining the first resources of the first resource increment, the processor 602 is further configured to:
In one embodiment, the application condition includes any one or a combination of a time range, a service entity range, and a virtual resource data center range;
In one embodiment, the processor 602 is further configured to:
In one embodiment, when obtaining the second resource increment, the processor 602 is further configured to:
In one embodiment, the processor 602 is further configured to:
The memory 604 is configured to store a program and the like. Specifically, the program may include program code, and the program code includes a computer operation instruction. The memory 604 may include a random access memory (RAM), and may further include a non-volatile memory, for example, at least one magnetic disk memory. The processor 602 executes an application program stored in the memory 604 to implement the foregoing function, to implement the resource configuration method shown in
According to the resource configuration device provided in this embodiment of the present invention, the resource configuration device may obtain a resource increment specific to a resource group, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by the resource configuration device, the resource configuration device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
Based on the foregoing embodiment, an embodiment of the present invention further provides a first resource management device. The first resource management device may include a first VNFM in the NFV architecture shown in
The transceiver 701, the processor 702, and the memory 704 are connected to each other by using the bus 703. The bus 703 may be a peripheral component interconnect (PCI) bus, an extended industry standard architecture (EISA) bus, or the like. The bus may be categorized as an address bus, a data bus, a control bus, or the like. For ease of indication, the bus is indicated by using only one bold line in
The transceiver 701 is configured to communicate and interact with another device connected to the resource management device 700.
The processor 702 is configured to implement the resource configuration method shown in
In one embodiment, when forwarding the resource increment request message to the resource configuration device, the processor 702 is further configured to:
In one embodiment, when forwarding the resource increment request message to the resource configuration device, the processor 702 is further configured to:
In one embodiment, when forwarding the resource increment request message to the resource configuration device, the processor 702 is further configured to:
In one embodiment, when determining the weight of the second resource management device, the processor 702 is further configured to:
In one embodiment, the resource increment request message further includes an application condition, and the application condition is used to indicate a necessary condition under which the resource of the resource increment is reserved for or is allocated to the resource group.
In one embodiment, the application condition includes any one or a combination of a time range, a service entity range, and a virtual resource data center range;
The memory 704 is configured to store a program and the like. Specifically, the program may include program code, and the program code includes a computer operation instruction. The memory 704 may include a random access memory (RAM), and may further include a non-volatile memory, for example, at least one magnetic disk memory. The processor 702 executes an application program stored in the memory 704 to implement the foregoing function, to implement the resource configuration method shown in
According to the first resource management device provided in this embodiment of the present invention, the first resource management device obtains the resource increment request message sent by the second resource management device, and then forwards the resource increment request message to the resource configuration device corresponding to the first resource management device, to flexibly perform resource configuration on the resource group to which the second resource management device is specific. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by a resource configuration device corresponding to the second resource management device, the resource configuration device corresponding to the first resource management device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
According to the resource configuration method and the apparatus provided in the embodiments of the present invention, the resource configuration device may obtain a resource increment specific to a resource group, and reserve a resource of the resource increment for the resource group or allocate a resource of the resource increment to the resource group, so that the resource configuration device can flexibly allocate a resource to the resource group. When the resource group needs to be scaled out, but a target resource application volume for the scale-out exceeds a resource limit of the resource group that is maintained by the resource configuration device, the resource configuration device can allocate sufficient resources to the resource group. Therefore, according to the resource allocation method, a sudden requirement for an additional resource can be elastically responded to.
Persons skilled in the art should understand that the embodiments of the present invention may be provided as a method, a system, or a computer program product. Therefore, the present invention may use a form of hardware only embodiments, software only embodiments, or embodiments with a combination of software and hardware. Moreover, the present invention may use a form of a computer program product that is implemented on one or more computer-usable storage media (including but not limited to a disk memory, a CD-ROM, an optical memory, and the like) that include computer-usable program code.
The present invention is described with reference to the flowcharts and/or block diagrams of the method, the device (system), and the computer program product according to the embodiments of the present invention. It should be understood that computer program instructions may be used to implement each process and/or each block in the flowcharts and/or the block diagrams, and a combination of a process and/or a block in the flowcharts and/or the block diagrams. These computer program instructions may be provided for a general-purpose computer, a dedicated computer, an embedded processor, or a processor of any other programmable data processing device to generate a machine, so that the instructions executed by a computer or a processor of any other programmable data processing device generate an apparatus for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
These computer program instructions may be stored in a computer readable memory that can instruct the computer or any other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory generate an artifact that includes an instruction apparatus. The instruction apparatus implements a specified function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
These computer program instructions may also be loaded onto a computer or another programmable data processing device, so that a series of operations and operations are performed on the computer or the another programmable device, thereby generating computer-implemented processing. Therefore, the instructions executed on the computer or the another programmable device provide operations for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
Although some embodiments of the present invention have been described, persons skilled in the art can make changes and modifications to these embodiments once they learn the basic inventive concept. Therefore, the following claims are intended to be construed as to cover the preferred embodiments and all changes and modifications falling within the scope of the present invention.
Obviously, persons skilled in the art can make various modifications and variations to the embodiments of the present invention without departing from the spirit and scope of the embodiments of the present invention. The present invention is intended to cover these modifications and variations provided that they fall within the scope of protection defined by the following claims and their equivalent technologies.
This application is a continuation of International Application No. PCT/CN2016/091080, filed on Jul. 22, 2016, the disclosure of which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2016/091080 | Jul 2016 | US |
Child | 16250987 | US |