You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Daan Hoogland <da...@gmail.com> on 2015/02/17 14:19:25 UTC

please test, [MERGE] Redundant VPC routers and persistent router config?

People,

We are having some internal discussions about this code at Schuberg
Philis. We are (most specifically I am) convinced that we cannot
foresee the ways in which this can break master when merged. We had
only one issue coming back from the community and this was functional
more then an issue. By the number of issues that we find our selves
this can't be right. We had no -1 either so the only logical
conclusion is that no one else is testing this part of the code.

We do not test all the code and our quality improvement process is not
up to spec [1] yet. Things are going to stop working in the master
branch when we merge this. I don't like this but I see no way to
prevent this in our present state of affairs. We are adding as much
tests as we can without hurting Schuberg Philis business and that has
a limitation.

You can read how Wilder's env is set up and Ian's isn't very
different. So let me use a negative formulation this time: If we merge
now the following things will not have been tested:
most hypervisors: kvm vmware hyperv
storage: all non nfs things
ipv6 functionality
This is not a complete list, I suspect.

Can I get a lot of +1 in spite of these uncertainties?
Can you all please test as much as possible?

I called a merge for this morning but will give it a few more rebase
efforts because of those considerations.

[1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/Quality+and+Process+Improvement+Initiative

On Tue, Feb 17, 2015 at 12:46 AM, Wilder Rodrigues
<WR...@schubergphilis.com> wrote:
> Hi all,
>
> I have been some tests on the branch in order to give you all some confidence.
>
> During the tests I found 1 bug related to communication from VM A on Tier 1 to VM B on Tier 2 in a Single VPC. I can reproduce the bug and it disappears when I convert the Single VPC to a redundant one. I already talked to Ian and he is on it.
>
> Results follow below.
>
> Cheers,
> Wilder
>
> Environment:
>
> Xen 6.2 running on VMware zone within our Betacloud (ACS 4.4.2)
> MySQL running on MacBook Pro
> Management Server on MacBook Pro
>
> ::: Manual Tests:::
>
> Isolated Networks
>
> * Create Network
> * Create 2 VMs using new Network
> * Create FW rules
> * Create PF rules
> * SSH to the VMs
> * SSH from one VM onto the other in the same isolated network
> * Destroy Master router
> * Restart the Network
> * Restart the Network with Clean-up option
> * Repeat steps above
>
> Redundant Isolated Networks
>
> * Create Redundant Network Offering
> * Create 2 VMs using new offering
> * Create FW rules
> * Create PF rules
> * SSH to the VMs
> * SSH from one VM onto the other in the same redundant isolated network
> * Destroy Master router
> * Restart the Network
> * Stop the Master Router
>
> Single VPC
>
> * Create VPC
> * Create 2 Tiers
> * Create ACLS
> * Create 1 Vm for each Tier
> * Associate 2 IP address
> * Add PF rules
> * SSH onto VMs
> * SSH from 1 VM onto another
> * Restart VPC - Make it redundant
> * Repeat steps above
>
> Redundant VPC
>
> * Create VPC
> * Create 2 Tiers
> * Create ACLS
> * Create 1 Vm for each Tier
> * Associate 2 IP address
> * Add PF rules
> * SSH onto VMs
> * SSH from 1 VM onto another
> * Stop/Destroy the Master Router
> * Observe the Backup router became Master
> * SSH again onto the VMs
> * Restart VPC (without clean-up)
> * Observer only 1 new router is created
> * New router is started as Backup
> * SSH onto VMs
> * Restart VPC (with clean-up)
> * Observer only 2 new routers are created
> * SSH onto VMs
>
> ::: Automated Tests :::
>
> Test Create Account and user for that account ... === TestName: test_01_create_account | Status : SUCCESS ===
> ok
> Test Sub domain allowed to launch VM  when a Domain level zone is created ... === TestName: test_01_add_vm_to_subdomain | Status : SUCCESS ===
> ok
> Test delete domain without force option ... === TestName: test_DeleteDomain | Status : SUCCESS ===
> ok
> Test delete domain with force option ... === TestName: test_forceDeleteDomain | Status : SUCCESS ===
> ok
> Test update admin details ... === TestName: test_updateAdminDetails | Status : SUCCESS ===
> ok
> Test update domain admin details ... === TestName: test_updateDomainAdminDetails | Status : SUCCESS ===
> ok
> Test user update API ... === TestName: test_updateUserDetails | Status : SUCCESS ===
> ok
> Test login API with domain ... === TestName: test_LoginApiDomain | Status : SUCCESS ===
> ok
> Test if Login API does not return UUID's ... === TestName: test_LoginApiUuidResponse | Status : SUCCESS ===
> ok
>
> ----------------------------------------------------------------------
> Ran 9 tests in 1140.977s
>
> OK
>
> Test reset virtual machine on reboot ... === TestName: test_01_reset_vm_on_reboot | Status : SUCCESS ===
> ok
>
> ----------------------------------------------------------------------
> Ran 1 test in 216.907s
>
> OK
>
> Test advanced zone virtual router ... === TestName: test_advZoneVirtualRouter | 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 ... SKIP: At least two hosts should be present in the zone for migration
> Test destroy(expunge) Virtual Machine ... === TestName: test_09_expunge_vm | Status : SUCCESS ===
> ok
>
> ----------------------------------------------------------------------
> Ran 10 tests in 851.022s
>
> OK (SKIP=1)
>
> Test router internal advanced zone ... SKIP: Marvin configuration has no host credentials to check router services
> Test restart network ... === TestName: test_03_restart_network_cleanup | Status : SUCCESS ===
> ok
> Test router basic setup ... === TestName: test_05_router_basic | Status : SUCCESS ===
> ok
> Test router advanced setup ... === TestName: test_06_router_advanced | Status : SUCCESS ===
> ok
> Test stop router ... === TestName: test_07_stop_router | Status : SUCCESS ===
> ok
> Test start router ... === TestName: test_08_start_router | Status : SUCCESS ===
> ok
> Test reboot router ... === TestName: test_09_reboot_router | Status : SUCCESS ===
> ok
>
> ----------------------------------------------------------------------
> Ran 7 tests in 454.519s
>
> OK (SKIP=1)
>
> 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
>
> ----------------------------------------------------------------------
> Ran 3 tests in 206.916s
>
> OK
>
> Test VPN in VPC ... === TestName: test_vpc_remote_access_vpn | Status : SUCCESS ===
> ok
> Test VPN in VPC ... === TestName: test_vpc_site2site_vpn | Status : SUCCESS ===
> ok
>
> ----------------------------------------------------------------------
> Ran 2 tests in 373.908s
>
> OK
>
> Test create VPC offering ... === TestName: test_01_create_vpc_offering | Status : SUCCESS ===
> ok
> Test VPC offering without load balancing service ... === TestName: test_03_vpc_off_without_lb | Status : SUCCESS ===
> ok
> Test VPC offering without static NAT service ... === TestName: test_04_vpc_off_without_static_nat | Status : SUCCESS ===
> ok
> Test VPC offering without port forwarding service ... === TestName: test_05_vpc_off_without_pf | Status : SUCCESS ===
> ok
> Test VPC offering with invalid services ... === TestName: test_06_vpc_off_invalid_services | Status : SUCCESS ===
> ok
> Test update VPC offering ... === TestName: test_07_update_vpc_off | Status : SUCCESS ===
> ok
> Test list VPC offering ... === TestName: test_08_list_vpc_off | Status : SUCCESS ===
> ok
> test_09_create_redundant_vpc_offering (integration.acs.tests.test_vpc_offerings.TestVPCOffering) ... === TestName: test_09_create_redundant_vpc_offering | Status : SUCCESS ===
> ok
>
> ----------------------------------------------------------------------
> Ran 8 tests in 672.382s
>
> OK
>
> test_privategw_acl (integration.acs.tests.test_privategw_acl.TestPrivateGwACL) ... === TestName: test_privategw_acl | Status : SUCCESS ===
> ok
>
> ----------------------------------------------------------------------
> Ran 1 test in 90.756s
>
> OK
>
> Test to change service offering of router after addition of one guest network ... === TestName: test_04_chg_srv_off_router_after_addition_of_one_guest_network | Status : SUCCESS ===
> ok
> Test destroy of router after addition of one guest network ... === TestName: test_05_destroy_router_after_addition_of_one_guest_network | Status : SUCCESS ===
> ok
> Test to stop and start router after creation of VPC ... === TestName: test_01_stop_start_router_after_creating_vpc | Status : SUCCESS ===
> ok
> Test to reboot the router after creating a VPC ... === TestName: test_02_reboot_router_after_creating_vpc | Status : SUCCESS ===
> ok
> Tests to change service offering of the Router after ... === TestName: test_04_change_service_offerring_vpc | Status : SUCCESS ===
> ok
> Test to destroy the router after creating a VPC ... === TestName: test_05_destroy_router_after_creating_vpc | Status : SUCCESS ===
> ok
>
> ----------------------------------------------------------------------
> Ran 6 tests in 665.965s
>
> OK
>
> On 16 Feb 2015, at 17:53, Daan Hoogland <da...@gmail.com> wrote:
>
>> H,
>>
>> I will merge our feature/systemvm-persistent-config into master. If
>> you have objections please let me know before tomorrow.
>>
>> @john: your comment was addressed in the present day version.
>>
>> --
>> Daan
>



-- 
Daan

Re: please test, [MERGE] Redundant VPC routers and persistent router config?

Posted by Wilder Rodrigues <WR...@schubergphilis.com>.
Hi Marcus,

Your review is awesomely welcome, Marcus - if such word exist. :)

