Commit Graph

29420 Commits

Author SHA1 Message Date
Vincent Bernat f2b8f2eade sysctl: don't modify /etc/sysctl.conf
To configure firewall rules, CloudStack modifies `/etc/sysctl.conf` and
execute those modifications. This may be harmful for several reasons:

 1. `/etc/sysctl.conf` may be managed by some configuration management
    system. Such a system will constantly restore the previous version.

 2. `/etc/sysctl.conf` may contain additional properties that have been
    changed later by some system administrator (for example, once a
    firewall has been configured, forwarding may have been activated
    while it is disabled in `/etc/sysctl.conf`). Executing the file
    again at a later time may disrupt the system.

 3. Entries are added again and again. `/etc/sysctl.conf` will contain
    the same directives repeated several times.

Using a configuration file is not needed as `sysctl` is able to directly
modify sysctl values with `-w` flag.

Signed-off-by: Vincent Bernat <Vincent.Bernat@exoscale.ch>
2015-09-04 14:31:09 +02:00
Kevin McCormick 99d20234d4 CLOUDSTACK-8678: Reserve RAM for KVM host OS
Use host.reserved.ram.mb agent property to modify total system RAM
before reporting to management server.

Remove dom0ram variable and its min/max calculation. Just reserve a
default of 1GB, unless overridden by host.reserved.mem.mb property.
2015-09-03 10:07:22 -07:00
Rajani Karuturi 53a441faf6 CLOUDSTACK-8647: linkdomaintoldap shouldnt fail when createuseraccount fails
Incase create useraccount fails with any runtime exception,
linkdomaintoldap api shouldnt fail. It just will not return the admin id
as it didnt create the account.
added test cases to verify this as well.
2015-09-03 18:05:50 +05:30
wilderrodrigues 53c9bb4d38 CLOUDSTACK-8759 - Fix guets nic allocation
- When stopping/detroying a VPC router and creating a new one via the addition os a VM, the networks are no plugged correctly
   - The ETH1 ends up with the IP of the guest nic, which remains down. This causes routes problems and the VMs are not reachable via the pub IPs
2015-09-03 09:38:56 +02:00
wilderrodrigues 23d0f3feda CLOUDSTACK-8759 - Adding a marvin test in order to cover the fix
- The test will create a VPC, add 2 tier, 2 VMs, ACL, PF and SSH into the VM
   - Then it will stop the router, destroy the router, add another VM to 1 tier and check that we can reach all the VMs
2015-09-02 17:05:16 +02:00
Rohit Yadav dd9ba48efa Merge pull request #753 from shapeblue/master-CLOUDSTACK-8762
CLOUDSTACK-8762: Check to confirm disk activity before starting a VMImplements a VM volume/disk file activity checker that checks if QCOW2 file
has been changed before starting the VM. This is useful as a pessimistic
approach to save VMs that were running on faulty hosts that CloudStack could
try to launch on other hosts while the host was not cleanly fenced. This is
optional and available only if you enable the settings in agent.properties
file, on per-host basis.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

* pr/753:
  CLOUDSTACK-8762: Check to confirm disk activity before starting a VM

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-09-02 14:55:54 +05:30
Jayapal d3fea571a5 CLOUDSTACK-8690:Added remote access vpn and vpn users configuration 2015-09-02 12:03:21 +05:30
shweta agarwal 2eb83604a2 CLOUDSTACK-8755: xs-tools.iso missing from ISOs in CCP GUI
This closes #727
2015-09-02 11:46:28 +05:30
Rohit Yadav 4f9aaf32f1 Merge pull request #769 from milamberspace/L10N-update-updateMaster-20150901
L10n update master from Transifex 20150901Update L10N resource files on master branch with 4.6 translation strings from Transifex (20150901)
Fix an issue with the key message.admin.guide.read on pt_BR L10N in web UI at the root cause

