cloudstack-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CLOUDSTACK-9386) DS template copies don’t get deleted in VMware ESXi with multiple clusters and zone wide storage
Date Sun, 11 Sep 2016 15:13:20 GMT

    [ https://issues.apache.org/jira/browse/CLOUDSTACK-9386?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15481899#comment-15481899
] 

ASF GitHub Bot commented on CLOUDSTACK-9386:
--------------------------------------------

Github user serg38 commented on the issue:

    https://github.com/apache/cloudstack/pull/1560
  
    LGTM for testing. Re-ran smoke tests:
    
    test DeployVM in anti-affinity groups for project ... === TestName: test_DeployVmAntiAffinityGroup_in_project
| Status : SUCCESS ===
    ok
    test DeployVM in anti-affinity groups ... === TestName: test_DeployVmAntiAffinityGroup
| Status : SUCCESS ===
    ok
    Test Deploy Virtual Machine ... SKIP: Skipping test because suitable hypervisor/host not
                   present
    Test Deploy Virtual Machine from ISO ... === TestName: test_deploy_vm_from_iso | Status
: SUCCESS ===
    ok
    Test deploy virtual machine with root resize ... === TestName: test_00_deploy_vm_root_resize
| Status : SUCCESS ===
    ok
    Test proper failure to deploy virtual machine with rootdisksize of 0 ... === TestName:
test_01_deploy_vm_root_resize | Status : SUCCESS ===
    ok
    Test proper failure to deploy virtual machine with rootdisksize less than template size
... === TestName: test_02_deploy_vm_root_resize | Status : SUCCESS ===
    ok
    Test to deploy vm with a first fit offering ... === TestName: test_deployvm_firstfit |
Status : SUCCESS ===
    ok
    Test deploy VMs using user concentrated planner ... === TestName: test_deployvm_userconcentrated
| Status : SUCCESS ===
    ok
    Test deploy VMs using user dispersion planner ... === TestName: test_deployvm_userdispersing
| Status : SUCCESS ===
    ok
    Test userdata as GET, size > 2k ... === TestName: test_deployvm_userdata | Status :
SUCCESS ===
    ok
    Test userdata as POST, size > 2k ... === TestName: test_deployvm_userdata_post | Status
: SUCCESS ===
    ok
    Test to create disk offering ... === TestName: test_01_create_disk_offering | Status :
SUCCESS ===
    ok
    Test to create  a sparse type disk offering ... === TestName: test_02_create_sparse_type_disk_offering
| Status : SUCCESS ===
    ok
    Test to create  a sparse type disk offering ... === TestName: test_04_create_fat_type_disk_offering
| Status : SUCCESS ===
    ok
    Test to update existing disk offering ... === TestName: test_02_edit_disk_offering | Status
: SUCCESS ===
    ok
    Test to delete disk offering ... === TestName: test_03_delete_disk_offering | Status :
SUCCESS ===
    ok
    Test to ensure 4 default roles cannot be deleted ... SKIP: Dynamic Role-Based API checker
not enabled, skipping test
    Test to check role, role permissions and account life cycles ... SKIP: Dynamic Role-Based
API checker not enabled, skipping test
    Test for role-rule enforcement in case of multiple mgmt servers ... SKIP: Dynamic Role-Based
API checker not enabled, skipping test
    Test to ensure role in use cannot be deleted ... SKIP: Dynamic Role-Based API checker
not enabled, skipping test
    Tests normal lifecycle operations for roles ... SKIP: Dynamic Role-Based API checker not
enabled, skipping test
    Tests role update ... SKIP: Dynamic Role-Based API checker not enabled, skipping test
    Tests that default four roles exist ... SKIP: Dynamic Role-Based API checker not enabled,
skipping test
    Tests role update ... SKIP: Dynamic Role-Based API checker not enabled, skipping test
    Tests role update when role is in use by an account ... SKIP: Dynamic Role-Based API checker
not enabled, skipping test
    Tests concurrent order updation of role permission ... SKIP: Dynamic Role-Based API checker
not enabled, skipping test
    Tests creation of role permission ... SKIP: Dynamic Role-Based API checker not enabled,
skipping test
    Tests deletion of role permission ... SKIP: Dynamic Role-Based API checker not enabled,
skipping test
    Tests listing of default role's permission ... SKIP: Dynamic Role-Based API checker not
enabled, skipping test
    Tests order updation of role permission ... SKIP: Dynamic Role-Based API checker not enabled,
skipping test
    test update configuration setting at zone level scope ... === TestName: test_UpdateConfigParamWithScope
| Status : SUCCESS ===
    ok
    Test guest vlan range dedication ... === TestName: test_dedicateGuestVlanRange | Status
: SUCCESS ===
    ok
    Test create public & private ISO ... === TestName: test_01_create_iso | Status : SUCCESS
===
    ok
    Test Edit ISO ... === TestName: test_02_edit_iso | Status : SUCCESS ===
    ok
    Test delete ISO ... === TestName: test_03_delete_iso | Status : SUCCESS ===
    ok
    Test for extract ISO ... === TestName: test_04_extract_Iso | Status : SUCCESS ===
    ok
    Update & Test for ISO permissions ... === TestName: test_05_iso_permissions | Status