Since this whole works was carried out along a few months, it was difficult to split formatting, refactoring and functionality. But as you have noticed, besides the Façade/Flyweight pattern applied to the ways command are sent from the VirtualRoutingResource, all the other stuff is really hypervisor/storage independent.

Tomorrow I will try to get my KVM environment done so I can also run the same tests against it.

Thanks again for the review.

Cheers,
Wilder


On 17 Feb 2015, at 18:01, Marcus <sh...@gmail.com> wrote:

> I've browsed the code, and I don't really see anything
> hypervisor-specific for KVM aside from a change to
> VirtualRoutingResource to handle the new AbstractConfigItemFacade,
> which looks like it's used to pass commands to the virtual router.
> Assuming the VR can be configured, there aren't any changes here that
> should keep VMs from starting or storage from working as-is.
> 
> As far as code review, this branch contains a lot of noise that makes
> it a bit more difficult to review. A large percentage of the diff was
> formatting and adding 'final' to variables, etc. Ideally those commits
> would be applied individually to master rather than confusing a
> functional change with them.
> 
> On Tue, Feb 17, 2015 at 8:07 AM, Marcus <sh...@gmail.com> wrote:
>> Wido, those were my thoughts as well. I haven't looked at the code
>> yet, but I'd be surprised if they had to change storage code (or even
>> hypervisor-specific code outside of passing along new VR script
>> Commands) in any way to accommodate a VR feature, so I hope this is
>> just caution. But enough guessing, perhaps I should just go look.
>> 
>> On Tue, Feb 17, 2015 at 6:15 AM, Wido den Hollander <wi...@widodh.nl> wrote:
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>> 
>>> 
>>> 
>>> On 02/17/2015 02:19 PM, Daan Hoogland wrote:
>>>> People,
>>>> 
>>>> We are having some internal discussions about this code at
>>>> Schuberg Philis. We are (most specifically I am) convinced that we
>>>> cannot foresee the ways in which this can break master when merged.
>>>> We had only one issue coming back from the community and this was
>>>> functional more then an issue. By the number of issues that we find
>>>> our selves this can't be right. We had no -1 either so the only
>>>> logical conclusion is that no one else is testing this part of the
>>>> code.
>>>> 
>>>> We do not test all the code and our quality improvement process is
>>>> not up to spec [1] yet. Things are going to stop working in the
>>>> master branch when we merge this. I don't like this but I see no
>>>> way to prevent this in our present state of affairs. We are adding
>>>> as much tests as we can without hurting Schuberg Philis business
>>>> and that has a limitation.
>>>> 
>>>> You can read how Wilder's env is set up and Ian's isn't very
>>>> different. So let me use a negative formulation this time: If we
>>>> merge now the following things will not have been tested: most
>>>> hypervisors: kvm vmware hyperv
>>> 
>>> I don't *think* it's a major problem since you changed the VR itself,
>>> but the way it is deployed is still the same. In the end it's just a
>>> disk for the hypervisor.
>>> 
>>>> storage: all non nfs things
>>> 
>>> I'm not so afraid for this since the storage is handled by the
>>> hypervisor and the VR doesn't have any knowledge there.
>>> 
>>>> ipv6 functionality This is not a complete list, I suspect.
>>>> 
>>>> Can I get a lot of +1 in spite of these uncertainties? Can you all
>>>> please test as much as possible?
>>>> 
>>> 
>>> As we discussed on the phone, my test cluster is broken at the moment
>>> and it will take me 2~3 weeks to get it up and running again.
>>> 
>>> Wido
>>> 
>>>> I called a merge for this morning but will give it a few more
>>>> rebase efforts because of those considerations.
>>>> 
>>>> [1]
>>>> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Quality+and+Process+Improvement+Initiative
>>>> 
>>>> On Tue, Feb 17, 2015 at 12:46 AM, Wilder Rodrigues
>>>> <WR...@schubergphilis.com> wrote:
>>>>> Hi all,
>>>>> 
>>>>> I have been some tests on the branch in order to give you all
>>>>> some confidence.
>>>>> 
>>>>> During the tests I found 1 bug related to communication from VM A
>>>>> on Tier 1 to VM B on Tier 2 in a Single VPC. I can reproduce the
>>>>> bug and it disappears when I convert the Single VPC to a
>>>>> redundant one. I already talked to Ian and he is on it.
>>>>> 
>>>>> Results follow below.
>>>>> 
>>>>> Cheers, Wilder
>>>>> 
>>>>> Environment:
>>>>> 
>>>>> Xen 6.2 running on VMware zone within our Betacloud (ACS 4.4.2)
>>>>> MySQL running on MacBook Pro Management Server on MacBook Pro
>>>>> 
>>>>> ::: Manual Tests:::
>>>>> 
>>>>> Isolated Networks
>>>>> 
>>>>> * Create Network * Create 2 VMs using new Network * Create FW
>>>>> rules * Create PF rules * SSH to the VMs * SSH from one VM onto
>>>>> the other in the same isolated network * Destroy Master router *
>>>>> Restart the Network * Restart the Network with Clean-up option *
>>>>> Repeat steps above
>>>>> 
>>>>> Redundant Isolated Networks
>>>>> 
>>>>> * Create Redundant Network Offering * Create 2 VMs using new
>>>>> offering * Create FW rules * Create PF rules * SSH to the VMs *
>>>>> SSH from one VM onto the other in the same redundant isolated
>>>>> network * Destroy Master router * Restart the Network * Stop the
>>>>> Master Router
>>>>> 
>>>>> Single VPC
>>>>> 
>>>>> * Create VPC * Create 2 Tiers * Create ACLS * Create 1 Vm for
>>>>> each Tier * Associate 2 IP address * Add PF rules * SSH onto VMs
>>>>> * SSH from 1 VM onto another * Restart VPC - Make it redundant *
>>>>> Repeat steps above
>>>>> 
>>>>> Redundant VPC
>>>>> 
>>>>> * Create VPC * Create 2 Tiers * Create ACLS * Create 1 Vm for
>>>>> each Tier * Associate 2 IP address * Add PF rules * SSH onto VMs
>>>>> * SSH from 1 VM onto another * Stop/Destroy the Master Router *
>>>>> Observe the Backup router became Master * SSH again onto the VMs
>>>>> * Restart VPC (without clean-up) * Observer only 1 new router is
>>>>> created * New router is started as Backup * SSH onto VMs *
>>>>> Restart VPC (with clean-up) * Observer only 2 new routers are
>>>>> created * SSH onto VMs
>>>>> 
>>>>> ::: Automated Tests :::
>>>>> 
>>>>> Test Create Account and user for that account ... === TestName:
>>>>> test_01_create_account | Status : SUCCESS === ok Test Sub domain
>>>>> allowed to launch VM  when a Domain level zone is created ... ===
>>>>> TestName: test_01_add_vm_to_subdomain | Status : SUCCESS === ok
>>>>> Test delete domain without force option ... === TestName:
>>>>> test_DeleteDomain | Status : SUCCESS === ok Test delete domain
>>>>> with force option ... === TestName: test_forceDeleteDomain |
>>>>> Status : SUCCESS === ok Test update admin details ... ===
>>>>> TestName: test_updateAdminDetails | Status : SUCCESS === ok Test
>>>>> update domain admin details ... === TestName:
>>>>> test_updateDomainAdminDetails | Status : SUCCESS === ok Test user
>>>>> update API ... === TestName: test_updateUserDetails | Status :
>>>>> SUCCESS === ok Test login API with domain ... === TestName:
>>>>> test_LoginApiDomain | Status : SUCCESS === ok Test if Login API
>>>>> does not return UUID's ... === TestName:
>>>>> test_LoginApiUuidResponse | Status : SUCCESS === ok
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 9 tests in 1140.977s
>>>>> 
>>>>> OK
>>>>> 
>>>>> Test reset virtual machine on reboot ... === TestName:
>>>>> test_01_reset_vm_on_reboot | Status : SUCCESS === ok
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 1 test in 216.907s
>>>>> 
>>>>> OK
>>>>> 
>>>>> Test advanced zone virtual router ... === TestName:
>>>>> test_advZoneVirtualRouter | 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 ... SKIP: At least two hosts should be
>>>>> present in the zone for migration Test destroy(expunge) Virtual
>>>>> Machine ... === TestName: test_09_expunge_vm | Status : SUCCESS
>>>>> === ok
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 10 tests in 851.022s
>>>>> 
>>>>> OK (SKIP=1)
>>>>> 
>>>>> Test router internal advanced zone ... SKIP: Marvin configuration
>>>>> has no host credentials to check router services Test restart
>>>>> network ... === TestName: test_03_restart_network_cleanup |
>>>>> Status : SUCCESS === ok Test router basic setup ... === TestName:
>>>>> test_05_router_basic | Status : SUCCESS === ok Test router
>>>>> advanced setup ... === TestName: test_06_router_advanced | Status
>>>>> : SUCCESS === ok Test stop router ... === TestName:
>>>>> test_07_stop_router | Status : SUCCESS === ok Test start router
>>>>> ... === TestName: test_08_start_router | Status : SUCCESS === ok
>>>>> Test reboot router ... === TestName: test_09_reboot_router |
>>>>> Status : SUCCESS === ok
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 7 tests in 454.519s
>>>>> 
>>>>> OK (SKIP=1)
>>>>> 
>>>>> 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
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 3 tests in 206.916s
>>>>> 
>>>>> OK
>>>>> 
>>>>> Test VPN in VPC ... === TestName: test_vpc_remote_access_vpn |
>>>>> Status : SUCCESS === ok Test VPN in VPC ... === TestName:
>>>>> test_vpc_site2site_vpn | Status : SUCCESS === ok
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 2 tests in 373.908s
>>>>> 
>>>>> OK
>>>>> 
>>>>> Test create VPC offering ... === TestName:
>>>>> test_01_create_vpc_offering | Status : SUCCESS === ok Test VPC
>>>>> offering without load balancing service ... === TestName:
>>>>> test_03_vpc_off_without_lb | Status : SUCCESS === ok Test VPC
>>>>> offering without static NAT service ... === TestName:
>>>>> test_04_vpc_off_without_static_nat | Status : SUCCESS === ok Test
>>>>> VPC offering without port forwarding service ... === TestName:
>>>>> test_05_vpc_off_without_pf | Status : SUCCESS === ok Test VPC
>>>>> offering with invalid services ... === TestName:
>>>>> test_06_vpc_off_invalid_services | Status : SUCCESS === ok Test
>>>>> update VPC offering ... === TestName: test_07_update_vpc_off |
>>>>> Status : SUCCESS === ok Test list VPC offering ... === TestName:
>>>>> test_08_list_vpc_off | Status : SUCCESS === ok
>>>>> test_09_create_redundant_vpc_offering
>>>>> (integration.acs.tests.test_vpc_offerings.TestVPCOffering) ...
>>>>> === TestName: test_09_create_redundant_vpc_offering | Status :
>>>>> SUCCESS === ok
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 8 tests in 672.382s
>>>>> 
>>>>> OK
>>>>> 
>>>>> test_privategw_acl
>>>>> (integration.acs.tests.test_privategw_acl.TestPrivateGwACL) ...
>>>>> === TestName: test_privategw_acl | Status : SUCCESS === ok
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 1 test in 90.756s
>>>>> 
>>>>> OK
>>>>> 
>>>>> Test to change service offering of router after addition of one
>>>>> guest network ... === TestName:
>>>>> test_04_chg_srv_off_router_after_addition_of_one_guest_network |
>>>>> Status : SUCCESS === ok Test destroy of router after addition of
>>>>> one guest network ... === TestName:
>>>>> test_05_destroy_router_after_addition_of_one_guest_network |
>>>>> Status : SUCCESS === ok Test to stop and start router after
>>>>> creation of VPC ... === TestName:
>>>>> test_01_stop_start_router_after_creating_vpc | Status : SUCCESS
>>>>> === ok Test to reboot the router after creating a VPC ... ===
>>>>> TestName: test_02_reboot_router_after_creating_vpc | Status :
>>>>> SUCCESS === ok Tests to change service offering of the Router
>>>>> after ... === TestName: test_04_change_service_offerring_vpc |
>>>>> Status : SUCCESS === ok Test to destroy the router after creating
>>>>> a VPC ... === TestName: test_05_destroy_router_after_creating_vpc
>>>>> | Status : SUCCESS === ok
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> 
>>>>> 
>>> Ran 6 tests in 665.965s
>>>>> 
>>>>> OK
>>>>> 
>>>>> On 16 Feb 2015, at 17:53, Daan Hoogland <da...@gmail.com>
>>>>> wrote:
>>>>> 
>>>>>> H,
>>>>>> 
>>>>>> I will merge our feature/systemvm-persistent-config into
>>>>>> master. If you have objections please let me know before
>>>>>> tomorrow.
>>>>>> 
>>>>>> @john: your comment was addressed in the present day version.
>>>>>> 
>>>>>> -- Daan
>>>>> 
>>>> 
>>>> 
>>>> 
>>> -----BEGIN PGP SIGNATURE-----
>>> Version: GnuPG v1
>>> 
>>> iQIcBAEBAgAGBQJU40zmAAoJEAGbWC3bPspCVHgP/ReiqputXvndXpIy1q9dFBqF
>>> wXXtFlqLKAwm7XmtmOrqUdOWPB7fCGPo6G6Tka/divg0BHLxU/Mzfx9vQRXXzGwK
>>> 4WROFyOTl0pTLbksJhbTR0pzT4FEfK6EkfIz2S+zd1xaFGlc/puWSjGHs45RS5vm
>>> SqNM5knZVo+4nTTMepJFQFEBN4GND8wbTuI3EEjcaodQ1uZM6+3COPaNjj74cXtr
>>> K+k7MxSJq0tBBKlCO30Ou0oK/pPn4Az9zYkNgfBoyoJfe8W2PCHS0/f3La3O19Cr
>>> lIOjvVoA1zNfC+E8WRhhZC/HNOzme0MiAAPHHkPykWL9xVBObSihkhiu9XehYjKK
>>> aK614+Hte6bLD+gra9H01QA1z8Y8ylFxFRTXb+e6fcV6mVReICaQ5tkL50fuTuJ2
>>> HRk+1Ybul35/J3ZW3qQ7rikpF4sQ9XTC6MrCpl3Ix0XopYxWtvkLTHVtH5iLWhzy
>>> hwiS2kAcc9F8zsLIl01tTbUMxAJUR6cms2AxInPadYUlNu3FmCUwTaFpV8GIr1VK
>>> kdcsEyQdXwXTPCcelCraJ214GVpH3IESqtkeqNDB1F7fPNhJQMyQgVT6fzCVXe4G
>>> I9Fo82+2X8x7XEwGZL81nt3D0p+ndG0zd+awWlrR4C7rQ3UJl+SSBIkKtqT8G8XS
>>> AA3KCgF8a43lyTNCk1x/
>>> =19tY
>>> -----END PGP SIGNATURE-----


