Hybrid inventory data summarization across hybrid cloud infrastructure
A method of collecting and reporting inventory of resources deployed in a data center that includes hardware resources, a virtualization management software executed to provision virtual resources from the hardware resources, and a cloud management server executed to provision the virtual resources for tenants of the data center, includes the steps of: executing a first API call to the virtualization management software to collect first inventory of virtual resources deployed in the data center and a second API call to the cloud computing management software to collect second inventory of virtual resources deployed in the data center; storing the first and second inventory; and in response to an inventory request from a central orchestrator, initially sending a subset of the stored first and second inventory to the central orchestrator in accordance with parameters included in the inventory request, and thereafter sending updates to the subset to the central orchestrator periodically.
1 . A method of selecting a data center among data centers of a network functions virtualization platform, to which a virtual network function of a network service is to be deployed, wherein the data center is selected from a plurality of data centers, each of which includes hardware resources, a virtualization management server that is running a virtualization management software to provision virtual resources from the hardware resources, and a cloud management server running a cloud computing management software to provision the virtual resources for a plurality of tenants thereof, said method comprising:
at each of the data centers, collecting inventory data of virtual resources deployed therein and periodically pushing updates to the inventory data from said each of the data centers to a central orchestrator of the network functions virtualization platform; and then
at the central orchestrator, updating the inventory data of the data centers based on the updates to the inventory data pushed by the data centers and deploying the virtual network function in one of the data centers by performing the steps of: (i) determining requirements of the virtual network function; (ii) identifying a data center that meets the requirements based on the updated inventory data; (iii) issuing an intent-to-deploy message to the identified data center and receiving in response to the message, further updates to the inventory data of virtual resources deployed in the identified data center; (iv) confirming that the requirements of the virtual network function are still met by the identified data center using the further updated inventory data; and (v) deploying the virtual network function in the identified data center.
2 . The method of claim 1 , wherein
the requirements include minimum resource requirements of the virtual network function, and
the inventory data includes first dynamic utilization data that indicate a usage level of the virtual resources that are available to any tenant in the data center, and second dynamic utilization data that indicate a usage level of the virtual resources that are available to a particular tenant in the data center.
3 . The method of claim 1 , wherein the requirements specify a geographical location of the data center in which the virtual network function is to be deployed.
4 . The method of claim 1 , wherein the requirements specify a type of virtual network function according to which data centers are filtered out based on whether they are core data centers, regional data centers, or edge data centers.
5 . The method of claim 1 , wherein the requirements are static inventory requirements.
6 . The method of claim 1 , wherein the requirements are specified in a descriptor of the virtual network function.
7 . The method of claim 1 , wherein the requirements are specified in a descriptor of the network service.
8 . A non-transitory computer readable medium comprising instructions that are executable in processors of a computer system to carry out a method of selecting a data center among data centers of a network functions virtualization platform, to which a virtual network function of a network service is to be deployed, wherein the data center is selected from a plurality of data centers, each of which includes hardware resources, a virtualization management server that is running a virtualization management software to provision virtual resources from the hardware resources, and a cloud management server running a cloud computing management software to provision the virtual resources for a plurality of tenants thereof, said method comprising:
at each of the data centers, collecting inventory data of virtual resources deployed therein and periodically pushing updates to the inventory data from said each of the data centers to a central orchestrator of the network functions virtualization platform; and then
at the central orchestrator, updating the inventory data of the data centers based on the updates to the inventory data pushed by the data centers and deploying the virtual network function in one of the data centers by performing the steps of: (i) determining requirements of the virtual network function; (ii) identifying a data center that meets the requirements based on the updated inventory data; (iii) issuing an intent-to-deploy message to the identified data center and receiving in response to the message, further updates to the inventory data of virtual resources deployed in the identified data center; (iv) confirming that the requirements of the virtual network function are still met by the identified data center using the further updated inventory data; and (v) deploying the virtual network function in the identified data center.
9 . The non-transitory computer readable medium of claim 8 , wherein
the requirements include minimum resource requirements of the virtual network function, and
the inventory data includes first dynamic utilization data that indicate a usage level of the virtual resources that are available to any tenant in the data center, and second dynamic utilization data that indicate a usage level of the virtual resources that are available to a particular tenant in the data center.
10 . The non-transitory computer readable medium of claim 8 , wherein the requirements specify a geographical location of the data center in which the virtual network function is to be deployed.
11 . The non-transitory computer readable medium of claim 8 , wherein the requirements specify a type of virtual network function according to which data centers are filtered out based on whether they are core data centers, regional data centers, or edge data centers.
12 . The non-transitory computer readable medium of claim 8 , wherein the requirements are static inventory requirements.
13 . The non-transitory computer readable medium of claim 8 , wherein the requirements are specified in a descriptor of the virtual network function.
14 . The non-transitory computer readable medium of claim 8 , wherein the requirements are specified in a descriptor of the network service.
15 . A computer system including processors that are programmed to execute a method of selecting a data center among data centers of a network functions virtualization platform, to which a virtual network function of a network service is to be deployed, wherein the data center is selected from a plurality of data centers, each of which includes hardware resources, a virtualization management server that is running a virtualization management software to provision virtual resources from the hardware resources, and a cloud management server running a cloud computing management software to provision the virtual resources for a plurality of tenants thereof, said method comprising:
at each of the data centers, collecting inventory data of virtual resources deployed therein and periodically pushing updates to the inventory data from said each of the data centers to a central orchestrator of the network functions virtualization platform; and then
at the central orchestrator, updating the inventory data of the data centers based on the updates to the inventory data pushed by the data centers and deploying the virtual network function in one of the data centers by performing the steps of: (i) determining requirements of the virtual network function; (ii) identifying a data center that meets the requirements based on the updated inventory data; (iii) issuing an intent-to-deploy message to the identified data center and receiving in response to the message, further updates to the inventory data of virtual resources deployed in the identified data center; (iv) confirming that the requirements of the virtual network function are still met by the identified data center using the further updated inventory data; and (v) deploying the virtual network function in the identified data center.
16 . The computer system of claim 15 , wherein
the requirements include minimum resource requirements of the virtual network function, and
the inventory data includes first dynamic utilization data that indicate a usage level of the virtual resources that are available to any tenant in the data center, and second dynamic utilization data that indicate a usage level of the virtual resources that are available to a particular tenant in the data center.
17 . The computer system of claim 15 , wherein the requirements specify a geographical location of the data center in which the virtual network function is to be deployed.
18 . The computer system of claim 15 , wherein the requirements specify a type of virtual network function according to which data centers are filtered out based on whether they are core data centers, regional data centers, or edge data centers.
19 . The computer system of claim 15 , wherein the requirements are static inventory requirements.
20 . The computer system of claim 15 , wherein the requirements are specified in a descriptor of the virtual network function and in a descriptor of the network service.