Feature #4913
Enhance vCenter Storage management
Status: | Closed | Start date: | 11/10/2016 | ||
---|---|---|---|---|---|
Priority: | Normal | Due date: | |||
Assignee: | Miguel Ángel Álvarez Cabrerizo | % Done: | 90% | ||
Category: | vCenter | ||||
Target version: | Release 5.4 | ||||
Resolution: | Pull request: |
Description
The idea is to bring it to KVM support level, incuding:
- Non persistent images
- Full awareness of VM disks
- Linked clone
- Resize Operations
Associated revisions
F #4913: Temporary solution for DS/clone to other datastores
This solutions is not adequate because it requires 2 API calls
to the name of the vcenter datastore
F #4913: Add support for save_as in the ds/mkfs script.
Change the naming schema for new datablocks to an uuid.
F #4913: Typo
F #4913: Add tm/cpds for vcenter
F #4913: Support multiple disks and use VCENTER_NAME
F #4913: Add support for vcenter tm/mkimage
F #4913: tm/mkswap not supported
F #4913: Split vcenter_driver into multiple files
F #4913: First refactored draft version. Monitoring works without
network monitoring
F #4913: Adapt vcenter.rb (run_probes) to new structure
F #4913: Implement ds drivers: mkfs, rm and monitor
F #4913: Add necessary functions for virtual machine deploy
F #4913: Virtual machine deploy work in progress
F #4913: Fix return value problem in XMLElement
F #4913: Add network file to vcenter_driver2
F #4913: virtual machine work in progress part II
F #4913: virtual_machine.rb is now prepared for deploy
F #4913: New VIHelper class (link between ONE and vCenter)
F #4913: deploy action
F #4913: Add memoize to the host class
F #4913: Add file management capabilities to the Datastore class
F #4913: tm/clone now does its work
F #4913: adjust the vcenter model representation
F #4913: Modify inherit attributes to support the new model
F #4913: Fix vCenter client for Ruby 2.4 (crypt token must be 32bytes)
F #4913: handle vi_client in a smarter way and use proper ruby syntax
F #4913: Enable network performance monitor
F #4913: monitor datastores and customizations
F #4913: adds retrieve_xmlelements
Easy way to obtain XMLElements from an xpath
F #4913: adds find_by_name, to retrieve an OpenNebula element by name
F #4913: poweroff action
F #4913: cosmetic changes
F #4913: Monitoring returns the new model parameters
- Public cloud is not used any more
- VCENTER_REF is how a VM is identified
- SCHED_REQUIREMENTS uses the OpenNebula host id instead of the
name of the cluster in vCenter, which allows renaming
F #4913: add comments
F #4913: It is not necessary to require the opennebula library
It is being required by the vcenter_driver2
F #4913: Adds the cancel action
F #4913: host and target_ds_ref are dynamically calculated
F #4913: Reverse the order of parameters in new_from_ref
F #4913: isolate the clone_vm from non related functionality
F #4913: No need to specify DC_REF in the datastore template any more
F #4913: Refactor deploy
F #4913: Remove debugging info
F #4913: cosmetic changes
F #4913: VIClient new_from_hostname no longer needed
F #4913: Moves host_id retrieval out of begin
F #4913: Refactor VM reboot
F #4913: Refactor VM reconfigure
F #4913: Refactor VM attach/detach disk
F #4913: VM Methods att/det disk, reconfig, reboot
F #4913: No need to specify DC_REF in rm
F #4913: Add drv_action to attach_nic
F #4913: Refactor VM save
F #4913: Refactor VM restore
F #4913: VM migrate not supported, replaced bash with ruby
F #4913: Refactor VM reset
F #4913: Improved code for attach_disk and regenerate_context
F #4913: Fix attach_disk method
F #4913: Add FileHelper class with methods for cp, clone...
F #4913: Add backtrace to VM actions rescue
F #4913: Add FileHelper to vcenter_driver2
F #4913: Move get_img_name to FileHelper
F #4913: Add run in silence methods for uploading/downloading files
F #4913: Fix get_img_name
F #4913: Add methods for DS and TM actions
F #4913: Code improvements TM clone
F #4913: Refactor TM cpds
F #4913: Refactor TM delete
F #4913: Refactor TM mkimage
F #4913: Refactor DS cp
F #4913: Refactor DS stat
F #4913: Refactor DS clone
F #4913: Replace and with && in if clauses (DS cp)
F #4913: Fix symlinks for dummy and not supported vmm actions
F #4913: Add missing backtrace to rescue clause in VMM/DS actions
F #4913: Add missing backtrace to rescue clause in VMM/DS actions
F #4913: Replace += with << in DS cp action for a better performance
F #4913: Tweak the snapshot actions
Snapshot name is stored in the description field of vCenter
The information is passed via STDIN and not as positional argument
F #4913: Attach-nic requires the XML data of the VM
This information is passed via STDIN and not as a positional argument.
F #4913: Remove unneeded vm_ref assignments
F #4913: Refactor VMM Shutdown
F #4913: Add explicit VIM close connection to avoid idle vcenter sessions
F #4913: Add Storpod support to DS monitor and VMM deploy actions
F #4913: tm/delete detaches each disk first and destroys the VM
F #4913: tm/mvds detaches the disk from the VM so it does not get
removed
F #4913: Move explicit VIM close connection to ensure
F #4913: use memoize to fetch summary
F #4913: Remove unnecessary method
F #4913: Refactor 'check_valid' function
F #4913: Add new_from_ref to Storage class
F #4913: Add linked clone logic to VMM deploy (clone_vm)
F #4913: Use a well known directory to store opennebula images
F #4913: Directory where images are stored in vCenter datastores is
configurable
F #4913: Delete empty dirs after removing an image
F #4913: Proper begin/rescue clause for the monitor action
F #4913: Install new vcenter driver
F #4913: Replace VCENTER_CLUSTER with VCENTER_ONE_HOST_ID
F #4913: Fix datastore stat action
F #4913: Migrate import tools
F #4913: Add VCENTER_NET_REF usage to calculate_add_nic_spec
F #4913: Replace VCENTER_TYPE with a more descriptive VCENTER_PORTGRP_TYPE
F #4913: Replace remnants of VCENTER_RESOURCE_POOL with VCENTER_RP_REF
F #4913: Add importer.rb to vcenter_driver requirements
F #4913: Fix bugs in import tool
F #4913: Add VCENTER_VERSION when importing clusters to track API version
F #4913: Sunstone can import clusters with the new attributes
F #4913: Add VCENTER_NAME during host monitorization for informative purposes
F #4913: Fix VCENTER_TEMPLATE_REF in template import
F #4913: Improve image import code
F #4913: Replace remnants of VCENTER_CLUSTER with VCENTER_ONE_HOST_ID
F #4913: Replace remnants of VCENTER_DATASTORE with VCENTER_DS_REF
F #4913: Initial support for importing disks from vcenter templates
F #4913: Replace IMPORT_VM_ID uuid with vm moref
F #4913: Replace VMM detach_disk action with dummy.sh
F #4913: Replace VCENTER_PORTGRP_TYPE with VCENTER_PORTGROUP_TYPE
F #4913: Add VCENTER_ to some vcenter specific attributes. Replace deprecated toolsVersionStatus
F #4913: Replace ESX_HOST with VCENTER_ESX_HOST
F #4913: Remove vm.destroy and deprecated detach disk from VMM shutdown
F #4913: Populate vm.one_item so VM ID is there when getting image file names to be removed
F #4913: Fix disk_attached_to_vm
F #4913: Add VCENTER_DISK_TYPE attribute
F #4913: Fix some install files
F #4913: style
F #4913: clearer code
F #4913: Fix contextualization info was not enconded using Base64
F #4913: oneimage create now supports adapter_type and disk_type for
vcenter
F #4913: Don't raise exception if device is not found in vcenter's vm when detaching a disk
F #4913: Get vcenter adapter and disk types from defaults file if attributes missing in driver action
F #4913: Fix wrong state for disk-saveas use LCM_STATE instead
F #4913: Fix attach / detach NIC use driver_action info
F #4913: Fix style
F #4913: Add running info to VM after resume
F #4913: Fix attach nic and attach disk issues
F #4913: Fix shutdown, fix disk_attached_to_vm, add has_snpashots?
F #4913: Add system snapshots limitations.
F #4913: Fix some image files not found in import
F #4913: Add --use-defaults flag to import actions
F #4913: Add VCENTER_IMPORTED attribute and do not remove images with it set to YES
F #4913: Add default DEV_PREFIX to imported images. Change return info for images being imported from template
F #4913: Fix copy_virtual_disk must be able to create target directory
F #4913: Add volatile image directory support
F #4913: Change arguments to copy_virtual_disk. Minor fixes
F #4913: Get img_path for deletion from detach_disk action
F #4913: Minor fixes
F #4913: Raise error if opennebula error and exit_if_fail is set to false
F #4913: Should not use cached config info. Fix add_new_scsi
F #4913: Do not tm_clone unmanaged disks
F #4913: Remove debug code
F #4913: Ensure close vi_client connection IF vi_client exists
F #4913: Ensure close vi_client connection IF vi_client exists
F #4913: Add begin rescue to IM poll action
F #4913: Add support for unmanaged disks when looking for disks
F #4913: Return ds info when a disk is detached
F #4913: Add reference in VM USER_TEMPLATE for unmanaged disks
F #4913: Set OPENNEBULA_MANAGED=NO for already imported images (unamanaged disks)
F #4913: Fix style
F #4913: Fix wrong source datastore in tm/cpds
F #4913: Fix attach/detach nics in poweroff with hotplugged_nics variable
F #4913: Add support for unmanaged and managed disks resize when instantiate VM
F #4913: Merge branch 'master' into feature-4913
F #4913: Remove vcenter_uuid for get_images call (not needed)
F #4913: Add refactored importers code to vcenter routes for Sunstone importing tools
F #4913: Add support for unmanaged nics. Remove opennebula.hotplugged_nics
Feature #4913 (PR #231) Changes in Sunstone for new storage support in vCenter
- F #4913 Replaced vCenter Template UUID with VCENTER_TEMPLATE_REF field
- F #4913 Replaced CUSTOMIZATION_SPEC with VCENTER_CUSTOMIZATION_SPEC and stored that value in USER_TEMPLATE not in VCENTER_PUBLIC_CLOUD
- F #4913 added posibility to instanciate MV
- F #4913 Removed VCENTER_PUBLIC_CLOUD
- F #4913 Used VCENTER_REF when import a template
F #4913 vCenter Sunstone for new Storage Management (PR #232)
- vCenter image
- Enabled System in create Datastore when vCenter is selecting
F #4913 Disabled datastore creation
Feature #4913: Attach disk (PR #233)
- Attach disk | SWAP removed for vCenter templates
- Attach disk | qcow2 removed for vCenter templates
- Attach disk | SWAP & cowq2 removed for vCenter vms
- VM attach disk | Changed 'Advanced options' for vCenter disks
- Restyled import image
- Update html.hbs
Add missing ;
F #4913 Disabled datastore creation (#235)
F #4913 Virtual Network vCenter (PR #236)
F #4913 Solved bug attach disk in vCenter VM (#238)
F #4913: Solved some wrong types declared for Rbvmomi SOAP responses
F #4913 vcenter create/update template
- Removed VM disks Keep checkbox
- Removed KEEP_DISKS_ON_DONE attribute
- Removed selection Default Datastore
- Removed selection Default Resource Pool
F #4913: Add VNM files for vcenter driver
F #4913: Modify install.sh to add vcenter VNM driver files
F #4913: Ignore error if file to be deleted does not exist
F #4913: Deprecate Keep Disks on done
F #4913: Deprecate Keep Disks on done (oca)
F #4913: detach_all_disks no longer need (keep_disks deprecation)
F #4913: Fix bug, wrong host id retrieval
F #4913: Add DS name reference for unmanaged disks to VM template
F #4913: Unmanaged disks can be saved as (tm/cpds)
F #4913: VLAN info (VLAN_TAGGED_ID) is no longer retrieved when vcenter networks are imported
F #4913: Add ESXHost class and standard port group / switches management
F #4913: Distributed virtual switches can now be fetched from network folder
F #4913: Add distributed port group / switches management to Datacenter
F #4913: Add helper to remove VCENTER_NET_REF from vnet
F #4913: Add port group and switch support to VMs (standard & distributed)
F #4913: Clean vcenter networks when detach nic in poweroff + terminate
F #4913: Fix missing end in vm reconfigure
F #4913: Fix vm reconfigure action for enhanced networks
F #4913: Remove datastore selection when importing templates
F #4913: Add VCENTER_IMPORTED for imported images. Add suffix for imported StorageDRS datastore
F #4913: Add helper to find vcenter networks to be removed from VM
F #4913: Deal with unmanaged disks removed from template. Refactor code
F #4913: Fix bug in template importer, VLAN_ID no longer used
F #4913: Add code required by Sunstone to import existing disks and nics in vcenter templates
F #4913: Replace RESOURCE_POOL with VCENTER_RESOURCE_POOL in JS. Remove datastore user inputs
F #4913: Resource pool list is now Optional not Mandatory in template import
F #4913: Only VCENTER_RESOURCE_POOL attribute is used in template importer (only names supported)
F #4913: Support both VCENTER_RESOURCE_POOL and USER_TEMPLATE/VCENTER_RESOURCE_POOL in get_rp B#5091
F #4913: Add vi_client resource pool confinement using host's VCENTER_RESOURCE_POOL
F #4913: Fix ccr and rp may not exist in vi_client connection options
F #4913: Datastores with same dc, ds or cluster name can be imported (add prefix to OpenNebula's datastore name) B#4942
F #4913: Avoid duplicate monitoring info B#5078. Replace RESOURCE_POOL with VCENTER_RESOURCE_POOL in monitor_resource_pools
F #4913: Remove opennebula.vm.id, get vm id from deploy_id and vcenter instance id
F #4913: create_snapshot replace wait_for_completion with an active wait only for vcenter 5.5 B#5045
F #4913: Undeployed VMs in FAILURE state are deleted in tm/delete even if DEPLOY_ID is not set B#5057
F #4913: Fix GuestReboot does not accept wait_for_completion method
F #4913: Add support for VM folder selection F#4823. Replace DEPLOY_FOLDER with VCENTER_VM_FOLDER
F #4913: Renamed utils/deploy-folder with vcenter-vm-folder F#4823
F #4913: Fix imported image datastore name
F #4913: Fix importer only one pool per call. Remove remnants of vlan_id in network importer
F #4913: Fix vcenter vm folder must be template parent if VCENTER_VM_FOLDER is not set
F #4913: Add check for container view returns empty array in find_vcenter_vm_by_name
F #4913: Add vmdk disk capacity when retrieving size in datastore/stat action
F #4913: Fix some standard network bugs
F #4913: Allow spaces in vcenter clusters (import and monitor)
F #4913: Store snapshot name, not snapshot id as the name for vcenter snapshots F#4921
F #4913: Add resource pool confinement option when a cluster is imported
F #4913: Disk size is obtained from DISK/SIZE attribute in calculate_add_disk
F #4913: Host, datastore and network imports can now select a different OpenNebula cluster to be added
F #4913 Added resource pool list in import cluster (#247)
- 32 characters max in switch name
- Added resource pool list in import cluster
- Added VCENTER_RESOURCE_POOL in cluster template
F #4913: Replace VCENTER_RESOURCE_POOL with VCENTER_RESOURCE_POOL_INFO in monitor_resource_pools
F #4913: Add linked clone import to CLI. Several enhancements in monitor and import performance (containerview and propertycollector)
F #4913: Fix minor bugs in import actions
F #4913: Add negative values check for performance manager
F #4913: Fix esx hostname not sent in monitor info
F #4913: Merge branch 'master' into feature-4913
F #4913: Fix monitor for VMM poll and check that offers the same info by monitor_vms
F #4913: Get back resource pool row for template create/update
F #4913: Remove KEEP_DISKS_ON_DONE remnants
F #4913 Added disks without size, when saving the template
F #4913: Allow disk saveas action in admin_vcenter view
F #4913: Fix context regeneration on VM resume
F #4913: Add Wild VMs import, images and vnets created for VM's disk and nics
F #4913: VC snapshot name will be One's id and VC snapshot description will be One's name F#4921
F #4913: Persistent disks in a snapshooted VM are detached after all snapshots are removed and before VM is destroyed
F #4913: Remove duplicated methods get_vcenter_disks and get_vcenter_nics
F #4913: Datastore import, only one datastore is shown to users but two datastores may be created in the background
F #4913: Get image prefix from controller type when importing or apply default device prefix if not found
F #4913: Fix folder and filename for image upload in datastore cp action
F #4913: Vnc info is added when a wild VM is imported F#5074
F #4913: Add method to find persistent image in pool using SOURCE as reference
F #4913: Remove instantiate to persistent logic from vmm shutdown action
F #4913: Add delete_file method using DeleteDatastoreFile_Task. Move some methods from Datastore class to Storage class
F #4913: Fix CDROM images can be deleted in datastore rm action
F #4913: The mkimage tm action cannot be performed on a Storage DRS SYSTEM datastore
F #4913: Non-persistent images and volatile images cannot be cloned on a Storage DRS datastore
F #4913: Major change unmanaged disks are referenced using opennebula.disk vars, storage drs support for volatile disks, CDROM device is no longer needed to be present to attach an ISO image
F #4913: Unmanaged disks are referenced using opennebula.disk vars in tm cpds
F #4913: Renamed reference and resize methods for unmanaged disks
F #4913: Persistent disks in a VM instantiated as persistent should not be detached in tm mvds
F #4913: Add instantiate to persistent logic before VM is destroyed and CDROM images should not be deleted to tm delete
F #4913: Pass vmm action error message to the driver (ERROR attr) so you don't have to look for it in the log
F #4913: Pass tm action error message to the driver (ERROR attr) so you don't have to look for it in the log
F #4913: Pass datastore action error message to the driver (ERROR attr) so you don't have to look for it in the log
F #4913: Add support for IP6_STATIC address range in network import action
F #4913: The same vCenter cluster can be imported with different resource pool confinements
F #4913: Add downcase to OPENNEBULA_MANAGED=NO check
F #4913: Fix get_img_name for non persistent images and CDROM images
F #4913 Added for each vcenter datastore to be imported (#264)
F #4913 Restyled advanced options [import vCenter template] (#273)
F #4913: Add \u007F character check in cluster names. Revert two host with the same ref can be imported with different resource pools
F #4913: Imported images are now NON-PERSISTENT images.
F #4913: Fix minor bug in get_img_name
F #4913: Don't get stats when no VMs can be monitored. Revert two host with the same ref can be imported with different resource pools
F #4913: Minor changes to importer
F #4913: Fix bug in rp_cache and apply minor changes to virtual_machine
F #4913: Add vcenter_driver defaults file
F #4913: Update vcenter INHERIT and REQUIRED attrs in oned.conf
F #4913: Remove RP confinement in cluster import wizard (CLI and Sunstone)
F #4913: Add missing vmm prereconfigure action symbolic link
F #4913: Add vmm prereconfigure action to install.sh
F #4913 Changed fields and labels to import the vnets
F #4913: Fix instantiated_as_persistent to deal with VMs that has no DEPLOY_ID yet
F #4913: Fix tm cpds bug
F #4913: Fix import wild vm bug
F #4913: Fix wild vm import. Add template moref and opennebula_managed to networks created
F #4913: Fix vcenter downloader source DS was missing
F #4913: Add error management to some pool creation actions
F #4913: Add vcenter migration option to onedb tool
F #4913: vCenter Pre Migrator tool
F #4913: Remore require pry for vCenter Pre Migrator
F #4913: Fix small issues
F #4913: Allow vCenter datastore credentials to be encrypted in update
F #4913: Modify vmodl.db to solve issue with wrong types returned
F #4913: Add VCENTER_SWITCH_NPORTS as VNET_INHERIT_ATTR
F #4913: Replace required attr for vCenter datastores. Inherit VCENTER_SWITCH_NPORTS.
F #4913: vi_client gets credentials from datastore, VCENTER_ONE_HOST_ID is no longer used
F #4913: Store in tmp file the host where a VM is deployed so VNC connections can establish even if the VM hasn't been monitored yet.
F #4913: vCenter enhanced networks are no longer deleted with VM
F #4913: Changed vCenter default nic model to vmxnet3
F #4913: When a vCenter VM is deployed, the ESX_HOST is stored in a tmp file so VNC connection work right away
F #4913: Fix shutdown VM if DEPLOY_ID is empty
F #4913: Fix assign_proxy_switch and update_vss for enhanced network
F #4913: Cosmetic change to oca host.rb
F #4913: Major changes in vCenter import actions
F #4913: Changes and fixes in Sunstone for vcenter (importer, allow some VCENTER_ attributes edition
F #4913: Changes and fixes in Sunstone for vcenter (importer, allow some VCENTER_ attributes edition
F #4913: vCenter delete poweroff vms hook is no longer used
F #4913: New vCenter hooks for enhanced networks create/delete
F #4913: Remove vcenter network driver clean as is no longer needed
F #4913: Add vcenter net hooks to oned.conf
F #4913: Remove enhanced vnet from default cluster on create
F #4913: Fix vcenter datastore cp and vcenter_uploader
F #4913: Remove vcenter datastore from default cluster on creation
F #4913: Shorter vCenter templates import name (max 80 chars)
F #4913: Fix vcenter template_to_one for templates import
F #4913: Allow VCENTER_DS_IMAGE_DIR and VCENTER_DS_VOLATILE_DIR to be edited in Sunstone
F #4913: Remove VCENTER_ONE_HOST_ID from datastore actions and required attrs
F #4913: Fix TM_MAD of vCenter
F #4913: Remove SCHED_REQUIREMENTS from vCenter imported templates
F #4913: Remove vCenter credentials as required datastore attributes. Add some vCenter restricted attributes
F #4913: OpenNebula Clusters are created in vCenter premigration tool for existing vCenter clusters
F #4913: Fix bug in VCENTER_LAST_PERF_POLL if cluster has no monitor info
F #4913: Fix vcenter dir_empty? and check if file exists before rm action tries to delete file
F #4913: Check if file exists before file is deleted in tm delete action
F #4913: Fix bugs and add enhancements to vcenter pre-migrator tool
F #4913: Disable marketplace in admin_vcenter.yaml view
F #4913: Disable rm_directory for vCenter 6.5
F #4913: Add wait_for_completion to vCenter rm_directory that may cause vcenter 6.5 crashes
F #4913: Disable rm_directory for vCenter 6.5 again, wait_for_completion doesn't solve the issue
F #4913: Disable some vCenter required attributes
F #4913: vCenter linked clones cannot be resized
F #4913: Improve premigrator logic
- Tune the pre-migrator messages a bit
- Use /var/tmp for migrator files (premigrator)
- Get the cluster info
- Automatically select a cluster if there's only one
- Fix source of unmanaged disk discovery
- Cosmetic changes
- Fix race condition when deleting images
F #4913: Fix vCenter datastore can be forced when a template is cloned
F #4913: Fix vCenter tm cpds wrong source datastore
F #4913: Fix vCenter Instantiate as Persistent
F #4913: Minor fixes in the premigrator and migrator:
- SERVER_POOL must exist in the Zone
- Add ALLOCATED section to the AR
- Update temporary migrator files location
F #4913: Do not discover unmanaged nics/disks
F #4913: Remove templates that have images with spaces
F #4913: Speed up monitorization
F #4913: Use the pool instead of querying opennebula
F #4913: Do not discover unmanaged nics/disks
F #4913: Remove templates that have images with spaces
F #4913: Speed up monitorization
F #4913: Use the pool instead of querying opennebula
Revert "F #4913: Remove templates that have images with spaces"
This reverts commit 33b9d899b1a8238db67771905d89b0135933be34.
This commit includes manual modifications of the revert.
Revert "F #4913: Do not discover unmanaged nics/disks"
This revert includes manual modifications
Revert "F #4913: Remove templates that have images with spaces"
This reverts commit 33b9d899b1a8238db67771905d89b0135933be34.
This commit includes manual modifications of the revert.
(cherry picked from commit 8bc97bd8d1c86d7a11fb37a6834e59e1f156a63f)
Revert "F #4913: Do not discover unmanaged nics/disks"
This revert includes manual modifications
(cherry picked from commit 1f0504fa56e2ceb5e2b2470637b24b516f4bdade)
History
#1 Updated by Tino Vázquez over 4 years ago
Take into account description in Feature #4825
#2 Updated by OpenNebula Systems Support Team over 4 years ago
Account for space of system datastore snapshots. Currently they do not count against the quotas.
#3 Updated by Jaime Melis about 4 years ago
- Status changed from New to Assigned
- % Done changed from 0 to 90
Review and document.
#4 Updated by Jaime Melis about 4 years ago
- Assignee set to Miguel Ángel Álvarez Cabrerizo
#5 Updated by Ruben S. Montero about 4 years ago
- Status changed from Assigned to Closed