* pr/769:
  Update L10N resource files on master branch with 4.6 translation strings from Transifex (20150901) Fix an issue with the key message.admin.guide.read on pt_BR L10N in web UI at the root cause

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-09-02 10:38:00 +05:30
Rajani Karuturi 6177bae810 CLOUDSTACK-8647 removed duplicate key in create sql of ldap_trust_map 2015-09-02 09:32:43 +05:30
Wei Zhou c0a0aec0f9 Merge pull request #732 from ustcweizhou/revert-volume-snapshot-master
Guys, can you review it? things need to be discussed:
(1) this supports KVM/QCOW2 only. Anyone want to implement for other Hypervisor/format ?
(2) The original data volume (on primary storage) will be removed.
(3) The script uses the default timeout in libvirtComputingResource. Do we need to add one in global configuration (like copy.volume.wait or backup.snapshot.wait, create.volume.from.snapshot.wait)
(4) In scripts/storage/qcow2/managesnapshot.sh, I use "qemu-img convert -f qcow2 -O qcow2" to copy the snapshot from secondary to primary (hence there is no base image file), instead of "cp -f", this is because convert is faster than cp in my testing.

* pr/732:
  CLOUDSTACK-5863: revert volume snapshot for KVM/QCOW2

Signed-off-by: Wei Zhou <w.zhou@tech.leaseweb.com>
2015-09-01 16:18:40 +02:00
Milamber 0456dd3997 Update L10N resource files on master branch with 4.6 translation strings from Transifex (20150901)
Fix an issue with the key message.admin.guide.read on pt_BR L10N in web UI at the root cause
2015-09-01 13:55:43 +01:00
wilderrodrigues 21df0ffe89 CLOUDSTACK-8759 - The guest nic has to be added after the control nic
- The was an issue introduced on 4.5 with the VPC refactor.
   - Adding a VM to a VPC with no router would create a broken VPC router, with no nics
2015-09-01 14:31:49 +02:00
Koushik Das f732c7d1e9 Merge pull request #760 from koushik-das/CLOUDSTACK-8785
CLOUDSTACK-8785: Proper enforcement of retry count (max.retries) for all work type handled by HighAvailability manager
Retry count is properly enforced for all work types in HA manager. Also reorganized some of the code for easy testing.

Signed-off-by: Koushik Das <koushik@apache.org>
2015-09-01 17:59:08 +05:30
Rohit Yadav c8bfeb88c3 Merge pull request #767 from mike-tutkowski/CLOUDSTACK-8792
Support live migration on older version of Libvirthttps://issues.apache.org/jira/browse/CLOUDSTACK-8792

A flag being passed to Libvirt assumes v1.0.0 or later.

We need to put a check in the code to pass in a different flag if the version of Libvirt is < 1.0.0.

* pr/767:
  Support live migration on older version of Libvirt

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-09-01 17:21:59 +05:30
Rajani Karuturi 22c78ede32 Fixing line endings in the new file introduced in PR #762 merged through commit e8979c0e65 2015-09-01 14:34:54 +05:30
Rajani Karuturi e8979c0e65 Merge pull request #762 from rafaelweingartner/cglibThrowableRenderer
Proposal for an improved CglibThrowableRendererFollowing our discussions on mailing list, here is a PR with a proposal for an improvement on CglibThrowableRenderer. We would still have to define a number to limit the stack traces of causes (I randomly chose 3, just to get the code running). The test case is also not good in my opinion, but I ran out of ideas (waiting for suggestions on that).

* pr/762:
  Changed the test case to test each of the log traces in the array list.
  Proposal for an improved CglibThrowableRenderer