Re: please test, [MERGE] Redundant VPC routers and persistent router config?

Posted by Marcus <sh...@gmail.com>.
I've browsed the code, and I don't really see anything
hypervisor-specific for KVM aside from a change to
VirtualRoutingResource to handle the new AbstractConfigItemFacade,
which looks like it's used to pass commands to the virtual router.
Assuming the VR can be configured, there aren't any changes here that
should keep VMs from starting or storage from working as-is.

As far as code review, this branch contains a lot of noise that makes
it a bit more difficult to review. A large percentage of the diff was
formatting and adding 'final' to variables, etc. Ideally those commits
would be applied individually to master rather than confusing a
functional change with them.

On Tue, Feb 17, 2015 at 8:07 AM, Marcus <sh...@gmail.com> wrote:
> Wido, those were my thoughts as well. I haven't looked at the code
> yet, but I'd be surprised if they had to change storage code (or even
> hypervisor-specific code outside of passing along new VR script
> Commands) in any way to accommodate a VR feature, so I hope this is
> just caution. But enough guessing, perhaps I should just go look.
>
> On Tue, Feb 17, 2015 at 6:15 AM, Wido den Hollander <wi...@widodh.nl> wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>>
>>
>> On 02/17/2015 02:19 PM, Daan Hoogland wrote:
>>> People,
>>>
>>> We are having some internal discussions about this code at
>>> Schuberg Philis. We are (most specifically I am) convinced that we
>>> cannot foresee the ways in which this can break master when merged.
>>> We had only one issue coming back from the community and this was
>>> functional more then an issue. By the number of issues that we find
>>> our selves this can't be right. We had no -1 either so the only
>>> logical conclusion is that no one else is testing this part of the
>>> code.
>>>
>>> We do not test all the code and our quality improvement process is
>>> not up to spec [1] yet. Things are going to stop working in the
>>> master branch when we merge this. I don't like this but I see no
>>> way to prevent this in our present state of affairs. We are adding
>>> as much tests as we can without hurting Schuberg Philis business
>>> and that has a limitation.
>>>
>>> You can read how Wilder's env is set up and Ian's isn't very
>>> different. So let me use a negative formulation this time: If we
>>> merge now the following things will not have been tested: most
>>> hypervisors: kvm vmware hyperv
>>
>> I don't *think* it's a major problem since you changed the VR itself,
>> but the way it is deployed is still the same. In the end it's just a
>> disk for the hypervisor.
>>
>>> storage: all non nfs things
>>
>> I'm not so afraid for this since the storage is handled by the
>> hypervisor and the VR doesn't have any knowledge there.
>>
>>> ipv6 functionality This is not a complete list, I suspect.
>>>
>>> Can I get a lot of +1 in spite of these uncertainties? Can you all
>>> please test as much as possible?
>>>
>>
>> As we discussed on the phone, my test cluster is broken at the moment
>> and it will take me 2~3 weeks to get it up and running again.
>>
>> Wido
>>
>>> I called a merge for this morning but will give it a few more
>>> rebase efforts because of those considerations.
>>>
>>> [1]
>>> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Quality+and+Process+Improvement+Initiative
>>>
>>>  On Tue, Feb 17, 2015 at 12:46 AM, Wilder Rodrigues
>>> <WR...@schubergphilis.com> wrote:
>>>> Hi all,
>>>>
>>>> I have been some tests on the branch in order to give you all
>>>> some confidence.
>>>>
>>>> During the tests I found 1 bug related to communication from VM A
>>>> on Tier 1 to VM B on Tier 2 in a Single VPC. I can reproduce the
>>>> bug and it disappears when I convert the Single VPC to a
>>>> redundant one. I already talked to Ian and he is on it.
>>>>
>>>> Results follow below.
>>>>
>>>> Cheers, Wilder
>>>>
>>>> Environment:
>>>>
>>>> Xen 6.2 running on VMware zone within our Betacloud (ACS 4.4.2)
>>>> MySQL running on MacBook Pro Management Server on MacBook Pro
>>>>
>>>> ::: Manual Tests:::
>>>>
>>>> Isolated Networks
>>>>
>>>> * Create Network * Create 2 VMs using new Network * Create FW
>>>> rules * Create PF rules * SSH to the VMs * SSH from one VM onto
>>>> the other in the same isolated network * Destroy Master router *
>>>> Restart the Network * Restart the Network with Clean-up option *
>>>> Repeat steps above
>>>>
>>>> Redundant Isolated Networks
>>>>
>>>> * Create Redundant Network Offering * Create 2 VMs using new
>>>> offering * Create FW rules * Create PF rules * SSH to the VMs *
>>>> SSH from one VM onto the other in the same redundant isolated
>>>> network * Destroy Master router * Restart the Network * Stop the
>>>> Master Router
>>>>
>>>> Single VPC
>>>>
>>>> * Create VPC * Create 2 Tiers * Create ACLS * Create 1 Vm for
>>>> each Tier * Associate 2 IP address * Add PF rules * SSH onto VMs
>>>> * SSH from 1 VM onto another * Restart VPC - Make it redundant *
>>>> Repeat steps above
>>>>
>>>> Redundant VPC
>>>>
>>>> * Create VPC * Create 2 Tiers * Create ACLS * Create 1 Vm for
>>>> each Tier * Associate 2 IP address * Add PF rules * SSH onto VMs
>>>> * SSH from 1 VM onto another * Stop/Destroy the Master Router *
>>>> Observe the Backup router became Master * SSH again onto the VMs
>>>> * Restart VPC (without clean-up) * Observer only 1 new router is
>>>> created * New router is started as Backup * SSH onto VMs *
>>>> Restart VPC (with clean-up) * Observer only 2 new routers are
>>>> created * SSH onto VMs
>>>>
>>>> ::: Automated Tests :::
>>>>
>>>> Test Create Account and user for that account ... === TestName:
>>>> test_01_create_account | Status : SUCCESS === ok Test Sub domain
>>>> allowed to launch VM  when a Domain level zone is created ... ===
>>>> TestName: test_01_add_vm_to_subdomain | Status : SUCCESS === ok
>>>> Test delete domain without force option ... === TestName:
>>>> test_DeleteDomain | Status : SUCCESS === ok Test delete domain
>>>> with force option ... === TestName: test_forceDeleteDomain |
>>>> Status : SUCCESS === ok Test update admin details ... ===
>>>> TestName: test_updateAdminDetails | Status : SUCCESS === ok Test
>>>> update domain admin details ... === TestName:
>>>> test_updateDomainAdminDetails | Status : SUCCESS === ok Test user
>>>> update API ... === TestName: test_updateUserDetails | Status :
>>>> SUCCESS === ok Test login API with domain ... === TestName:
>>>> test_LoginApiDomain | Status : SUCCESS === ok Test if Login API
>>>> does not return UUID's ... === TestName:
>>>> test_LoginApiUuidResponse | Status : SUCCESS === ok
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 9 tests in 1140.977s
>>>>
>>>> OK
>>>>
>>>> Test reset virtual machine on reboot ... === TestName:
>>>> test_01_reset_vm_on_reboot | Status : SUCCESS === ok
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 1 test in 216.907s
>>>>
>>>> OK
>>>>
>>>> Test advanced zone virtual router ... === TestName:
>>>> test_advZoneVirtualRouter | 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 ... SKIP: At least two hosts should be
>>>> present in the zone for migration Test destroy(expunge) Virtual
>>>> Machine ... === TestName: test_09_expunge_vm | Status : SUCCESS
>>>> === ok
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 10 tests in 851.022s
>>>>
>>>> OK (SKIP=1)
>>>>
>>>> Test router internal advanced zone ... SKIP: Marvin configuration
>>>> has no host credentials to check router services Test restart
>>>> network ... === TestName: test_03_restart_network_cleanup |
>>>> Status : SUCCESS === ok Test router basic setup ... === TestName:
>>>> test_05_router_basic | Status : SUCCESS === ok Test router
>>>> advanced setup ... === TestName: test_06_router_advanced | Status
>>>> : SUCCESS === ok Test stop router ... === TestName:
>>>> test_07_stop_router | Status : SUCCESS === ok Test start router
>>>> ... === TestName: test_08_start_router | Status : SUCCESS === ok
>>>> Test reboot router ... === TestName: test_09_reboot_router |
>>>> Status : SUCCESS === ok
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 7 tests in 454.519s
>>>>
>>>> OK (SKIP=1)
>>>>
>>>> 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
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 3 tests in 206.916s
>>>>
>>>> OK
>>>>
>>>> Test VPN in VPC ... === TestName: test_vpc_remote_access_vpn |
>>>> Status : SUCCESS === ok Test VPN in VPC ... === TestName:
>>>> test_vpc_site2site_vpn | Status : SUCCESS === ok
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 2 tests in 373.908s
>>>>
>>>> OK
>>>>
>>>> Test create VPC offering ... === TestName:
>>>> test_01_create_vpc_offering | Status : SUCCESS === ok Test VPC
>>>> offering without load balancing service ... === TestName:
>>>> test_03_vpc_off_without_lb | Status : SUCCESS === ok Test VPC
>>>> offering without static NAT service ... === TestName:
>>>> test_04_vpc_off_without_static_nat | Status : SUCCESS === ok Test
>>>> VPC offering without port forwarding service ... === TestName:
>>>> test_05_vpc_off_without_pf | Status : SUCCESS === ok Test VPC
>>>> offering with invalid services ... === TestName:
>>>> test_06_vpc_off_invalid_services | Status : SUCCESS === ok Test
>>>> update VPC offering ... === TestName: test_07_update_vpc_off |
>>>> Status : SUCCESS === ok Test list VPC offering ... === TestName:
>>>> test_08_list_vpc_off | Status : SUCCESS === ok
>>>> test_09_create_redundant_vpc_offering
>>>> (integration.acs.tests.test_vpc_offerings.TestVPCOffering) ...
>>>> === TestName: test_09_create_redundant_vpc_offering | Status :
>>>> SUCCESS === ok
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 8 tests in 672.382s
>>>>
>>>> OK
>>>>
>>>> test_privategw_acl
>>>> (integration.acs.tests.test_privategw_acl.TestPrivateGwACL) ...
>>>> === TestName: test_privategw_acl | Status : SUCCESS === ok
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 1 test in 90.756s
>>>>
>>>> OK
>>>>
>>>> Test to change service offering of router after addition of one
>>>> guest network ... === TestName:
>>>> test_04_chg_srv_off_router_after_addition_of_one_guest_network |
>>>> Status : SUCCESS === ok Test destroy of router after addition of
>>>> one guest network ... === TestName:
>>>> test_05_destroy_router_after_addition_of_one_guest_network |
>>>> Status : SUCCESS === ok Test to stop and start router after
>>>> creation of VPC ... === TestName:
>>>> test_01_stop_start_router_after_creating_vpc | Status : SUCCESS
>>>> === ok Test to reboot the router after creating a VPC ... ===
>>>> TestName: test_02_reboot_router_after_creating_vpc | Status :
>>>> SUCCESS === ok Tests to change service offering of the Router
>>>> after ... === TestName: test_04_change_service_offerring_vpc |
>>>> Status : SUCCESS === ok Test to destroy the router after creating
>>>> a VPC ... === TestName: test_05_destroy_router_after_creating_vpc
>>>> | Status : SUCCESS === ok
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>> Ran 6 tests in 665.965s
>>>>
>>>> OK
>>>>
>>>> On 16 Feb 2015, at 17:53, Daan Hoogland <da...@gmail.com>
>>>> wrote:
>>>>
>>>>> H,
>>>>>
>>>>> I will merge our feature/systemvm-persistent-config into
>>>>> master. If you have objections please let me know before
>>>>> tomorrow.
>>>>>
>>>>> @john: your comment was addressed in the present day version.
>>>>>
>>>>> -- Daan
>>>>
>>>
>>>
>>>
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1
>>
>> iQIcBAEBAgAGBQJU40zmAAoJEAGbWC3bPspCVHgP/ReiqputXvndXpIy1q9dFBqF
>> wXXtFlqLKAwm7XmtmOrqUdOWPB7fCGPo6G6Tka/divg0BHLxU/Mzfx9vQRXXzGwK
>> 4WROFyOTl0pTLbksJhbTR0pzT4FEfK6EkfIz2S+zd1xaFGlc/puWSjGHs45RS5vm
>> SqNM5knZVo+4nTTMepJFQFEBN4GND8wbTuI3EEjcaodQ1uZM6+3COPaNjj74cXtr
>> K+k7MxSJq0tBBKlCO30Ou0oK/pPn4Az9zYkNgfBoyoJfe8W2PCHS0/f3La3O19Cr
>> lIOjvVoA1zNfC+E8WRhhZC/HNOzme0MiAAPHHkPykWL9xVBObSihkhiu9XehYjKK
>> aK614+Hte6bLD+gra9H01QA1z8Y8ylFxFRTXb+e6fcV6mVReICaQ5tkL50fuTuJ2
>> HRk+1Ybul35/J3ZW3qQ7rikpF4sQ9XTC6MrCpl3Ix0XopYxWtvkLTHVtH5iLWhzy
>> hwiS2kAcc9F8zsLIl01tTbUMxAJUR6cms2AxInPadYUlNu3FmCUwTaFpV8GIr1VK
>> kdcsEyQdXwXTPCcelCraJ214GVpH3IESqtkeqNDB1F7fPNhJQMyQgVT6fzCVXe4G
>> I9Fo82+2X8x7XEwGZL81nt3D0p+ndG0zd+awWlrR4C7rQ3UJl+SSBIkKtqT8G8XS
>> AA3KCgF8a43lyTNCk1x/
>> =19tY
>> -----END PGP SIGNATURE-----