: SUCCESS ===
    ok
    Test for copy ISO from one zone to another ... SKIP: Not enough zones available to perform
copy template
    Test delete ISO ... === TestName: test_07_list_default_iso | Status : SUCCESS ===
    ok
    Test listing Volumes using 'ids' parameter ... === TestName: test_01_list_volumes | Status
: SUCCESS ===
    ok
    Test listing Templates using 'ids' parameter ... === TestName: test_02_list_templates
| Status : SUCCESS ===
    ok
    Test listing Snapshots using 'ids' parameter ... === TestName: test_03_list_snapshots
| Status : SUCCESS ===
    ok
    Test to create Load balancing rule with source NAT ... === TestName: test_01_create_lb_rule_src_nat
| Status : SUCCESS ===
    ok
    Test to create Load balancing rule with non source NAT ... === TestName: test_02_create_lb_rule_non_nat
| Status : SUCCESS ===
    ok
    Test for assign & removing load balancing rule ... === TestName: test_assign_and_removal_lb
| Status : SUCCESS ===
    ok
    Tests that SAML users are not allowed CloudStack local log in ... === TestName: login_test_saml_user
| Status : SUCCESS ===
    ok
    test_nic_secondaryip_add_remove (integration.smoke.test_multipleips_per_nic.TestDeployVM)
... === TestName: test_nic_secondaryip_add_remove | Status : SUCCESS ===
    ok
    Test network ACL lists and items in VPC ... === TestName: test_network_acl | Status :
SUCCESS ===
    ok
    # 1. Register a template for VMware with nicAdapter vmxnet3 ... SKIP: VCenter API Integration
Remaining
    Test to add and update added nic to a virtual machine ... === TestName: test_01_nic |
Status : SUCCESS ===
    ok
    Test to update a physical network and extend its vlan ... === TestName: test_extendPhysicalNetworkVlan
| Status : SUCCESS ===
    ok
    test update configuration setting at storage scope ... === TestName: test_UpdateStorageOverProvisioningFactor
| Status : SUCCESS ===
    ok
    test_create_pvlan_network (integration.smoke.test_pvlan.TestPVLAN) ... === TestName: test_create_pvlan_network
| Status : SUCCESS ===
    ok
    Test for create region ... === TestName: test_createRegion | Status : SUCCESS ===
    ok
    Test reset virtual machine on reboot ... === TestName: test_01_reset_vm_on_reboot | Status
: SUCCESS ===
    ok
    Test volume detail ... === TestName: test_01_updatevolumedetail | Status : SUCCESS ===
    ok
    Test scale virtual machine ... SKIP: Skipping scale VM operation because             
      VMware tools are not installed on the VM
    Test to create service offering ... === TestName: test_01_create_service_offering | Status
: SUCCESS ===
    ok
    Test to update existing service offering ... === TestName: test_02_edit_service_offering
| Status : SUCCESS ===
    ok
    Test to delete service offering ... === TestName: test_03_delete_service_offering | Status
: SUCCESS ===
    ok
    Test to change service to a small capacity ... === TestName: test_04_change_offering_small
| Status : SUCCESS ===
    ok
    Test List secondary storage VMs ... === TestName: test_01_list_sec_storage_vm | Status
: SUCCESS ===
    ok
    Test List console proxy VMs ... === TestName: test_02_list_cpvm_vm | Status : SUCCESS
===
    ok
    Test SSVM Internals ... === TestName: test_03_ssvm_internals | Status : SUCCESS ===
    ok
    Test CPVM Internals ... === TestName: test_04_cpvm_internals | Status : SUCCESS ===
    ok
    Test stop SSVM ... === TestName: test_05_stop_ssvm | Status : SUCCESS ===
    ok
    Test stop CPVM ... === TestName: test_06_stop_cpvm | Status : SUCCESS ===
    ok
    Test reboot SSVM ... === TestName: test_07_reboot_ssvm | Status : SUCCESS ===
    ok
    Test reboot CPVM ... === TestName: test_08_reboot_cpvm | Status : SUCCESS ===
    ok
    Test destroy SSVM ... === TestName: test_09_destroy_ssvm | Status : SUCCESS ===
    ok
    Test destroy CPVM ... === TestName: test_10_destroy_cpvm | Status : SUCCESS ===
    ok
    Tests allowed APIs for common account types ... === TestName: test_static_role_account_acls
| Status : SUCCESS ===
    ok
    Test create public & private template ... === TestName: test_01_create_template |
Status : SUCCESS ===
    ok
    Test when createTemplate is used to create templates having the same name all of them
get ... === TestName: test_CreateTemplateWithDuplicateName | Status : SUCCESS ===
    ok
    Test Edit template ... === TestName: test_02_edit_template | Status : SUCCESS ===
    ok
    Test delete template ... === TestName: test_03_delete_template | Status : SUCCESS ===
    ok
    Test for extract template ... === TestName: test_04_extract_template | Status : SUCCESS
