existing_vim_volumes: list,
created_items: dict,
vm_av_zone: list,
+ block_device_mapping: dict,
disk_list: list = None,
) -> None:
"""Prepare all volumes for new VM instance.
existing_vim_volumes (list): List of existing volumes
created_items (dict): All created items belongs to VM
vm_av_zone (list): VM availability zone
+ block_device_mapping (dict): Block devices to be attached to VM
disk_list (list): List of disks
"""
boot_volume_id = None
elapsed_time = 0
- block_device_mapping = {}
for disk in disk_list:
if "image_id" in disk:
# Root persistent volume
external_network = []
# List of ports with port-security disabled
no_secured_ports = []
- block_device_mapping = None
+ block_device_mapping = {}
existing_vim_volumes = []
server_group_id = None
scheduller_hints = {}
existing_vim_volumes=existing_vim_volumes,
created_items=created_items,
vm_av_zone=vm_av_zone,
+ block_device_mapping=block_device_mapping,
disk_list=disk_list,
)
self.__wait_for_vm(vm_id, "ACTIVE")
instance_status = self.get_vdu_state(vm_id)[0]
return instance_status
+
+ def get_monitoring_data(self):
+ try:
+ self.logger.debug("Getting servers and ports data from Openstack VIMs.")
+ self._reload_connection()
+ all_servers = self.nova.servers.list(detailed=True)
+ all_ports = self.neutron.list_ports()
+ return all_servers, all_ports
+ except (
+ vimconn.VimConnException,
+ vimconn.VimConnNotFoundException,
+ vimconn.VimConnConnectionException,
+ ) as e:
+ raise vimconn.VimConnException(
+ f"Exception in monitoring while getting VMs and ports status: {str(e)}"
+ )