Commit Graph

4851 Commits

Author SHA1 Message Date
Sheng Yang 1ca493e4fa bug 14042: Don't set dhcp:router option on DHCP server for non-default network on CentOS/RHEL
The routing table with two nics may be messed up, due to we sent same
router(gateway) information from different DHCP server, in order to specify
default gateway. E.g.

Network A: 192.168.1.0/24, gw 192.168.1.1
Network B: 192.168.2.0/24, gw 192.168.2.1

User VM: Nic 1 connect to network A, get ip 192.168.1.10; nic 2 connect to
network B, get ip 192.168.2.10.

Set network A as the default network of user VM.

Currently we would send this information to user VM through DHCP offer:
In network A: dhcp-option:router 192.168.1.1
In network B: dhcp-option:router 192.168.1.1

So both NIC in the guest VM would receive 192.168.1.1 as router(gateway).

But, in CentOS 5.6, dhclient-scripts try to tell if the gateway is reachable
for current subnet.

So when we try to enable nic 2(eth1) of user VM, dhclient would receive:
IP: 192.168.2.10
Mask: 255.255.255.0
Router: 192.168.1.1

Then it would found that the specified gateway(router) is not within its own
subnet(192.168.2.0/24). But since we send out this ip(192.168.1.1) as the
gateway for it, dhclient thought that it should got someway to access the
network through this IP. So it would execute:

ip route add 192.168.1.1 dev eth1
ip route replace default via 192.168.1.1 dev eth1

But it can never reach 192.168.1.1(which is in the eth0's subnet and the
gateway of eth0) by go through eth1 interface. So it is messed up.

We've tested Windows 2008 R2, CentOS 5.3, CentOS 5.6 and Ubuntu 10.04. Windows
and Ubuntu are fine with above policy.

To solve this, we send different dhcp:router option according to the guest OS
type now.

We may need expand this list later, but for now we only know that CentOS and
RHEL would behavior in this way.

status 14042: resolved fixed
2012-03-21 10:38:18 -07:00
Sheng Yang 319dbccabf Fix not sending DNS in DHCP command 2012-03-21 10:38:12 -07:00
Murali reddy 99e1ca123f bug 13899: CloudStack (Advanced Mode) should not allow "NetScaler" as provider for StaticNAT service
status 13899: resolved fixed
2012-03-21 16:54:44 +05:30
Abhi d3673506cf bug 14216: rightly initializing to avoid NPE 2012-03-21 15:33:05 +05:30
Abhi d354897780 bug 12947: enabling XCP 1.5 2012-03-21 10:23:04 +05:30
prachi e43914ab58 Bug 14336 - Login API does not return UUID's
Changes done:
- Provide UUID for userid and domainid only while constructing the login response. Session will hold the DB id's as before, to ensure other parts keep working.
- This reverts commit de28aa3ddde5b601f2f234f2eccef871fbaf1a06.
2012-03-20 16:59:04 -07:00
prachi a5d7cd3d51 Bug 14336 - Login API does not return UUID's
Changes:
- login API now returns back UUID for user and domain
2012-03-20 16:59:02 -07:00
prachi 280d533a6f Bug 14047 - login API fails when UUID is used for domain_id
Changes:
- API should accept UUID for domain and convert to id when needed
2012-03-20 16:59:00 -07:00
Vijayendra Bhamidipati 24e57e283e Bug 14071: queryAsyncJobResult in xml format gives incorrect UUIDs back
Description:

	Incorrectly removed part of the XML serializer that serialized
	the IdentityProxy object in normal responses, when putting in
	support for serialization of lists of IdentityProxy objects in
	exception responses as part of the code changes put in for bug
	13217, resulting in this bug. Putting it back in place.
