149 Commits

Author SHA1 Message Date
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
Alena Prokharchyk
214bbf3ebd CLOUDSTACK-279: fixed deleteProject when executed by the regular user. Always pass System account as a caller when do account cleanup
Conflicts:

	api/src/com/cloud/api/commands/DeleteRemoteAccessVpnCmd.java
	server/src/com/cloud/network/element/CiscoNexusVSMElement.java
	server/src/com/cloud/network/element/ElasticLoadBalancerElement.java
	server/src/com/cloud/network/element/F5ExternalLoadBalancerElement.java
	server/src/com/cloud/network/element/JuniperSRXExternalFirewallElement.java
	server/src/com/cloud/network/element/NetscalerElement.java
	server/src/com/cloud/network/element/OvsElement.java
	server/src/com/cloud/network/element/VpcJuniperSRXExternalFirewallElement.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java
	server/src/com/cloud/storage/StorageManager.java
2012-10-17 17:26:19 -07:00
Alena Prokharchyk
048c5e50cf Merge branch 'master' into vpc
Conflicts:
	utils/test/com/cloud/utils/component/MockComponentLocator.java
2012-08-08 11:50:39 -07:00
Sheng Yang
46a12b378c CS-15243: Add service combination check at create network offering 2012-08-07 13:17:48 -07:00
Alena Prokharchyk
e7a1862867 VPC: CS-15827 - register only VpcVirtualNetworkApplianceMgr
Conflicts:

	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/network/VpcVirtualNetworkApplianceService.java
	plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/ha/UserVmDomRInvestigator.java
2012-08-03 14:23:45 -07:00
Alena Prokharchyk
5a64d4fbb1 VPC: CS-15638: Plug nic for the public ip address if the ip address from the diff vlan range than sourceNat ip
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/firewall/FirewallManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-07-20 17:12:34 -07:00
Alena Prokharchyk
31f9d718fb Merge branch 'master' into vpc
Conflicts:
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
2012-07-03 17:32:50 -07:00
Alena Prokharchyk
40a3482f13 VPC: multiple fixes:
* Separate service for NetworkACL - "NetworkACL" service
* allow having just one network supporting LB in the VPC
* perform check against VPC when upgrade network to the new network offering (the same set of checks when you add new network to the VPC)
2012-07-02 17:44:54 -07:00
Sheng Yang
8d4079d477 CS-6840: Add hypervisor commands for site-to-site vpn
Conflicts:

	plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
2012-07-02 16:28:44 -07:00
Sheng Yang
0ce1e78364 CS-6840: Add Site2SiteVpnServiceProvider 2012-07-02 16:27:09 -07:00
David Nalley
e87558256c Patch from Chip Childers
https://reviews.apache.org/r/5704/
License header updates for the server folder
2012-07-02 09:51:21 -04:00
Chip Childers
8f71a2927f License header updates for the server folder. 2012-07-02 08:58:10 -04:00
Alena Prokharchyk
4e7b65ef71 VPC: CS-15354 - fixed updateNetworkServiceProvider for VpcVirtualRouter 2012-06-25 20:57:37 -07:00
Alena Prokharchyk
b3985a3b48 Added new capabilities to VPN and Firewall services defining if VPN is S2S or Remote access, and if the Firewall rules should be created per cidr or per public ip address 2012-06-15 14:33:06 -07:00
Alena Prokharchyk
982562b9fb VPC: ipAssoc consists of 3 parts: plug nic (if needed), associateIp, enableSourceNat(if ip is source nat ip)
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-06-15 14:31:58 -07:00
Alena Prokharchyk
7e119e4c94 Fixed addDhcpEntry/userdata/password in VPC setup 2012-06-15 14:27:24 -07:00
Alena Prokharchyk
aa84256542 1) Added VpcVirtualNetworkApplianceService interface
2) Pass dns1/dns2 to setupGuestNetworkCommand
3) Network implement - don't get source nat ip address for Vpc if it already has one
2012-06-15 14:27:00 -07:00
Alena Prokharchyk
72974831a0 Modified virtual router startup procedure - initial start happens with control nic only; then we plug Public and then Guest nic to it 2012-06-15 14:22:19 -07:00
Alena Prokharchyk
0a7faa9838 Support for adding private network
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/upgrade/dao/Upgrade2214to30.java
2012-06-15 14:20:34 -07:00
Alena Prokharchyk
f4060c3c1d 1) Added new element - VpcVirtualRouterElement. Extends VirtualRouter + has plug/unplug nics support
2) Added services api support for plugging/unplugging the nics to VpcElement

Conflicts:

	api/src/com/cloud/network/NetworkService.java
	core/src/com/cloud/vm/VMInstanceVO.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-06-15 14:04:09 -07:00
Alena Prokharchyk
9debd3a5df 1) Added start logic to the VPC
2) VirtualRouterManagerImpl - refactored deployVirtualRouter method
3) Added vpcId to domain_router/user_ip_address tables and corresponding vo objects

Conflicts:

	server/src/com/cloud/network/IPAddressVO.java