Re: please test, [MERGE] Redundant VPC routers and persistent router config?

Posted by Marcus <sh...@gmail.com>.
Wido, those were my thoughts as well. I haven't looked at the code
yet, but I'd be surprised if they had to change storage code (or even
hypervisor-specific code outside of passing along new VR script
Commands) in any way to accommodate a VR feature, so I hope this is
just caution. But enough guessing, perhaps I should just go look.

On Tue, Feb 17, 2015 at 6:15 AM, Wido den Hollander <wi...@widodh.nl> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
>
> On 02/17/2015 02:19 PM, Daan Hoogland wrote:
>> People,
>>
>> We are having some internal discussions about this code at
>> Schuberg Philis. We are (most specifically I am) convinced that we
>> cannot foresee the ways in which this can break master when merged.
>> We had only one issue coming back from the community and this was
>> functional more then an issue. By the number of issues that we find
>> our selves this can't be right. We had no -1 either so the only
>> logical conclusion is that no one else is testing this part of the
>> code.
>>
>> We do not test all the code and our quality improvement process is
>> not up to spec [1] yet. Things are going to stop working in the
>> master branch when we merge this. I don't like this but I see no
>> way to prevent this in our present state of affairs. We are adding
>> as much tests as we can without hurting Schuberg Philis business
>> and that has a limitation.
>>
>> You can read how Wilder's env is set up and Ian's isn't very
>> different. So let me use a negative formulation this time: If we
>> merge now the following things will not have been tested: most
>> hypervisors: kvm vmware hyperv
>
> I don't *think* it's a major problem since you changed the VR itself,
> but the way it is deployed is still the same. In the end it's just a
> disk for the hypervisor.
>
>> storage: all non nfs things
>
> I'm not so afraid for this since the storage is handled by the
> hypervisor and the VR doesn't have any knowledge there.
>
>> ipv6 functionality This is not a complete list, I suspect.
>>
>> Can I get a lot of +1 in spite of these uncertainties? Can you all
>> please test as much as possible?
>>
>
> As we discussed on the phone, my test cluster is broken at the moment
> and it will take me 2~3 weeks to get it up and running again.
>
> Wido
>
>> I called a merge for this morning but will give it a few more
>> rebase efforts because of those considerations.
>>
>> [1]
>> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Quality+and+Process+Improvement+Initiative
>>
>>  On Tue, Feb 17, 2015 at 12:46 AM, Wilder Rodrigues
>> <WR...@schubergphilis.com> wrote:
>>> Hi all,
>>>
>>> I have been some tests on the branch in order to give you all
>>> some confidence.
>>>
>>> During the tests I found 1 bug related to communication from VM A
>>> on Tier 1 to VM B on Tier 2 in a Single VPC. I can reproduce the
>>> bug and it disappears when I convert the Single VPC to a
>>> redundant one. I already talked to Ian and he is on it.
>>>
>>> Results follow below.
>>>
>>> Cheers, Wilder
>>>
>>> Environment:
>>>
>>> Xen 6.2 running on VMware zone within our Betacloud (ACS 4.4.2)
>>> MySQL running on MacBook Pro Management Server on MacBook Pro
>>>
>>> ::: Manual Tests:::
>>>
>>> Isolated Networks
>>>
>>> * Create Network * Create 2 VMs using new Network * Create FW
>>> rules * Create PF rules * SSH to the VMs * SSH from one VM onto
>>> the other in the same isolated network * Destroy Master router *
>>> Restart the Network * Restart the Network with Clean-up option *
>>> Repeat steps above
>>>
>>> Redundant Isolated Networks
>>>
>>> * Create Redundant Network Offering * Create 2 VMs using new
>>> offering * Create FW rules * Create PF rules * SSH to the VMs *
>>> SSH from one VM onto the other in the same redundant isolated
>>> network * Destroy Master router * Restart the Network * Stop the
>>> Master Router
>>>
>>> Single VPC
>>>
>>> * Create VPC * Create 2 Tiers * Create ACLS * Create 1 Vm for
>>> each Tier * Associate 2 IP address * Add PF rules * SSH onto VMs
>>> * SSH from 1 VM onto another * Restart VPC - Make it redundant *
>>> Repeat steps above
>>>
>>> Redundant VPC
>>>
>>> * Create VPC * Create 2 Tiers * Create ACLS * Create 1 Vm for
>>> each Tier * Associate 2 IP address * Add PF rules * SSH onto VMs
>>> * SSH from 1 VM onto another * Stop/Destroy the Master Router *
>>> Observe the Backup router became Master * SSH again onto the VMs
>>> * Restart VPC (without clean-up) * Observer only 1 new router is
>>> created * New router is started as Backup * SSH onto VMs *
>>> Restart VPC (with clean-up) * Observer only 2 new routers are
>>> created * SSH onto VMs
>>>
>>> ::: Automated Tests :::
>>>
>>> Test Create Account and user for that account ... === TestName:
>>> test_01_create_account | Status : SUCCESS === ok Test Sub domain
>>> allowed to launch VM  when a Domain level zone is created ... ===
>>> TestName: test_01_add_vm_to_subdomain | Status : SUCCESS === ok
>>> Test delete domain without force option ... === TestName:
>>> test_DeleteDomain | Status : SUCCESS === ok Test delete domain
>>> with force option ... === TestName: test_forceDeleteDomain |
>>> Status : SUCCESS === ok Test update admin details ... ===
>>> TestName: test_updateAdminDetails | Status : SUCCESS === ok Test
>>> update domain admin details ... === TestName:
>>> test_updateDomainAdminDetails | Status : SUCCESS === ok Test user
>>> update API ... === TestName: test_updateUserDetails | Status :
>>> SUCCESS === ok Test login API with domain ... === TestName:
>>> test_LoginApiDomain | Status : SUCCESS === ok Test if Login API
>>> does not return UUID's ... === TestName:
>>> test_LoginApiUuidResponse | Status : SUCCESS === ok
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 9 tests in 1140.977s
>>>
>>> OK
>>>
>>> Test reset virtual machine on reboot ... === TestName:
>>> test_01_reset_vm_on_reboot | Status : SUCCESS === ok
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 1 test in 216.907s
>>>
>>> OK
>>>
>>> Test advanced zone virtual router ... === TestName:
>>> test_advZoneVirtualRouter | 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 ... SKIP: At least two hosts should be
>>> present in the zone for migration Test destroy(expunge) Virtual
>>> Machine ... === TestName: test_09_expunge_vm | Status : SUCCESS
>>> === ok
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 10 tests in 851.022s
>>>
>>> OK (SKIP=1)
>>>
>>> Test router internal advanced zone ... SKIP: Marvin configuration
>>> has no host credentials to check router services Test restart
>>> network ... === TestName: test_03_restart_network_cleanup |
>>> Status : SUCCESS === ok Test router basic setup ... === TestName:
>>> test_05_router_basic | Status : SUCCESS === ok Test router
>>> advanced setup ... === TestName: test_06_router_advanced | Status
>>> : SUCCESS === ok Test stop router ... === TestName:
>>> test_07_stop_router | Status : SUCCESS === ok Test start router
>>> ... === TestName: test_08_start_router | Status : SUCCESS === ok
>>> Test reboot router ... === TestName: test_09_reboot_router |
>>> Status : SUCCESS === ok
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 7 tests in 454.519s
>>>
>>> OK (SKIP=1)
>>>
>>> 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
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 3 tests in 206.916s
>>>
>>> OK
>>>
>>> Test VPN in VPC ... === TestName: test_vpc_remote_access_vpn |
>>> Status : SUCCESS === ok Test VPN in VPC ... === TestName:
>>> test_vpc_site2site_vpn | Status : SUCCESS === ok
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 2 tests in 373.908s
>>>
>>> OK
>>>
>>> Test create VPC offering ... === TestName:
>>> test_01_create_vpc_offering | Status : SUCCESS === ok Test VPC
>>> offering without load balancing service ... === TestName:
>>> test_03_vpc_off_without_lb | Status : SUCCESS === ok Test VPC
>>> offering without static NAT service ... === TestName:
>>> test_04_vpc_off_without_static_nat | Status : SUCCESS === ok Test
>>> VPC offering without port forwarding service ... === TestName:
>>> test_05_vpc_off_without_pf | Status : SUCCESS === ok Test VPC
>>> offering with invalid services ... === TestName:
>>> test_06_vpc_off_invalid_services | Status : SUCCESS === ok Test
>>> update VPC offering ... === TestName: test_07_update_vpc_off |
>>> Status : SUCCESS === ok Test list VPC offering ... === TestName:
>>> test_08_list_vpc_off | Status : SUCCESS === ok
>>> test_09_create_redundant_vpc_offering
>>> (integration.acs.tests.test_vpc_offerings.TestVPCOffering) ...
>>> === TestName: test_09_create_redundant_vpc_offering | Status :
>>> SUCCESS === ok
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 8 tests in 672.382s
>>>
>>> OK
>>>
>>> test_privategw_acl
>>> (integration.acs.tests.test_privategw_acl.TestPrivateGwACL) ...
>>> === TestName: test_privategw_acl | Status : SUCCESS === ok
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 1 test in 90.756s
>>>
>>> OK
>>>
>>> Test to change service offering of router after addition of one
>>> guest network ... === TestName:
>>> test_04_chg_srv_off_router_after_addition_of_one_guest_network |
>>> Status : SUCCESS === ok Test destroy of router after addition of
>>> one guest network ... === TestName:
>>> test_05_destroy_router_after_addition_of_one_guest_network |
>>> Status : SUCCESS === ok Test to stop and start router after
>>> creation of VPC ... === TestName:
>>> test_01_stop_start_router_after_creating_vpc | Status : SUCCESS
>>> === ok Test to reboot the router after creating a VPC ... ===
>>> TestName: test_02_reboot_router_after_creating_vpc | Status :
>>> SUCCESS === ok Tests to change service offering of the Router
>>> after ... === TestName: test_04_change_service_offerring_vpc |
>>> Status : SUCCESS === ok Test to destroy the router after creating
>>> a VPC ... === TestName: test_05_destroy_router_after_creating_vpc
>>> | Status : SUCCESS === ok
>>>
>>> ----------------------------------------------------------------------
>>>
>>>
> Ran 6 tests in 665.965s
>>>
>>> OK
>>>
>>> On 16 Feb 2015, at 17:53, Daan Hoogland <da...@gmail.com>
>>> wrote:
>>>
>>>> H,
>>>>
>>>> I will merge our feature/systemvm-persistent-config into
>>>> master. If you have objections please let me know before
>>>> tomorrow.
>>>>
>>>> @john: your comment was addressed in the present day version.
>>>>
>>>> -- Daan
>>>
>>
>>
>>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1
>
> iQIcBAEBAgAGBQJU40zmAAoJEAGbWC3bPspCVHgP/ReiqputXvndXpIy1q9dFBqF
> wXXtFlqLKAwm7XmtmOrqUdOWPB7fCGPo6G6Tka/divg0BHLxU/Mzfx9vQRXXzGwK
> 4WROFyOTl0pTLbksJhbTR0pzT4FEfK6EkfIz2S+zd1xaFGlc/puWSjGHs45RS5vm
> SqNM5knZVo+4nTTMepJFQFEBN4GND8wbTuI3EEjcaodQ1uZM6+3COPaNjj74cXtr
> K+k7MxSJq0tBBKlCO30Ou0oK/pPn4Az9zYkNgfBoyoJfe8W2PCHS0/f3La3O19Cr
> lIOjvVoA1zNfC+E8WRhhZC/HNOzme0MiAAPHHkPykWL9xVBObSihkhiu9XehYjKK
> aK614+Hte6bLD+gra9H01QA1z8Y8ylFxFRTXb+e6fcV6mVReICaQ5tkL50fuTuJ2
> HRk+1Ybul35/J3ZW3qQ7rikpF4sQ9XTC6MrCpl3Ix0XopYxWtvkLTHVtH5iLWhzy
> hwiS2kAcc9F8zsLIl01tTbUMxAJUR6cms2AxInPadYUlNu3FmCUwTaFpV8GIr1VK
> kdcsEyQdXwXTPCcelCraJ214GVpH3IESqtkeqNDB1F7fPNhJQMyQgVT6fzCVXe4G
> I9Fo82+2X8x7XEwGZL81nt3D0p+ndG0zd+awWlrR4C7rQ3UJl+SSBIkKtqT8G8XS
> AA3KCgF8a43lyTNCk1x/
> =19tY
> -----END PGP SIGNATURE-----

