60 Commits

Author SHA1 Message Date
Nitin Mehta
e107776d75 build master 2013-05-12 13:14:33 +05:30
Nitin Mehta
c11dbad9c9 merge master 2013-05-11 15:28:43 +05:30
Nitin Mehta
c338cb7dd0 =updatenetwork changes 2013-04-28 18:13:22 +05:30
Nitin Mehta
242f5f9cf7 =More changes and marvin test 2013-04-27 11:08:02 +05:30
Bharat Kumar
8b40e393b8 Cloudstack-701 Support for non contiguous vlan ranges.
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-04-17 10:14:42 +05:30
Murali Reddy
bc3e184b72 CLOUDSTACK-312: enable L4-L7 network services in the shared network in
the advanced zone

Squashed commit of the following:

commit 3021cb917b2446f6a04f6cbb01bc56ebc5484bff
Merge: 77c6991 886fe01
Author: Murali Reddy <murali.reddy@citrix.com>
Date:   Sun Apr 14 17:22:05 2013 +0530

    Merge branch 'master' into sharednetworkservices

commit 77c69918be5f15656a95fc325da9f0c99a08e782
Author: Murali Reddy <murali.reddy@citrix.com>
Date:   Tue Apr 9 17:16:57 2013 +0530

    Trying to fit both isolated and shared network life cycle with single state
    machine may need addtional work. So set network state for shared network explicitly now.

commit 365ed73a0c10a5e445be34b6e6c5d99e1224a537
Author: Murali Reddy <murali.reddy@citrix.com>
Date:   Tue Apr 2 17:14:11 2013 +0530

    - associateIpAddress API to associate a public IP with shared network
    - shared network with services to go through the implement and shutwdon
      phases
2013-04-14 17:50:15 +05:30
Alena Prokharchyk
42ffac3ae8 CLOUDSTACK-1895: save placeholder nic with not null vmType='DomainRouter' when placeholder is used for the VR ip address 2013-04-04 13:29:17 -07:00
Alena Prokharchyk
26b892daf3 CLOUDSTACK-1771: fixed VirtualRouter nics assignment in the Shared networks. Before the fix VR could get a different IP address from the network upon recreation. With the fix the IP address assigned to the first VR in the network, will remain with the network till its entire lifecycle (stored in placeholder nic) and will be assigned to the VR every time it recreates in the network.
Shared networks in both - Advance and Basic - zone types are covered by this checkin
2013-03-26 13:29:57 -07:00
Jayapal Uradi
a49261c3b1 CLOUDSTACK-24: mipn feature for basiczone
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-03-13 10:24:22 +05:30
Jayapal Uradi
aedb8c478e CLOUDSTACK-24: mipn feature for isolated and vpc networks
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Multiple+IP+address+per+NIC
 https://issues.apache.org/jira/browse/CLOUDSTACK-24
2013-03-04 11:02:09 +05:30
Abhinandan Prateek
14791a9d8f Revert "CLOUDSTACK-24: multiple ip address per vm nic changes for isolated and vpc networks changes."
This reverts commit f9d96c9169a50917143914ffb53e227c8673c50f.
2013-03-01 22:29:47 +05:30
Jayapal Uradi
f9d96c9169 CLOUDSTACK-24: multiple ip address per vm nic changes for isolated and vpc networks changes. 2013-03-01 16:40:26 +05:30
Saksham Srivastava
ea3db2f073 CLOUDSTACK-705 IP Address reservation for Isolated Guest Networks
CloudStack uses Guest CIDR for dhcp-range for the Guest VMs. The entire
CIDR is used by CloudStack for assigning IPs to Guest VMs. IP Address
Reservation will allow part of address space to be used fornon CloudStack
hosts/physical servers also, by restricting the address space of CloudStack
Guest VMs. Reservation can be configured using update Network API by specifying
guestvmCidr as an additional parameter. Reservation will be applicable for
Isolated Guest Networks including VPC. reservediprange in the response
will return the IP range that can be used for non Cloudstack hosts.

Tested manually the following scenarios:
Applying reservation when there are running VMs inside the
guest_vm_cidr.
Applying reservation when there are running VMs outside the
guest_vm_cidr.(not allowed)
Applying reservation when external device like Netscaler is configured
in the guest_cidr.
Applying reservation in VPC tiers.
Applying reservation outside the range of guest_cidr.(not allowed)
2013-02-22 15:50:33 +05:30
Kelven Yang
296c20332d Merge javelin into master 2013-02-01 14:40:45 -08:00
Likitha Shetty
13ee8d1865 Persistent Networks support
Signed-off-by: Murali Reddy <murali.reddy@citrix.com>
2013-02-01 15:10:06 +05:30
Kelven Yang
7bd8bec68a Sync javelin with master up to 894cb8f7d9fc8b5561754a9fa541fef8f235148a 2013-01-31 17:20:19 -08:00
Sheng Yang
5cb9df91a1 Merge branch 'ipv6'
Conflicts:
	api/src/com/cloud/network/NetworkProfile.java