2012-06-15 13:56:05 -07:00
Alena Prokharchyk
998cf66e6c Removed network_id reference from domain_router table as now VirtualRouter can be associated with multiple networks (VPC case). Code modifications were done accordingly to the places where this field was used.
Router->Networks (one to many) are held in router_network_ref table now
2012-06-15 13:54:48 -07:00
frank
2f634c0913 Switch to Apache license 2012-04-03 04:50:05 -07:00
prachi
1b6e38f3d5 Bug 14536 - DB exception while trying to delete physical network
Reviewed-By: Sheng Yang

Changes:
Added proper cleanup for virtual router elements.
2012-03-29 12:40:06 -07:00
Sheng Yang
ec5a225a78 Refactor VirtualRouterNetworkManagerImpl
Refactor applyDhcpEntry and applyUserData to use applyRules framework.
2012-03-12 16:10:48 -07:00
Sheng Yang
e152e64ac0 Fix several wrong ResourceUnavailableException scopes 2012-03-08 11:55:31 -08:00
Alena Prokharchyk
4dea695e09 bug 13871: use perzone and peraccount (no spaces in values) when compare source nat capabilities
status 13871: resolved fixed
Reviewed-by: Chiradeep Vittal
2012-02-21 10:06:29 -08:00
frank
a1fa313902 Bug 13568 - secondary storage VM's static route for nfs server breaks things!
status 13568: resolved fixed
reviewed-by: Sheng Yang
2012-02-17 16:24:32 -08:00
Naredula Janardhana Reddy
31fe8bd815 Summary of HAProxy stickines param changes:
- converted all mandatory params to optional, and internally fill with default value before sending to haproxy. default value is available through description.
  - accept holdtime without units.
2012-02-08 14:56:41 +05:30
Alena Prokharchyk
1490e45a1c Fixed format style in a bunch of files (replaced tabs with spaces as a part of it) 2012-02-03 13:49:11 -08:00
Naredula Janardhana Reddy
aea81205ef Bug 11845:
Summary of Changes:
    - created a generic way for LB rule validations, so as LB device(like Haproxy) specific validations can be done syncronously.
    - Removed asyncronous validations from Haproxy and done syncronously.
2012-02-01 18:01:11 +05:30
Alena Prokharchyk
0e13bb58e3 bug 13250: don't check physicalNetworkId for control traffic type 2012-01-24 12:49:30 -08:00
Sheng Yang
ba23973d53 bug 12656: Refactor IP associate process
Introduce the concept of Ip Deployer. The IP deployer would be responible for
apply IP to the element. Most element's IP deployer is itself, but it can be
someone else if we want to implement inline mode in the future.
2012-01-05 21:08:28 -08:00
Naredula Janardhana Reddy
d683e30e28 bug 12891: added cookie to destination if it is http based sticky. 2012-01-06 10:17:55 +05:30
Murali reddy
4f058feef2 bug 12276: public IP's should be associated with a network service provider depending on the network rules for which IP is used for 2011-12-19 23:48:52 +05:30
Sheng Yang
f3df18aa9b NaaS: Enforce the checking of VirtualRouterElement
If SourceNAT is not provided, VirtualRouter wouldn't provide firewall,
portforwarding, loadbalance, static Nat and VPN service as well.
2011-11-30 14:53:57 -08:00
Sheng Yang
c5292de0ae NaaS: Restrict the combination that provider can support 2011-11-30 14:53:50 -08:00
Naredula Janardhana Reddy
e4b5a62402 bug 10796: merging code from branch 2011-11-30 15:03:43 +05:30
Alena Prokharchyk
337c07c0d1 Default gateway service to sourceNat service in the API 2011-11-17 16:28:10 -08:00
Alena Prokharchyk
5571afa471 Virtual router elements: prepare nics only when VirtualRouter is a provider for at least one service in the network 2011-11-17 14:33:22 -08:00
Alena Prokharchyk
0bb325ac12 Call implement() and shutdown() methods for providers only when the provider serves a service for the network 2011-11-17 13:53:53 -08:00
Sheng Yang
cb6c1424ef NaaS: Add virtual router state check for virtual router element 2011-11-17 13:42:29 -08:00
Sheng Yang
cdd8d741ca NaaS: Add redundant router capability to virtual router 2011-11-17 11:33:04 -08:00
Alena Prokharchyk
03eb3c9037 Removed unused imports 2011-11-15 16:42:26 -08:00
Sheng Yang
cdfac9a5e1 NaaS: Fix UUID of virtual router providers 2011-11-11 13:42:19 -08:00
Sheng Yang
7adedca8a3 NaaS: Update listVirtualRouterElements to accept nspid as parameter
Also fix VirtualRouterProviderResponse by adding objectName.
2011-11-10 17:26:11 -08:00
Sheng Yang
5c1773dd26 NaaS: Add response for VirtualRouterProvider 2011-11-09 18:52:34 -08:00
Sheng Yang
47114af94b NaaS: Add redundant capability for Gateway service 2011-11-09 17:09:46 -08:00
Sheng Yang
bc86800d30 NaaS: Remove Redundant Virtual Router element
Would use capability instead.
2011-11-09 17:09:38 -08:00
Sheng Yang
9b8f96c06d NaaS: Merge Role.DHCP_USERDATA and Role.DHCP_FIREWALL_LB_USERDATA to Role.VIRTUAL_ROUTER 2011-11-09 17:09:17 -08:00