Signed-off-by: Rajani Karuturi <rajani.karuturi@citrix.com>
2015-09-01 14:31:32 +05:30
Rajani Karuturi 26fea34d16 CLOUDSTACK-8647: string formatting 2015-09-01 14:29:40 +05:30
Rajani Karuturi ca8b37535a CLOUDSTACK-8647: updated with review comments
made domainId compulsory in api LinkDomainToLdapCmd
used accountServive from BaseCmd in LinkDomainToLdapCmd
changed the allowed account type values to 0 and 2
2015-09-01 10:44:30 +05:30
Mike Tutkowski c5a0d5e01c Support live migration on older version of Libvirt 2015-08-31 22:06:51 -06:00
weingartner b49d681598 Changed the test case to test each of the log traces in the array list. 2015-08-31 07:51:01 -03:00
wilderrodrigues f5e5f4d002 CLOUDSTACK-8688 - default policies for INPUT and FORWARD should be set to DROP instead of ACCEPT
- In order to be able to access the routers via the link local interface, we have to add a rules with NEW and ESTABLISHED state
2015-08-31 12:43:04 +02:00
Rajani Karuturi 1bbd23e664 Merge pull request #763 from karuturi/pr/692-rebase
CLOUDSTACK-8725 RVR functionality is broken in case of isolated networksconntrackd fails to start.

Rebased with master. This closes #692

* pr/763:
  CLOUDSTACK-8725 RVR functionality is broken in case of isolated networks, conntrackd fails to start.

Signed-off-by: Rajani Karuturi <rajani.karuturi@citrix.com>
2015-08-31 15:13:31 +05:30
Rohit Yadav 215a43dfaf Merge pull request #751 from shapeblue/master-CLOUDSTACK-8766
CLOUDSTACK-8766: Fix infinite scrolling pagination for zonal iso/template listing

Due to aggregation of templates and isos on the UI/client side, it could result
that for each page we could end up having lesser templates/isos listed to have
the scroll shown that triggers infinite scrolling. The fix is to use similar
approach as in projects.js, to use the maximum pagesize of 500. In theory, there
is still a chance if there are 500 zones with the same template being listed
resulting in only one aggregated template which could cause the scroll to not
get shown; but in practice I believe this fix should work for most users.

(cherry picked from commit 8a1cc7aac6f3d9a0a1686e2dae8dd12b74ed9cdd)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

* pr/751:
  CLOUDSTACK-8766: Fix infinite scrolling pagination for zonal iso/template listing

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-08-31 14:28:11 +05:30
Koushik Das 53cba7c741 Merge pull request #741 from koushik-das/simulator_fixes
Made following fixes in simulator
- Support for ScaleVmCommand/NetworkRulesVmSecondaryIpCommand in resource layer
- Added support for scaling up a running VM in simulator
- Fixed some method names not following convention

In order to test PR #725 using simulator some of these changes are needed.

Based on the way HV check is present in the scale VM API, had to explicitly put simulator related check to allow support. The ideal way would be to remove all these HV specific check from code and made them some configuration (by putting them in hypervisor_capabilities table in DB). But that will be a bigger effort outside the scope of this PR.

Signed-off-by: Koushik Das <koushik@apache.org>
2015-08-31 12:15:54 +05:30
Bharat Kumar 18dbc0c4cb CLOUDSTACK-8725 RVR functionality is broken in case of isolated networks, conntrackd fails to start.
Rebased with master. This closes #692
2015-08-31 11:54:11 +05:30
Rajani Karuturi 8bc0294014 Revert "Merge pull request #714 from rafaelweingartner/master-lrg-cs-hackday-003"
This reverts commit cd7218e241, reversing
changes made to f5a7395cc2.

Reason for Revert:

noredist build failed with the below error:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (default-compile) on project cloud-plugin-hypervisor-vmware: Compilation failure
[ERROR] /home/jenkins/acs/workspace/build-master-noredist/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java:[484,12] error: non-static variable logger cannot be referenced from a static context
[ERROR] -> [Help 1]

even the normal build is broken as reported by @koushik-das on dev list
http://markmail.org/message/nngimssuzkj5gpbz
2015-08-31 11:27:57 +05:30
weingartner 89bac529cc Proposal for an improved CglibThrowableRenderer
Apache license
Shame on me...