===
    ok
    Update & Test for template permissions ... === TestName: test_05_template_permissions
| Status : SUCCESS ===
    ok
    Test for copy template from one zone to another ... SKIP: Not enough zones available to
perform copy template
    Test only public templates are visible to normal user ... === TestName: test_07_list_public_templates
| Status : SUCCESS ===
    ok
    Test System templates are not visible to normal user ... === TestName: test_08_list_system_templates
| Status : SUCCESS ===
    ok
    Check events in usage_events table when VM creation fails ... === TestName: test_01_positive_tests_usage
| Status : SUCCESS ===
    ok
    Test advanced zone virtual router ... === TestName: test_advZoneVirtualRouter | Status
: SUCCESS ===
    ok
    Tests for basic zone virtual router ... === TestName: test_basicZoneVirtualRouter | Status
: SUCCESS ===
    ok
    Test Deploy Virtual Machine ... === TestName: test_deploy_vm | Status : SUCCESS ===
    ok
    Test Multiple Deploy Virtual Machine ... === TestName: test_deploy_vm_multiple | Status
: SUCCESS ===
    ok
    Test Stop Virtual Machine ... === TestName: test_01_stop_vm | Status : SUCCESS ===
    ok
    Test Start Virtual Machine ... === TestName: test_02_start_vm | Status : SUCCESS ===
    ok
    Test Reboot Virtual Machine ... === TestName: test_03_reboot_vm | Status : SUCCESS ===
    ok
    Test destroy Virtual Machine ... === TestName: test_06_destroy_vm | Status : SUCCESS ===
    ok
    Test recover Virtual Machine ... === TestName: test_07_restore_vm | Status : SUCCESS ===
    ok
    Test migrate VM ... === TestName: test_08_migrate_vm | Status : SUCCESS ===
    ok
    Test destroy(expunge) Virtual Machine ... === TestName: test_09_expunge_vm | Status :
SUCCESS ===
    ok
    Test for attach and detach ISO to virtual machine ... === TestName: test_10_attachAndDetach_iso
| Status : SUCCESS ===
    ok
    Test Volume creation for all Disk Offerings (incl. custom) ... === TestName: test_01_create_volume
| Status : SUCCESS ===
    ok
    Attach a created Volume to a Running VM ... === TestName: test_02_attach_volume | Status
: SUCCESS ===
    ok
    Download a Volume attached to a VM ... === TestName: test_03_download_attached_volume
| Status : SUCCESS ===
    ok
    Delete a Volume attached to a VM ... === TestName: test_04_delete_attached_volume | Status
: SUCCESS ===
    ok
    Detach a Volume attached to a VM ... === TestName: test_05_detach_volume | Status : SUCCESS
===
    ok
    Download a Volume unattached to an VM ... === TestName: test_06_download_detached_volume
| Status : SUCCESS ===
    ok
    Test resize (negative) non-existent volume ... SKIP: Resize Volume is unsupported on VmWare
and Hyper-V
    Test resize a volume ... SKIP: Resize Volume is unsupported on VmWare and Hyper-V
    Delete a Volume unattached to an VM ... === TestName: test_09_delete_detached_volume |
Status : SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 104 tests in 9821.371s
    
    OK (SKIP=21)



> DS template copies don’t get deleted in VMware ESXi with multiple clusters and zone
wide storage
> ------------------------------------------------------------------------------------------------
>
>                 Key: CLOUDSTACK-9386
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9386
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>          Components: VMware
>    Affects Versions: 4.9.0
>            Reporter: Nicolas Vazquez
>            Assignee: Nicolas Vazquez
>             Fix For: 4.10.0.0, 4.9.2.0
>
>
> h3. Introduction
> In some production environments with multiple clusters it was noticed that unused templates
were consuming too much storage. It was discovered that template cleanup was not deleting
marked templates on ESXi.
> h3. Description of the problem
> Suppose we have multiple clusters {{(c1, c2,...,cN)}} on a data center and template {{T}}
from which we deploy vms on {{c1}}.
> Suppose now that we expunge those vms, and there's no other vm instance from template
{{T}}, so this was the actual workflow:
> # CloudStack marks template for cleanup after {{storage.cleanup.interval}} seconds, by
setting {{marked_for_gc = 1}} on {{template_spool_ref}} table, for that template.
> # After another {{storage.cleanup.interval}} seconds a {{DestroyCommand}} will be sent,
to delete template from primary storage
> # On {{VmwareResource}}, command is processed, and it first picks up a random cluster,
say {{ci != c1}} to look for vm template (using volume's path) and destroy it. But, as template
was on {{c1}} it cannot be found, so it won't be deleted. Entry on {{template_spool_ref}}
is deleted but not the actual template on hypervisor side.
> h3. Proposed solution
> We propose a way to attack problem shown in point 3, by not picking up a random cluster
to look for vm but using vSphere data center. This way we make sure vm template will be deleted
in every case, and not depending on random cluster selection



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message