2013-01-31 15:07:33 -08:00
Kelven Yang
1b2b369ecb Merge latest master into javelin 2013-01-31 11:34:49 -08:00
Harikrishna Patnala
b21595c10d CLOUDSTACK-297: Reset SSH key to access VM
This feature provides resetting a SSH key for an existing VM which means,
setting the old ssh key that is assigned to the VM previously with the new ssh
key.

Signed-off-by: Harikrishna Patnala <harikrishna.patnala@citrix.com>
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-30 17:33:44 -08:00
Sheng Yang
ed547d91f7 IPv6: Rename public_ipv6_address to user_ipv6_address 2013-01-30 17:05:47 -08:00
Marcus Sorensen
15906c03ca Summary: add/remove/update default nics feature
Description: Adds API calls updateDefaultNicForVirtualMachine,
addNicToVirtualMachine, and removeNicFromVirtualMachine. These are
intended to allow a user to modify a VM's configuration post
deployment, to adjust the networks to which the VM belongs.

BUG-ID: CLOUDSTACK-645
Submitted-by: Brian Angus <blangus@betterservers.com>
Submitted-by: Ryan Dietrich <ryan@betterservers.com>
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1359494800 -0700
2013-01-30 17:43:21 -07:00
Kelven Yang
176523254e Improve component lifecycle management with system run-level concept 2013-01-30 15:21:02 -08:00
Sheng Yang
cb9f2d018d IPv6: move assignPublicIp6Address() from NetworkManager to new Ipv6AddressManager
Don't want to involve IP address management code in NetworkManager.
2013-01-29 19:08:03 -08:00
Sheng Yang
bd4bc025d1 IPv6: Accept IPv6 parameter for createNetworkCmd
Also ass public_ipv6_address for ipv6 address management.

Extend nics and vlans for ipv6 address.

Add dependency to com.googlecode.ipv6(java-ipv6).

Modify dhcpcommand for ipv6.
2013-01-26 23:14:15 -08:00
Edison Su
4fbecf15ec add unit test back, primary storage life cycle is tested 2013-01-21 17:01:00 -08:00
Alex Huang
fe6f0457d5 fixed unit tests from merge 2013-01-18 15:58:55 -08:00
Alex Huang
10d9c019a9 All merge conflicts resolved 2013-01-18 12:14:57 -08:00
Chiradeep Vittal
d9e36ac37b network-refactor: fix license issues
Fix build after merge of network-refactor
2013-01-16 19:25:23 -08:00
Chiradeep Vittal
cadca5fc0c Merge branch 'master' into network-refactor-merge2
Conflicts:
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/network/element/RemoteAccessVPNServiceProvider.java
	plugins/network-elements/nicira-nvp/src/com/cloud/network/element/NiciraNvpElement.java
	server/src/com/cloud/acl/DomainChecker.java
	server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
2013-01-16 19:17:14 -08:00
Murali Reddy
4b67340d8c Revert "Summary: partical check-in for L4-L7 network services in the
shared"

This reverts commits 0de5a145e4f06420a4eb1867309af674c16ace7c,
28bbf6c52798c9bd298952844250fbc3cb92dce0

Reverting due to IP clearance issues for the commits done as part of CLOUDSTACK-312
2013-01-16 16:43:37 +05:30
Rohit Yadav
38eaa04b98 Pull changes from master into javelin
- Disables simulator plugin, breaks build, available via simulator profile
- Fixes spring injections
- Fix api,acl plugins, ApiServer, ApiDispatcher
- Fix other merge conflicts

Conflicts:
	docs/en-US/external-firewalls-and-load-balancers.xml
	plugins/acl/static-role-based/src/org/apache/cloudstack/acl/StaticRoleBasedAPIAccessChecker.java
	server/src/com/cloud/api/ApiDispatcher.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	utils/test/com/cloud/utils/log/CglibThrowableRendererTest.java

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-12 06:02:54 -08:00
Rohit Yadav
8cdb40a416 NetworkManagerImpl: Add method to getNetwork by uuid
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-11 18:44:19 -08:00
Kelven Yang
6fb1a1e6f1 Fix issues after another round of merge 2013-01-11 16:54:32 -08:00
Chiradeep Vittal
1776659fe7 Network-refactor: move validateRule to LB manager since it now has access to LB elements.
NetworkServiceImpl does not need a cache of system network offerings
Ensure mocks build to new APIs.

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 18:36:29 -08:00
Chiradeep Vittal
504264236c Network-refactor: In preparation for moving the read-only interface NetworkModel
to the api project, ensure that all methods use interfaces from the api project.
By moving it to the api project, it lessens the dependency of plugins on the server components.

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Chiradeep Vittal
5a830c4db0 Network-refactor: Refactor NetworkManager into NetworkModel and NetworkManager.
NetworkManager's exclusive focus is now
 - handling plugins during orchestration, and
 - to deal with ip address allocation.