Re: please test, [MERGE] Redundant VPC routers and persistent router config?

Posted by Wido den Hollander <wi...@widodh.nl>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1



On 02/17/2015 02:19 PM, Daan Hoogland wrote:
> People,
> 
> We are having some internal discussions about this code at
> Schuberg Philis. We are (most specifically I am) convinced that we
> cannot foresee the ways in which this can break master when merged.
> We had only one issue coming back from the community and this was
> functional more then an issue. By the number of issues that we find
> our selves this can't be right. We had no -1 either so the only
> logical conclusion is that no one else is testing this part of the
> code.
> 
> We do not test all the code and our quality improvement process is
> not up to spec [1] yet. Things are going to stop working in the
> master branch when we merge this. I don't like this but I see no
> way to prevent this in our present state of affairs. We are adding
> as much tests as we can without hurting Schuberg Philis business
> and that has a limitation.
> 
> You can read how Wilder's env is set up and Ian's isn't very 
> different. So let me use a negative formulation this time: If we
> merge now the following things will not have been tested: most
> hypervisors: kvm vmware hyperv

I don't *think* it's a major problem since you changed the VR itself,
but the way it is deployed is still the same. In the end it's just a
disk for the hypervisor.

> storage: all non nfs things

I'm not so afraid for this since the storage is handled by the
hypervisor and the VR doesn't have any knowledge there.

