Skip to content

Conversation

@kollyma
Copy link

@kollyma kollyma commented Mar 20, 2016

PR against 4.7 as discussed with Remi Bergsma. This will speed up the iptables creation on the virtual router.

Testing showed the following:
with current code:
root@kvm704:~# time /usr/share/cloudstack-common/scripts/network/domr/router_proxy.sh vr_cfg.sh 169.254.1.176 -c /var/cache/cloud/VR-12f28879-de7e-44d2-8dbe-b93a04bd3ba4.cfg
real 2m56.401s
user 0m0.012s
sys 0m0.012s

modified version:
root@kvm704:~# time /usr/share/cloudstack-common/scripts/network/domr/router_proxy.sh vr_cfg.sh 169.254.1.176 -c /var/cache/cloud/VR-12f28879-de7e-44d2-8dbe-b93a04bd3ba4.cfg
real 1m35.762s
user 0m0.020s
sys 0m0.004s

Priti Sarap and others added 30 commits August 10, 2015 11:03
… instance

	-Modified code to add tag to aonly one cluster wide SP
	-Added validateList function
	-Added code to clear tags in tearDown class
Summary: listVolumes API fails when volume associated vm instance has NULL or invalid state. Fix the code to guard this situation since this should not block volume listing.
Updating the documentation before the api is actually supported
Conflicts:
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
…yed and re created in Basic Zone

	-Merging the testcase in exsiting testcase by adding support for
	basic zone
	-Merging two commits into single commit
corrected some entires in test data
When rabbitmq connections are blocked(for example when rabbitmq is
server is out of space), all the cloudstack threads which does any
action and publishes to rabbitmq(for example login, launch vm etc.) are
all blocked.

Added a blocked connection listener to handle this and unblock the
parent thread.
The main changes are:
•	Changing methods “Void” to “void”.
•	Removal of the method “Void copyAsync(DataObject srcData, DataObject
destData, AsyncCompletionCallback callback)” that was never used. We
noticed that methods form that class are using the return type Void with
capital V. This way that method has to return a null value at the end.
… Server 10 SP2 and SP3"

Added Unit test for the new method
CLOUDSTACK-9127 Missing PV-bootloader-args for "SUSE Linux Enterprise Server 10 SP2 and SP3"

ISSUE
--------
STOP-START of SUSE Linux VMs fail, as PV-bootloader-args are missing during the start command.
DESCRIPTION
----------------------
Repro steps
1. Upload Suse ISO
2. Create a VM with this ISO, and install it.
3. Detach ISO from the VM.
4. Reboot the VM, :>>>> This will work fine, as the pv-bootloader-args are not missing during reboot.
5.Stop the VM from CCP(VM will get destroyed in Xencenter)
6. Start the same VM from CCP , it will try to start but will fail.

Before Applying the fix
--------------------------------
Before applying the starting the VM failed with following exception
com.cloud.utils.exception.CloudRuntimeException: Unable to start VM(i-2-6-VM) on host(7cfd6388-b763-4c09-b3a3-9679db2904a3) due to Task failed! Task record:                 uuid: 21a6799f-9523-7c0e-bb86-1de750a38d74
           nameLabel: Async.VM.start_on
     nameDescription:
   allowedOperations: []
   currentOperations: {}
             created: Wed Dec 09 07:00:29 UTC 2015
            finished: Wed Dec 09 07:00:31 UTC 2015
              status: failure
          residentOn: com.xensource.xenapi.Host@513d238c
            progress: 1.0
                type: <none/>
              result:
           errorInfo: [BOOTLOADER_FAILED, OpaqueRef:0b10b6ac-837d-29af-da9d-6ef1e11a064a, Unable to find partition containing kernel
]
         otherConfig: {}
           subtaskOf: com.xensource.xenapi.Task@aaf13f6f
            subtasks: []