2012-03-20 16:22:43 -07:00
Alena Prokharchyk 29c61e6341 bug 14369: remove host entry when destroy CPVM/SSVM instances
status 14369: resolved fixed
2012-03-20 14:10:18 -07:00
Alena Prokharchyk 5599713268 bug 14401: return juniper srx as a firewall provider along with the Virtual router
status 14401: resolved fixed
2012-03-20 11:51:48 -07:00
Alena Prokharchyk 59a05660ab bug 14420: listNetworkOfferings by networkId - respect specifyVlan flag of the original offering
status 14420: resolved fixed
2012-03-20 11:31:13 -07:00
Alena Prokharchyk 81d7f9bdbf bug 14407: update network count for account/domain as a part of 3.0 to 3.0.1 upgrade
status 14407: resolved fixed
2012-03-20 10:40:32 -07:00
Alena Prokharchyk e53cfeceb6 bug 14379: don't enable 8096 port by default (set global config variable to null by default, and don't create a listener on this port unless its set to valid integer) 2012-03-19 16:19:38 -07:00
frank 4303e30ae0 add missing cleanup.sql 2012-03-19 15:27:43 -07:00
Alena Prokharchyk fec3a87d09 bug 14388: don't return console proxy / ssvm service offerings
status 14388: resolved fixed
2012-03-19 14:50:09 -07:00
frank 3773b52b2f add cleanup.sql to DB upgrade test 2012-03-19 14:36:57 -07:00
Alena Prokharchyk c01ed2f754 Added upgrade path from 3.0.x to 3.0.1 2012-03-19 13:38:38 -07:00
frank 26c77e62ce move fake.sql to proper folder 2012-03-19 13:10:41 -07:00
frank ea007f833f use fake.sql for db upgrade test 2012-03-19 13:06:43 -07:00
Salvatore Orlando 0c4191bb75 Bug 14370 - addSecondaryStorage always fails: "Can't find pod with specificied podId null"
status 14370: resolved fixed
2012-03-19 17:14:03 +00:00
frank a6a54a2f87 Bug 14189 - multiple physical nw - SSVM fail to download guest templates from storage server which is in isolated network only accessible by host's bridge
if storage network is present, don't set route through private ip when adding internal download site

status 14189: resovled fixed
2012-03-16 14:49:30 -07:00
Vijayendra Bhamidipati 005ba5e2b5 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Adding overloaded addProxyObject() function to CloudException
	and RuntimeCloudException classes and using this function
	to stuff exceptions with IDs, to reduce code footprint.
2012-03-15 16:27:52 -07:00
frank 7f8cf5a9ff fix copying template
Conflicts:

	console-proxy/scripts/ipfirewall.sh
2012-03-15 14:43:03 -07:00
Alena Prokharchyk e73a23e8c0 bug 14271: return only domainId in error message when caller is not authorized to operate within the domain
status 14271: resolved fixed
2012-03-14 13:31:43 -07:00
Alena Prokharchyk 1b4954d63a bug 14295: allow regular user to create network with the custom cidr
status 14295: resolved fixed

Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-03-14 10:50:15 -07:00
Likitha Shetty 59262d67a3 Bug 13842 Check for snapshots in BackedUp state during the deletion of secondary storage
behalf of: pranav
reviewed by: kishan
2012-03-14 17:59:38 +05:30
Vijayendra Bhamidipati b1bb0afad4 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Modifying the API functions' exception handling to call
	addProxyObject() wherever applicable, and removing some
	wrong calls to addProxyObject() that were put in in an
	earlier commit for this bug.

	With this commit, we cover many API functions to use the
	new exception handling code, but some pieces may still be
	left out. These will be covered as work in progress, when
	making changes to the CS API code.
2012-03-12 18:05:45 -07:00
Sheng Yang ec5a225a78 Refactor VirtualRouterNetworkManagerImpl
Refactor applyDhcpEntry and applyUserData to use applyRules framework.
2012-03-12 16:10:48 -07:00
Alena Prokharchyk ad1192e264 bug 14239: limit number of Isolated account specific networks per account
status 14239: resolved fixed

Conflicts:

	api/src/com/cloud/api/commands/CreateNetworkCmd.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-03-12 15:53:30 -07:00
Sheng Yang 21fe5e1087 bug 14074: Specify networkId for list public ip
status 14074: resolved fixed
2012-03-12 12:00:31 -07:00
Alena Prokharchyk 251af27a7a bug 14247: implemented search by storage id in listSystemVms
status 14247: resolved fixed
2012-03-12 10:24:48 -07:00
abhi ecad50c801 bug 14151,14153: configuration variables are now hidden; added ldapRemove command 2012-03-12 16:50:00 +05:30
abhi 64eb2dfcb1 bug 14224: allowing Xenserver 6.0.2, with the assumption that the same patches and guest os type will work as with 6.0 2012-03-12 16:39:22 +05:30
abhi 87a32a4866 bug 14224: adding 6.0.2 2012-03-12 16:39:22 +05:30
Sheng Yang 476c671374 Refactor VirtualNetworkApplianceManagerImpl
Add separate create command for dhcp, userdata and password.
2012-03-09 19:02:47 -08:00
Sheng Yang d62d3b5a01 Refactor rules appling in the VirtualNetworkApplianceManagerImpl 2012-03-09 18:00:06 -08:00
Alena Prokharchyk 6910740582 Revert "bug 14151,14153: configuration variables are now hidden; added ldapRemove command"
Reverting the commit in order to fix the build
This reverts commit 0ab0fcfa5c3b8825b8a92e3c2d2dee8e8ca6152b.
2012-03-09 09:53:56 -08:00
abhi b7b751fdf6 bug 14151,14153: configuration variables are now hidden; added ldapRemove command 2012-03-09 16:56:01 +05:30
Vijayendra Bhamidipati df51744979 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Removed some wrong invocations to addProxyObject() when
	throwing exceptions in NetworkManagerImpl.java.

	Replaced db ids with uuids in various points in the code
	of NetworkManagerImpl.java, where exceptions are thrown.