Those classes that used to refer to NetworkManager to get access to the datamodel now refer to NetworkModel

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Alex Huang
30f2565d98 Merge branch 'api_refactoring' into javelin 2013-01-08 12:36:04 -08:00
Chiradeep Vittal
e262eef296 Fix mocks 2013-01-07 15:21:49 -08:00
Rohit Yadav
ed0637b8c2 api: Refactor move acl to org.apache.cloudstack
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-06 15:30:58 -08:00
Rohit Yadav
5119785cf7 Get latest changes, merge branch 'master' into api_refactoring
Conflicts:
	api/src/com/cloud/network/element/RemoteAccessVPNServiceProvider.java
	server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java
	server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java
	setup/db/db/schema-40to410.sql

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-04 22:21:20 -08:00
Sheng Yang
42c8c73ab6 CLOUDSTACK-306: Introducing IpDeployingRequester and implement inline mode
For LB device in inline mode, the ip deployer(the owner of public ip) is the
firewall in front of it, not itself. So check if it's inline or not, if it's
inline, return the firewall as ip deployer
2013-01-04 19:18:03 -08:00
Sheng Yang
177e157cbf CLOUDSTACK-306: Move inline mode parameter from device to network offering
One F5 device can be used as inline and side-by-side at the same time(for
different networks). So we can define inline or not on network base.
2013-01-04 19:17:58 -08:00
Kelven Yang
25d14418b9 Replace Adapters<T> with standard List<T> to work with Spring injection 2013-01-03 13:33:52 -08:00
Rohit Yadav
296b49c2f8 Merge branch 'master' into test-merge-api
Conflicts:
	api/src/com/cloud/agent/api/BackupSnapshotCommand.java
	api/src/com/cloud/agent/api/storage/PrimaryStorageDownloadCommand.java
	api/src/com/cloud/agent/api/to/PortForwardingRuleTO.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/resource/ResourceService.java
	api/src/org/apache/cloudstack/api/ApiConstants.java
	api/src/org/apache/cloudstack/api/ResponseGenerator.java
	api/src/org/apache/cloudstack/api/response/SSHKeyPairResponse.java
	client/tomcatconf/commands.properties.in
	core/src/com/cloud/storage/SnapshotVO.java
	pom.xml
	server/src/com/cloud/api/ApiDispatcher.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/offerings/NetworkOfferingVO.java
	server/src/com/cloud/resource/ResourceManagerImpl.java
	server/src/com/cloud/upgrade/dao/Upgrade40to41.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
	setup/db/create-schema.sql
	setup/db/db/schema-40to410.sql

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-23 13:54:46 -08:00
Rohit Yadav
af28c06998 api: move and group all under command, org.apache.cloudstack.command.*
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 18:30:54 -08:00
Murali Reddy
28bbf6c527 Summary: partical check-in for L4-L7 network services in the shared network in the advanced zone
Details:

- changed associateIPAddr API to accept shared network Id and account Id. Ip will be owned by tuple (account Id, network Id)
- chaged createNetwork API to accpet CIDR when network offering has external networking device providers

Bug ID:CLOUDSTACK-312 enable L4-L7 network services in the shared
network in the advanced zone
2012-12-06 11:55:19 +05:30
Rohit Yadav
e07106db0b api_refactor: usage apis to admin.usage pkg
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-05 14:31:31 -08:00
Rohit Yadav
47ae62e44a api_refactor: refactor network apis
- Fix refactored apis in commands*.in
- Fix comments etc.
- Expand tabs, remove trailing whitespace
- Fix trailing whitespaces for all *.java

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 22:47:07 -08:00
Rohit Yadav
5edfc2760a refactor: remove redundant imports, fix trailing chars 2012-12-03 13:54:37 -08:00
Rohit Yadav
4c86b1545d CLOUDSTACK-424: Update userdata should propagate to VR
The code that would propage userdata to router, when updateVirtualMachine api
is called, was missing. As per the docs [0], userdata should be a base64 encoded
string upto 2KB which is put on domr's html directory adn using HTTP GET the
userdata information can be obtained from the domr.

The updateVirtualMachine api [0] would accept a base64 encoded string
and decoded and put into the domr's /var/www/html/userdata/<uservm ip>/user-data
file. The operation does not require the VM to be in stopped state, though it is
advised to stop and call this api in case the user vm has a script which gets
the userdata information from domr while starting.

For example, this script can be used to fetch the data:
server_ip=$(grep dhcp-server-identifier /var/lib/dhclient-eth0.leases | tail -1 | awk '{print $NF}' | tr '\;' ' ')
wget http://${server_ip}/latest/user-data

This feature can be useful, for example to use into puppet facts [1], or to do
automation and horizontal scaling etc. based on userdata.

[0] http://incubator.apache.org/cloudstack/docs/api/apidocs-4.0.0/domain_admin/updateVirtualMachine.html
[1] http://geek.jasonhancock.com/2011/11/09/cloudstack-userdata-into-puppet-facts/

BUG-ID : CLOUDSTACK-424
Reviewed-by: Rohit Yadav <bhaisaab@apache.org>
Reported-by: Nick Wales

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-15 18:43:51 +05:30