Fix test to pass on travis build
2015-08-29 21:49:56 -03:00
Daan Hoogland cd7218e241 Merge pull request #714 from rafaelweingartner/master-lrg-cs-hackday-003
Changed variable s_logger to non-static and fixed its name in com.cloud.utils.component.ComponentLifecycleBase and its subclassesHi guys,
We have noticed that every single class that is a subclass of ComponentLifecycleBase instantiate their on logger manually and uses a nonstandard name. We fixed that by changing the variable in ComponentLifecycleBase to protected and non-static and instantiated it using the method getClass from Object class. Therefore, we can reduce the code in a few hundred lines and use a more intuitive name for the logger variable.

During that process we found a static method that used the s_logger variable in classes:
com.cloud.network.element.VirtualRouterElement
org.apache.cloudstack.network.element.InternalLoadBalancerElement

To fix that we had to create a new class com.cloud.network.element.HAProxyLBRule, instantiate it with @Componente and inject into the aforementioned classes.

The class that we create is com.cloud.network.element.HAProxyLBRule and has the following methods:
com.cloud.network.element.HAProxyLBRule.containsOnlyNumbers(String, String)
com.cloud.network.element.HAProxyLBRule.validateHAProxyLBRule(LoadBalancingRule)

Sadly we could not write test cases to it; hence we did not fully understand those methods. However, if anyone out there understands it, we would appreciate some code to be added to it.

As minor this change may seem; we believe that it enhances a little bit the ACS code by using standard name to logger variable.

* pr/714:
  Solved jira ticket: CLOUDSTACK-8750

Signed-off-by: Daan Hoogland <daan@onecht.net>
2015-08-29 22:04:04 +02:00
Rafael Weingartner 3818257a68 Solved jira ticket: CLOUDSTACK-8750 2015-08-28 22:35:08 -03:00
Rajani Karuturi f5a7395cc2 Merge pull request #752 from ustcweizhou/BasicRestClientTest-fakelocalhost
use fakelocalhost in BasicRestClientTestBasicRestClientTest will fail if the port 443 is open on localhost.
use fakelocalhost instead of localhost can fix it.
Please see the latest discussion in https://github.com/apache/cloudstack/pull/737

* pr/752:
  use fakelocalhost in BasicRestClientTest

Signed-off-by: Rajani Karuturi <rajani.karuturi@citrix.com>
2015-08-28 22:12:42 +05:30
Koushik Das 724bb821a0 Merge pull request #629 from kansal/Coverity-18963
Coverity Issue: Null pointer dereferencing fixed

Signed-off-by: Koushik Das <koushik@apache.org>
2015-08-28 20:06:28 +05:30
Koushik Das cbf2c3bbf6 CLOUDSTACK-8785: Proper enforcement of retry count (max.retries) for all work type handled by HighAvailability manager
Retry count is properly enforced for all work types in HA manager. Also reorganized some of the code for easy testing.
2015-08-28 17:59:17 +05:30
Rajani Karuturi ffd0b3bd0e Merge pull request #759 from ustcweizhou/CLOUDSTACK-8783
CLOUDSTACK-8783: specify ciphersuite SSL_DH_anon_WITH_3DES_EDE_CBC_SHA in MockServerTest.javaThe ciphersuite could be different on os.
Sometimes the MockServerTest fails due to the ciphersuite does not work (for instance misconfiguration).
SSL_DH_anon_WITH_3DES_EDE_CBC_SHA has 168-bit encryption and anonymous auth, which is suitable for SSL testing.

* pr/759:
  CLOUDSTACK-8783: specify ciphersuite SSL_DH_anon_WITH_3DES_EDE_CBC_SHA in MockServerTest.java

Signed-off-by: Rajani Karuturi <rajani.karuturi@citrix.com>
2015-08-28 17:55:56 +05:30
Rajani Karuturi cab57b248c Merge pull request #758 from miguelaferreira/put-back-CglibThrowableRenderer
Putting CglibThrowableRenderer.java back after it was removed in 83fd8f6Also removing the entry 'log/' from .gitignore since that was the culprit for the removal of the file.

This was detected in #714