2012-03-09 01:13:36 -08:00
Vijayendra Bhamidipati a70f8a9b3d Bug 13127: API error text refer to database ids instead of uuids
Description:

	Replacing placement of db ids in exception messages to uuids
	in the file ManagementServerImpl.java.

	Since there are a large number of files that throw exceptions
	with db ids in them and they need to be changed, we will make
	the changes in multiple commits.
2012-03-08 23:25:50 -08:00
Vijayendra Bhamidipati 6ac79c4be2 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Adding a new class AnnotationHelper, that provides routines
	to read annotations from a VO class.

	Cloudstack does the mapping between cloudstack java VO objects
	and the database tables using cglib. cglib creates proxy objects
	as the maps between VO objects and the database.  A VO (value
	object) class is populated after querying from the MYSQL database.

	Ideally, a getAnnotation() issued on a cglib proxy object should
	get a list of all the annotations in all classes in the inheritence
	chain. However, this functionality seems to be currently broken
	in cglib.  Hence, when querying for annotations given the object
	of a VO class, we need to get to the corresponding VO class of that
	cglib proxy class and issue a getAnnotation() on that class. To get
	the VO class, we simply need to get the super class of the proxy
	object. Also, we need to recurse to the root VO class in case the
	VO class extends another VO class.

	Note that the cache used by CS is ehcache.
2012-03-08 17:34:28 -08:00
Sheng Yang e152e64ac0 Fix several wrong ResourceUnavailableException scopes 2012-03-08 11:55:31 -08:00
Alena Prokharchyk 4f741c833c bug 14170: issues #1-#3 are fixed 2012-03-07 13:37:16 -08:00
Alena Prokharchyk 65e160b7e6 bug 14173: add eip/elb network offering (if missing) during the management server start
status 14173: resolved fixed
2012-03-07 10:02:24 -08:00
Alena Prokharchyk f3935d667f bug 14156: return instancename parameter in userVm response to ROOT admin only 2012-03-06 13:39:13 -08:00
prachi 5148145d18 Bug 14028 - Add hostid parameter to StartVmCmd to enable admins to start VM on a particular host
Changes:
- Added hostid to StartVMCmd. Only root admin can use it.
2012-03-05 17:50:23 -08:00
Vijayendra Bhamidipati 57c54e23d6 Bug 14060: Include a CloudStack error code in an Exception Response
Bug 13127: API error text refer to database ids instead of uuids

Code-Reviewers: Ewan Mellor, Kelven Yang

Description:

	1. A new class CSExceptionErrorCode has been added to utils.
	   It contains a list of error codes for each type of
	   Exception class. Use fully qualified package paths for
	   Exceptions in CSExceptionErrorCode.  We log any exception
	   name not found in the list of error codes for exceptions.

	2. Whenever we throw an exception exobj anywhere in the
	   CS code, the CSErrorCode is set in the base class
	   constructor.

	3. We add a new field csErrorCode in classes CloudException,
	   RuntimeCloudException, ExecutionException and
	   ExceptionResponse.

	4. Two places in ApiServer.java were wrongly modified when
	   putting in changes for bug 13127 to not throw an exception.
	   This has been corrected in this commit.
2012-03-05 17:39:09 -08:00
prachi 996110c928 Bug 14000 - Neither Admin or regular user can create a VM when the Pod is disabled
Bug 14006 - Admin could not create a VM when the cluster is Disabled

Changes:
- For Root admin, planner will not filter out the disabled pods or clusters from the resource list
2012-03-05 17:04:22 -08:00
prachi d2ecd8c89a Bug 13999 - Non-admin user should not be able to take snapshots
Changes:

If Zone is disabled, deny permission to regular user while creating snapshots
2012-03-05 17:04:13 -08:00