![image](https://cloud.githubusercontent.com/assets/12229259/11678758/bd0fc9aa-9e70-11e5-9687-c77bfecaa4dd.png)

After Applying the fix
--------------------------
After applying the fix I am able to start the vm.
![image](https://cloud.githubusercontent.com/assets/12229259/11678938/6d44f5b0-9e72-11e5-83b0-60a736408b4d.png)

* pr/1196:
  CLOUDSTACK-9127 Missing PV-bootloader-args for "SUSE Linux Enterprise Server 10 SP2 and SP3"

Signed-off-by: Daan Hoogland <[email protected]>
CLOUDSTACK-9103 : Missing OS Mappings for VMware 6.0Added suitable db entries in tables hypervisor_capabilities and guest_os_hypervisor to support VMware 6.0 by copying from 5.5 and excluding few depricated guest os.And also added entries for guest os RHEL 7 for vmware 5.5 and 6.0.

* pr/1216:
  CLOUDSTACK-9103 : Missing OS Mappings for VMware 6.0

Signed-off-by: Daan Hoogland <[email protected]>
CLOUDSTACK-9166:Build failed in Jenkins: cloudstack-rat-master #7038With my last PR#1196, I missed to place the license disclaimer into CitrixHelperTest.java. Updated the file with the disclaimer.

* pr/1243:
  CLOUDSTACK-9166:Build failed in Jenkins: cloudstack-rat-master apache#7038

Signed-off-by: Daan Hoogland <[email protected]>
rafaelweingartner and others added 7 commits March 9, 2016 23:15
ADD be explicit about the underlying limitation - OpenSwanAccording to:
http://linux.die.net/man/5/ipsec.secrets

A preshared secret is most conveniently represented as a sequence of characters, delimited by the double-quote character ("). The sequence cannot contain a newline or double-quote.

* pr/1426:
  ADD be explicit about the underlying limitation - OpenSwan

Signed-off-by: Rafael Weingärtner <[email protected]>
Change variable "ROOK_DISK_CONTROLLER" to "ROOT_DISK_CONTROLLER"Change com.cloud.vm.VmDetailConstants variable name from "ROOK_DISK_CONTROLLER" to "ROOT_DISK_CONTROLLER". The ROOK_DISK_CONTROLLER variable stores the "rootDiskController" String; thus, this PR changes the name to "ROOT_DISK_CONTROLLER".

* pr/1434:
  VmDetailConstants "ROOK_DISK_CONTROLLER" to "ROOT_DISK_CONTROLLER"

Signed-off-by: Rafael Weingärtner <[email protected]>
…e memory utilization information for a VM for xenserver,kvm and for vmware.
CLOUDSTACK-8800 : Improved the listVirtualMachines API call to include memory utilization information for a VMfor xenserver,kvm and for vmware.

* pr/780:
  CLOUDSTACK-8800 : Improved the listVirtualMachines API call to include memory utilization information for a VM for xenserver,kvm and for vmware.

Signed-off-by: Kishan Kavala <[email protected]>
CLOUDSTACK-9304: Add nuagevsp userdata testcase (Cloudstack-9095) & Refactor existing testcaseshttps://issues.apache.org/jira/browse/CLOUDSTACK-9304

1. Created folder / test / integration / plugins / nuagevsp
 2. Moved test_nuage_vpc_network.py , test_nuage_vsp.py from / test / integration / component /  to---> / test / integration / plugins / nuagevsp/
 3. Added new testcase test_nuage_password_reset.py (Cloudstack-9095)
 4. Added Nuage class in / tools / marvin / marvin / lib / base.py
 5. Added services in / tools / marvin / marvin / config / test_data.py

results:
 test_01_UserDataPasswordReset (nuagevsp.test_nuage_password_reset.TestNuagePasswordReset) ... === TestName: test_01_UserDataPasswordReset | Status : SUCCESS ===
 ok
 Test Basic VPC Network Functionality with NuageVsp network Plugin ... === TestName: test_nuage_vpc_network | Status : SUCCESS ===
 ok
 Test NuageVsp network plugin with basic Isolated Network functionality ... === TestName: test_nuage_vsp | Status : SUCCESS ===
 ok

----------------------------------------------------------------------
 XML: /root/report_xunit.xml
 ----------------------------------------------------------------------
[PassLogs.zip](https://github.com/apache/cloudstack/files/164368/PassLogs.zip)

 Ran 3 tests in 2406.256s

OK

#CLOUDSTACK-9304

* pr/1431:
  Made the code Pyflakes compliant
  CLOUDSTACK-9304 - Exit loop when Physical Network with isolation as VSP is found 	modified:   nuageTestCase.py
  CLOUDSTACK-9304 - Modified Description
  deleted:    test_vpcnetwork_nuage.py 	new file:   ../plugins/nuagevsp/__init__.py
  Add nuagevsp userdata testcase (Cloudstack-9095) & Refactor existing testcases

Signed-off-by: Srikanteswararao Talluri <[email protected]>
@cristofolini
Copy link
Contributor

@kollyma I like what you did here. Besides apparently speeding up the iptables setup, the code looks more streamlined this way.
But it seems your build timed out. You might want to do another push later.

@kollyma
Copy link
Author

kollyma commented Mar 21, 2016

@cristofolini : thanks! indeed the "Apache CloudStack Plugin - Quota Service" timed out. After reviewing the PR and the Jenkins output, I can not see any relations. Should I open another pull request with the same code and check if it works? Did I understand this correctly?

@swill
Copy link
Contributor

swill commented Mar 21, 2016

@kollyma, maybe just add a comment at the top to mention something like "pre-fetch the variables so they are not fetched multiple times inline" or something like that and this should prompt another build without having to create a new PR. Since we can't close a PR without a merge, this is probably the simplest way to handle it. Good comments are rarely a bad thing.

@kollyma
Copy link
Author

kollyma commented Mar 22, 2016

The third time is the charm,all checks have passed now! the first time Jenkins failed and strangely enough the second time Travis failed.

@milamberspace
Copy link
Contributor

Good job. Thanks.
Works fine in my 4.8 test installation (real platform)
Several tests on RV and RVR routers with network restart with/without clean up
LGTM

@swill
Copy link
Contributor

swill commented Mar 25, 2016

I am pretty comfortable with this PR given the scope of the change. Thanks @milamberspace for testing. Should this be committed against 4.7 and then forward merged? I am not entirely sure what the guidelines are for the types of changes that should be merged into previous releases. I know features should be against master, but I am not sure the details beyond that. @remibergsma do you have any guidance on this topic? Obviously the branch a PR it is opened against suggests a course of action, but I would like to have a clearer understanding of this.

@DaanHoogland
Copy link
Contributor

@swill it is our responsibility as committers to make sure that it is merged against the right branch. if it is not a new feature and at the moment 4.7 is the branch to go for. merging forward to 4.8. and master/4.9 is the right procedure.

@resmo
Copy link
Member

resmo commented Apr 1, 2016

LGTM! please merge

@remibergsma
Copy link
Contributor

@kollyma Please squash the commits.
@swill Let's run integration tests on this before merge.

@swill
Copy link
Contributor

swill commented Apr 1, 2016

@remibergsma The test have already been started. :)

@swill
Copy link
Contributor

swill commented Apr 2, 2016

CI Results

84/85 SUCCESSFUL

1 Failure (this and another similar test seem to fail consistently in my CI currently)

FAIL: Test redundant router internals
-------------------------------------
Traceback (most recent call last):
  File "/data/git/cs1/cloudstack/test/integration/smoke/test_routers_network_ops.py", line 483, in test_02_RVR_Network_FW_PF_SSH_default_routes_egress_false
    "Attempt to retrieve google.com index page should be successful once rule is added!"
AssertionError: Attempt to retrieve google.com index page should be successful once rule is added!

Ran the following tests...

echo "Running tests with required_hardware=true"
nosetests --with-marvin --marvin-config=${marvinCfg} -s -a tags=advanced,required_hardware=true \
smoke/test_password_server.py \
smoke/test_vpc_redundant.py \
smoke/test_routers_iptables_default_policy.py \
smoke/test_routers_network_ops.py \
smoke/test_vpc_router_nics.py \
smoke/test_router_dhcphosts.py \
smoke/test_loadbalance.py \
smoke/test_internal_lb.py \
smoke/test_ssvm.py \
smoke/test_vpc_vpn.py \
smoke/test_privategw_acl.py \
smoke/test_network.py

echo "Running tests with required_hardware=false"
nosetests --with-marvin --marvin-config=${marvinCfg} -s -a tags=advanced,required_hardware=false \
smoke/test_routers.py \
smoke/test_network_acl.py \
smoke/test_reset_vm_on_reboot.py \
smoke/test_vm_life_cycle.py \
smoke/test_service_offerings.py \
smoke/test_network.py \
component/test_vpc_offerings.py \
component/test_vpc_routers.py

Associated Uploads

test_network_1WIKLA:

test_vpc_routers_8ZWKPC:

Uploads will be available until 2016-06-02 00:00:00 +0000 GMT

Comment created by upr comment.

@swill
Copy link
Contributor

swill commented Apr 2, 2016

The debut of upr, so let me know if you want me to change the format. Also if you want me to add more tests in future runs, please let me know...

Given these results and the fact that the one failure consistently fails in my environment, I think we are ready to merge...

@remibergsma
Copy link
Contributor

@swill In the logs I see this:

{returns: [u'--2016-04-01 21:41:30--  http://www.google.com/', u'Resolving www.google.com... 2607:f8b0:4006:807::2004, 172.217.0.36', u'Connecting to www.google.com|2607:f8b0:4006:807::2004|:80... failed: Network is unreachable.', u'Connecting to www.google.com|172.217.0.36|:80... connected.', u'HTTP request sent, awaiting response... 302 Found', u'Location: http://www.google.ca/?gfe_rd=cr&ei=Cuv-Vo3NLuih8wfM-b6oAw [following]', u'--2016-04-01 21:41:30--  http://www.google.ca/?gfe_rd=cr&ei=Cuv-Vo3NLuih8wfM-b6oAw', u'Resolving www.google.ca... failed: Connection timed out.', u"wget: unable to resolve host address 'www.google.ca'"]}
root: DEBUG: Result from SSH into the Virtual Machine: [u'--2016-04-01 21:41:30--  http://www.google.com/', u'Resolving www.google.com... 2607:f8b0:4006:807::2004, 172.217.0.36', u'Connecting to www.google.com|2607:f8b0:4006:807::2004|:80... failed: Network is unreachable.', u'Connecting to www.google.com|172.217.0.36|:80... connected.', u'HTTP request sent, awaiting response... 302 Found', u'Location: http://www.google.ca/?gfe_rd=cr&ei=Cuv-Vo3NLuih8wfM-b6oAw [following]', u'--2016-04-01 21:41:30--  http://www.google.ca/?gfe_rd=cr&ei=Cuv-Vo3NLuih8wfM-b6oAw', u'Resolving www.google.ca... failed: Connection timed out.', u"wget: unable to resolve host address 'www.google.ca'"]

It resolved google.com but then gets redirected to www.google.ca which it cannot resolve due to a timeout. Looks like a local issue, indeed. In a newer version of the test we are testing the public gateway instead but that hasn't been merged / sent as PR I guess.

@swill
Copy link
Contributor

swill commented Apr 3, 2016

@kollyma Can you squash the commits for me and I will then merge this in. Thanks...

Testing showed the following:
with current code:
root@kvm704:~# time /usr/share/cloudstack-common/scripts/network/domr/router_proxy.sh vr_cfg.sh 169.254.1.176 -c /var/cache/cloud/VR-12f28879-de7e-44d2-8dbe-b93a04bd3ba4.cfg
real    2m56.401s
user    0m0.012s
sys    0m0.012s

modified version:
root@kvm704:~# time /usr/share/cloudstack-common/scripts/network/domr/router_proxy.sh vr_cfg.sh 169.254.1.176 -c /var/cache/cloud/VR-12f28879-de7e-44d2-8dbe-b93a04bd3ba4.cfg
real    1m35.762s
user    0m0.020s
sys    0m0.004s

Update configure.py

add comment to trigger another build request.

change comments

changing some comments to verify if build fails.
@kollyma
Copy link
Author

kollyma commented Apr 5, 2016

@swill: tried to squash the commits shortly from holidays. Did not worked as expected, messed up my PR. I need to debug this when I am back next week...

@kollyma
Copy link
Author

kollyma commented Apr 11, 2016

During commit squashing something went wrong.. i could not revert. Here a new Pull request with exactly the same changes. Sorry for any inconvenience caused.. and thanks for your "LGTM"
#1487

@DaanHoogland
Copy link
Contributor

@kollyma can you close this one if #1487 is indeed the same?

@kollyma kollyma closed this Apr 12, 2016
asfgit pushed a commit that referenced this pull request Apr 12, 2016
…bles

speedup iptables by prefetching the variables-- This PR is replacing speedup iptables setup #1449
-- Squashing commits and cleanup

PR against 4.7 as discussed with Remi Bergsma. This will speed up the iptables creation on the virtual router.

Testing showed the following:
with current code:
root@kvm704:~# time /usr/share/cloudstack-common/scripts/network/domr/router_proxy.sh vr_cfg.sh 169.254.1.176 -c /var/cache/cloud/VR-12f28879-de7e-44d2-8dbe-b93a04bd3ba4.cfg
real 2m56.401s
user 0m0.012s
sys 0m0.012s

modified version:
root@kvm704:~# time /usr/share/cloudstack-common/scripts/network/domr/router_proxy.sh vr_cfg.sh 169.254.1.176 -c /var/cache/cloud/VR-12f28879-de7e-44d2-8dbe-b93a04bd3ba4.cfg
real 1m35.762s
user 0m0.020s
sys 0m0.004s

* pr/1487:
  speedup iptables by prefetching the variables

Signed-off-by: Will Stevens <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.