* pr/758:
  Putting CglibThrowableRenderer.java back after it was removed in 83fd8f6

Signed-off-by: Rajani Karuturi <rajani.karuturi@citrix.com>
2015-08-28 17:26:58 +05:30
Rohit Yadav 52a98fa6cf CLOUDSTACK-8762: Check to confirm disk activity before starting a VM
Implements a VM volume/disk file activity checker that checks if QCOW2 file
has been changed before starting the VM. This is useful as a pessimistic
approach to save VMs that were running on faulty hosts that CloudStack could
try to launch on other hosts while the host was not cleanly fenced. This is
optional and available only if you enable the settings in agent.properties
file, on per-host basis.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-08-28 16:05:30 +05:30
Kshitij Kansal fe7df96804 Coverity Issue: NUll Pointer dereferncing fixed and commits squashed. 2015-08-28 16:05:01 +05:30
Wei Zhou 0f70833dd8 CLOUDSTACK-8783: specify ciphersuite SSL_DH_anon_WITH_3DES_EDE_CBC_SHA in MockServerTest.java 2015-08-28 12:25:00 +02:00
Miguel Ferreira 4c1a5f7657 Putting CglibThrowableRenderer.java back after it was removed in 83fd8f6
Also removing the entry 'log/' from .gitignore since that was the
culprit for the removal of the file.
2015-08-28 11:18:44 +02:00
Wido den Hollander a7418751c1 Merge pull request #757 from ustcweizhou/MariaDB-crash
Fix schema-421to430.sql issue after MariaDB upgrade@remibergsma @wido Can you test it?

* pr/757:
  Fix schema-421to430.sql issue after MariaDB upgrade

Signed-off-by: Wido den Hollander <wido@widodh.nl>
2015-08-28 09:56:17 +02:00
Rohit Yadav a6e8cfde3f CLOUDSTACK-8766: Fix infinite scrolling pagination for zonal iso/template listing
Due to aggregation of templates and isos on the UI/client side, it could result
that for each page we could end up having lesser templates/isos listed to have
the scroll shown that triggers infinite scrolling. In theory, there
is still a chance if there are several zones with the same template being listed
resulting in only one aggregated template which could cause the scroll to not
get shown; but in practice I believe this fix should work for most users.

Page size set based on experimental data:
https://github.com/apache/cloudstack/pull/751#issuecomment-135661968

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-08-28 13:07:47 +05:30
Wei Zhou 312cb877b1 CLOUDSTACK-5863: change response from SuccessResponse to SnapshotResponse 2015-08-28 08:54:11 +02:00
Wei Zhou 99786516d7 Fix schema-421to430.sql issue after MariaDB upgrade 2015-08-27 16:21:22 +02:00
Remi Bergsma da9cc334aa Merge pull request #746 from pdion891/fix-PR737
fix debian package after addition of license header in pom.xmlPR#737 add lines  in pom.xml which break debian build.
This fix debian package build issue.

* pr/746:
  fix debian package after addition of license header in pom.xml

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-08-27 14:12:30 +02:00
Rajani Karuturi 1c836a8999 CLOUDSTACK-8647: unittests for LdapAuthenticatorSpec 2015-08-27 17:34:02 +05:30
Rajani Karuturi c2b36cb705 CLOUDSTACK-8647: formatted LdapAuthenticatorSpec 2015-08-27 17:34:02 +05:30
Rajani Karuturi 36340d97bd CLOUDSTACK-8647: UI for trust AD feature 2015-08-27 17:34:02 +05:30
Rajani Karuturi 6572abc7b3 CLOUDSTACK-8647 added unittests for new methods in ldapmanager 2015-08-27 17:30:23 +05:30
Rajani Karuturi dd6d6d18a5 CLOUDSTACK-8647 unittests for LinkDomainToLdap api command 2015-08-27 17:30:23 +05:30
Rajani Karuturi 6cb5d3a3bc CLOUDSTACK-8647: fixed unittests 2015-08-27 17:30:22 +05:30