6 NFV management and orchestration information elements
7.6 NFVI hypervisor management interface
7.6.1 Description
The hypervisor exposes a wide array of functionalities, grouped by the following (non-exhaustive) categories of information:
• Host and VM Configuration/Life cycle. • Resources and VM inventory management. • Networking/connectivity.
• CPU, Pools, Clusters management and metrics. • Memory and storage management and metrics. • Utilities for task and distributed scheduling. • Alarms and Events management.
• Logging for SLA, debugging.
Interface Name NFVI Hypervisor Management Interface.
Description This interface allows an authorized consumer functional block to request a producer functional block to perform operations on hypervisor-accessed resources (e.g. compute, storage and networking) in the NFVI.
Notes (1) This interface needs to be exposed by NFV participating Hypervisors.
(2) This interface maps to the Nf-Vi/H interface described in ETSI GS NFV-INF 001 [i.4] and ETSI GS NFV-INF 004 [i.6].
(3) Guaranteeing delivery of notifications is considered as an implementation issue and deliberately left out of scope.
(4) As the information carried in notifications is the most interesting for notification interfaces, the Notify operation is described, while details of the mechanism for registering for notifications (e.g. subscribe) and all other possible operations related to the actual notification delivery mechanism are deliberately left out of scope. (5) The event notification type and format is not in-scope for the present document. (6) While not shown explicitly, interfaces may be consumed by authenticated and
authorized other parties.
Produced By NFVI.
Consumed By VIM.
Applicable
Reference Point(s)
7.6.2 Operations
Operations Description Notes
Create virtual machine This operation is needed to create and start a virtual machine
This and all subsequent virtual machine related operations fall under the "Host & VM configuration /Lifecycle" and "Resources and VM inventory management" hypervisor information categories. An example is the "create" command in virsh (KVM); rules apply for different VM goals such as affinity requirements.
Shutdown virtual machine
This operation is needed to shutdown a virtual machine
An example is the "shutdown" command in virsh (KVM).
Destroy virtual machine
This operation is needed to destroy a virtual machine
This does an immediate ungraceful shutdown of the virtual machine.
An example is the "destroy" command in virsh (KVM). Update virtual
machine
This operation is needed to update a created virtual machine
This can be used to update memory or vCPU of the virtual machine or attach, update or detach a disk or network interface.
Examples include the following commands in virsh (KVM):
• update-device, setmem, setvcpus;
• attach-device, attach-disk, attach-interface;
• detach-device, detach -disk, detach -interface. List the virtual
machines
This operation is needed to list the virtual machines
An example is the "list" command in virsh (KVM).
Query a virtual machine by name id
This operation is needed to show the details of a given virtual machine
Examples are the "dumpxml, dominfo" commands in virsh (KVM).
Reboot a virtual machine
This operation reboots a virtual machine
An example is the "reboot" command in virsh (KVM).
Suspend a virtual machine
This operation suspends a virtual machine
The suspended VM will not consume the processor resources but the memory will be maintained.
An example is the "suspend" command in virsh (KVM). Resume a virtual
machine
This operation resumes a virtual machine, which has been previously suspended
An example is the "resume" command in virsh (KVM).
Save a virtual machine
This operation stops the virtual machine and save the data to a file.
An example is the "save" command in virsh (KVM).
Restore a virtual machine
Recreate the virtual machine from a file created by the save operation.
An example is the "restore" command in virsh (KVM).
Create Storage Pool This operation creates and starts a storage pool
This, and all subsequent storage pool and virtual machine storage related operations fall under the "Memory and storage management and metrics" hypervisor information category.
Examples include pool-build, pool-create command in virsh (KVM).
Modify Storage Pool This operation modifies a specified storage pool
An example is pool-edit command in virsh (KVM). List Storage pools This operations lists the storage
pools known to the hypervisor
An example is pool-list command in virsh (KVM).
Delete Storage Pool This operation deletes a specified storage pool
Examples include pool-delete or pool-destroy command in virsh (KVM).
Query Storage Pool This operation provides the information about a storage pool
An example is pool-info command in virsh (KVM).
Create Virtual Machine storage
This operation creates a storage for the virtual machine on a given pool
Examples include vol-create, vol-create-as, vol-create-from commands in virsh (KVM). Delete Virtual Machine
Storage
This operation deletes the specified virtual machine storage
An example is vol-delete command in virsh (KVM). List Virtual machine
storage
This operations lists the virtual machine storage on a storage pool
An example is vol-list command in virsh (KVM).
Query Virtual Machine Storage
This operation provides the
information about the specified virtual machine storage
Examples include vol-info, vol-dumpxml, vol-pool command in virsh (KVM).
Operations Description Notes
Create hypervisor policies
This operation creates a hypervisor policy (a policy regarding hypervisor- accessed resources, e.g. compute, storage, networking) for a NFV tenant
This and all subsequent hypervisor policy operations fall under the "Resources and VM inventory
management" hypervisor information category.
Update hypervisor policies
This operation updates a hypervisor policy for a NFV tenant
List hypervisor policies This operation lists all the hypervisor policies created for a given NFV tenant
Query hypervisor policy
This operation shows the details of a given specific hypervisor policy relative to different resources and VMs in the database
Delete hypervisor policy
This operation deletes the hypervisor policy relative to specific resources Change VM
configuration
These operations adds/removes resources to/from the VM
This falls under the "Utilities" hypervisor information category, covering tasks relative to the VM scaling, porting, or consolidating workloads; rules for placement may apply, such as affinity; power management.
Migrate virtual machine
This operation migrates the specified VM to another hypervisor
This falls under the "Utilities" hypervisor information category. Example include migrate command in virsh (KVM).
Get hypervisor measurement results
This operation allows retrieving performance and reliability measurement results. These are multiple operations
This falls under the "Logging for SLA and debugging", "CPUs, clusters, pools" and "Memory and Storage" hypervisor information categories.
Examples include metrics on: CPU processors, Memory, Fans, Temperature, Voltage, Power, Network, Battery, Storage, Cable/Interconnect, Software components, affinity Watchdog, PCI devices; VM stalls.
Create virtual network device
This operation creates a specified virtual network device
This and all subsequent operations referring to "virtual network device" fall under the "Network/connectivity" hypervisor information category. The intent here is to represent this as a broad category, rather than listing in detail each virtual network device type and the operations allowed on it.
Delete virtual network device
This operation deletes a specified virtual network device
Update the virtual network device
This operation updates a virtual network device
List the virtual network devices
This operation lists virtual network devices created by the requesting entity
Query a virtual network device
This operation retrieves details of a specified virtual network device Notify This operation allows providing notifications about hypervisor- accessed resources changes
This falls under the "Events and alarms management" hypervisor information category.