> ipv6 functionality This is not a complete list, I suspect.
> 
> Can I get a lot of +1 in spite of these uncertainties? Can you all
> please test as much as possible?
> 

As we discussed on the phone, my test cluster is broken at the moment
and it will take me 2~3 weeks to get it up and running again.

Wido

> I called a merge for this morning but will give it a few more
> rebase efforts because of those considerations.
> 
> [1]
> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Quality+and+Process+Improvement+Initiative
>
>  On Tue, Feb 17, 2015 at 12:46 AM, Wilder Rodrigues 
> <WR...@schubergphilis.com> wrote:
>> Hi all,
>> 
>> I have been some tests on the branch in order to give you all
>> some confidence.
>> 
>> During the tests I found 1 bug related to communication from VM A
>> on Tier 1 to VM B on Tier 2 in a Single VPC. I can reproduce the
>> bug and it disappears when I convert the Single VPC to a
>> redundant one. I already talked to Ian and he is on it.
>> 
>> Results follow below.
>> 
>> Cheers, Wilder
>> 
>> Environment:
>> 
>> Xen 6.2 running on VMware zone within our Betacloud (ACS 4.4.2) 
>> MySQL running on MacBook Pro Management Server on MacBook Pro
>> 
>> ::: Manual Tests:::
>> 
>> Isolated Networks
>> 
>> * Create Network * Create 2 VMs using new Network * Create FW
>> rules * Create PF rules * SSH to the VMs * SSH from one VM onto
>> the other in the same isolated network * Destroy Master router *
>> Restart the Network * Restart the Network with Clean-up option *
>> Repeat steps above
>> 
>> Redundant Isolated Networks
>> 
>> * Create Redundant Network Offering * Create 2 VMs using new
>> offering * Create FW rules * Create PF rules * SSH to the VMs *
>> SSH from one VM onto the other in the same redundant isolated
>> network * Destroy Master router * Restart the Network * Stop the
>> Master Router
>> 
>> Single VPC
>> 
>> * Create VPC * Create 2 Tiers * Create ACLS * Create 1 Vm for
>> each Tier * Associate 2 IP address * Add PF rules * SSH onto VMs 
>> * SSH from 1 VM onto another * Restart VPC - Make it redundant *
>> Repeat steps above
>> 
>> Redundant VPC
>> 
>> * Create VPC * Create 2 Tiers * Create ACLS * Create 1 Vm for
>> each Tier * Associate 2 IP address * Add PF rules * SSH onto VMs 
>> * SSH from 1 VM onto another * Stop/Destroy the Master Router *
>> Observe the Backup router became Master * SSH again onto the VMs 
>> * Restart VPC (without clean-up) * Observer only 1 new router is
>> created * New router is started as Backup * SSH onto VMs *
>> Restart VPC (with clean-up) * Observer only 2 new routers are
>> created * SSH onto VMs
>> 
>> ::: Automated Tests :::
>> 
>> Test Create Account and user for that account ... === TestName:
>> test_01_create_account | Status : SUCCESS === ok Test Sub domain
>> allowed to launch VM  when a Domain level zone is created ... ===
>> TestName: test_01_add_vm_to_subdomain | Status : SUCCESS === ok 
>> Test delete domain without force option ... === TestName:
>> test_DeleteDomain | Status : SUCCESS === ok Test delete domain
>> with force option ... === TestName: test_forceDeleteDomain |
>> Status : SUCCESS === ok Test update admin details ... ===
>> TestName: test_updateAdminDetails | Status : SUCCESS === ok Test
>> update domain admin details ... === TestName:
>> test_updateDomainAdminDetails | Status : SUCCESS === ok Test user
>> update API ... === TestName: test_updateUserDetails | Status :
>> SUCCESS === ok Test login API with domain ... === TestName:
>> test_LoginApiDomain | Status : SUCCESS === ok Test if Login API
>> does not return UUID's ... === TestName:
>> test_LoginApiUuidResponse | Status : SUCCESS === ok
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 9 tests in 1140.977s
>> 
>> OK
>> 
>> Test reset virtual machine on reboot ... === TestName:
>> test_01_reset_vm_on_reboot | Status : SUCCESS === ok
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 1 test in 216.907s
>> 
>> OK
>> 
>> Test advanced zone virtual router ... === TestName:
>> test_advZoneVirtualRouter | 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 ... SKIP: At least two hosts should be
>> present in the zone for migration Test destroy(expunge) Virtual
>> Machine ... === TestName: test_09_expunge_vm | Status : SUCCESS
>> === ok
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 10 tests in 851.022s
>> 
>> OK (SKIP=1)
>> 
>> Test router internal advanced zone ... SKIP: Marvin configuration
>> has no host credentials to check router services Test restart
>> network ... === TestName: test_03_restart_network_cleanup |
>> Status : SUCCESS === ok Test router basic setup ... === TestName:
>> test_05_router_basic | Status : SUCCESS === ok Test router
>> advanced setup ... === TestName: test_06_router_advanced | Status
>> : SUCCESS === ok Test stop router ... === TestName:
>> test_07_stop_router | Status : SUCCESS === ok Test start router
>> ... === TestName: test_08_start_router | Status : SUCCESS === ok 
>> Test reboot router ... === TestName: test_09_reboot_router |
>> Status : SUCCESS === ok
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 7 tests in 454.519s
>> 
>> OK (SKIP=1)
>> 
>> 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
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 3 tests in 206.916s
>> 
>> OK
>> 
>> Test VPN in VPC ... === TestName: test_vpc_remote_access_vpn |
>> Status : SUCCESS === ok Test VPN in VPC ... === TestName:
>> test_vpc_site2site_vpn | Status : SUCCESS === ok
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 2 tests in 373.908s
>> 
>> OK
>> 
>> Test create VPC offering ... === TestName:
>> test_01_create_vpc_offering | Status : SUCCESS === ok Test VPC
>> offering without load balancing service ... === TestName:
>> test_03_vpc_off_without_lb | Status : SUCCESS === ok Test VPC
>> offering without static NAT service ... === TestName:
>> test_04_vpc_off_without_static_nat | Status : SUCCESS === ok Test
>> VPC offering without port forwarding service ... === TestName:
>> test_05_vpc_off_without_pf | Status : SUCCESS === ok Test VPC
>> offering with invalid services ... === TestName:
>> test_06_vpc_off_invalid_services | Status : SUCCESS === ok Test
>> update VPC offering ... === TestName: test_07_update_vpc_off |
>> Status : SUCCESS === ok Test list VPC offering ... === TestName:
>> test_08_list_vpc_off | Status : SUCCESS === ok 
>> test_09_create_redundant_vpc_offering
>> (integration.acs.tests.test_vpc_offerings.TestVPCOffering) ...
>> === TestName: test_09_create_redundant_vpc_offering | Status :
>> SUCCESS === ok
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 8 tests in 672.382s
>> 
>> OK
>> 
>> test_privategw_acl
>> (integration.acs.tests.test_privategw_acl.TestPrivateGwACL) ...
>> === TestName: test_privategw_acl | Status : SUCCESS === ok
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 1 test in 90.756s
>> 
>> OK
>> 
>> Test to change service offering of router after addition of one
>> guest network ... === TestName:
>> test_04_chg_srv_off_router_after_addition_of_one_guest_network |
>> Status : SUCCESS === ok Test destroy of router after addition of
>> one guest network ... === TestName:
>> test_05_destroy_router_after_addition_of_one_guest_network |
>> Status : SUCCESS === ok Test to stop and start router after
>> creation of VPC ... === TestName:
>> test_01_stop_start_router_after_creating_vpc | Status : SUCCESS
>> === ok Test to reboot the router after creating a VPC ... ===
>> TestName: test_02_reboot_router_after_creating_vpc | Status :
>> SUCCESS === ok Tests to change service offering of the Router
>> after ... === TestName: test_04_change_service_offerring_vpc |
>> Status : SUCCESS === ok Test to destroy the router after creating
>> a VPC ... === TestName: test_05_destroy_router_after_creating_vpc
>> | Status : SUCCESS === ok
>> 
>> ----------------------------------------------------------------------
>>
>> 
Ran 6 tests in 665.965s
>> 
>> OK
>> 
>> On 16 Feb 2015, at 17:53, Daan Hoogland <da...@gmail.com>
>> wrote:
>> 
>>> H,
>>> 
>>> I will merge our feature/systemvm-persistent-config into
>>> master. If you have objections please let me know before
>>> tomorrow.
>>> 
>>> @john: your comment was addressed in the present day version.
>>> 
>>> -- Daan
>> 
> 
> 
> 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJU40zmAAoJEAGbWC3bPspCVHgP/ReiqputXvndXpIy1q9dFBqF
wXXtFlqLKAwm7XmtmOrqUdOWPB7fCGPo6G6Tka/divg0BHLxU/Mzfx9vQRXXzGwK
4WROFyOTl0pTLbksJhbTR0pzT4FEfK6EkfIz2S+zd1xaFGlc/puWSjGHs45RS5vm
SqNM5knZVo+4nTTMepJFQFEBN4GND8wbTuI3EEjcaodQ1uZM6+3COPaNjj74cXtr
K+k7MxSJq0tBBKlCO30Ou0oK/pPn4Az9zYkNgfBoyoJfe8W2PCHS0/f3La3O19Cr
lIOjvVoA1zNfC+E8WRhhZC/HNOzme0MiAAPHHkPykWL9xVBObSihkhiu9XehYjKK
aK614+Hte6bLD+gra9H01QA1z8Y8ylFxFRTXb+e6fcV6mVReICaQ5tkL50fuTuJ2
HRk+1Ybul35/J3ZW3qQ7rikpF4sQ9XTC6MrCpl3Ix0XopYxWtvkLTHVtH5iLWhzy
hwiS2kAcc9F8zsLIl01tTbUMxAJUR6cms2AxInPadYUlNu3FmCUwTaFpV8GIr1VK
kdcsEyQdXwXTPCcelCraJ214GVpH3IESqtkeqNDB1F7fPNhJQMyQgVT6fzCVXe4G
I9Fo82+2X8x7XEwGZL81nt3D0p+ndG0zd+awWlrR4C7rQ3UJl+SSBIkKtqT8G8XS
AA3KCgF8a43lyTNCk1x/
=19tY
-----END PGP SIGNATURE-----