Commit Graph

2445 Commits

Author SHA1 Message Date
Darren Shepherd aed5e9dc2a Add Manage Context framework
The managed context framework provides a simple way to add logic
to ACS at the various entry points of the system.  As threads are
launched and ran listeners can be registered for onEntry or onLeave
of the managed context.  This framework will be used specifically
to handle DB transaction checking and setting up the CallContext.
This framework is need to transition away from ACS custom AOP to
Spring AOP.
2013-10-02 13:09:52 -07:00
Darren Shepherd efbfae723e Switch to setter injection for extensibility
Various classes are using member injection to inject extensible objects.
Really those object should come from an AdapterList that is injected in.
This patch switches the code to use setter injection that will later allow
spring to inject an AdapterList or something similar to allow
extensibility.
2013-09-30 09:45:07 -07:00
Alex Huang b60eef3e82 Added comments and finished off the work 2013-09-28 07:53:28 -07:00
Alex Huang e8cac2c5d8 Changed SearchCriteria2 to GenericQueryBuilder to reflect the same placement 2013-09-28 07:53:26 -07:00
Alex Huang e2988902c9 Changed SearchCriteria2 to GenericQueryBuilder to reflect the same placement 2013-09-28 07:53:25 -07:00
Alex Huang af8832f6bd Unified both the SearchBuilder and SearchCriteriaService 2013-09-28 07:53:24 -07:00
Sheng Yang dad47682cb CLOUDSTACK-4745: Add StaticNatRule through firewall manager
This would fix CreateIpForwardingCmd API on 4.2+.
2013-09-26 14:00:32 -07:00
ynojima a45ee749ac CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor
Initial patch for VXLAN support.
Fully functional, hopefully, for GuestNetwork - AdvancedZone.

Patch Note:
 in cloudstack-server
- Add isolation method VXLAN
- Add VxlanGuestNetworkGuru as plugin for VXLAN isolation
- Modify NetworkServiceImpl to handle extended vNet range for VXLAN isolation
- Add VXLAN isolation option in zoneWizard UI

 in cloudstack-agent (kvm)
- Add modifyvxlan.sh script that handle bridge/vxlan interface manipulation script
-- Usage is exactly same to modifyvlan.sh
- BridgeVifDriver will call modifyvxlan.sh instead of modifyvlan.sh when VXLAN is used for isolation

Database changes:
- No change in database structure.
- VXLAN isolation uses same tables that VLAN uses to store vNet allocation status.

Known Issue and/or TODO:
- Some resource still says 'VLAN' in log even if VXLAN is used
- in UI, "Network - GuestNetworks" dosen't display VNI
-- VLAN ID field displays "N/A"
- Documentation!

Signed-off-by : Toshiaki Hatano <haeena@haeena.net>
2013-09-26 23:37:18 +09:00
Alena Prokharchyk 2fa5a5ae97 CLOUDSTACK-4704: 41-42 db upgrade - populate vpc_service_map table with the services/providers supported by VPC
(cherry picked from commit 798f34a49c)

Signed-off-by: Wei Zhou <w.zhou@leaseweb.com>
2013-09-23 14:18:41 +02:00
Alena Prokharchyk 94e744fe0c CLOUDSTACK-4573: fixed decrement resource count for VPC networks 2013-09-19 17:20:22 -07:00
Daan Hoogland 284742ad11 add networkofferid to search network for 2013-09-19 16:26:46 +02:00
Alena Prokharchyk d34b79c970 CLOUDSTACK-4573: fixed resource limit check when acquire public IP in VPC - update resource count for VPC public ip even when network_id is not set yet. 2013-09-18 14:43:42 -07:00
Daan Hoogland 2614b00c51 sdn hosted vpc gateways (using lswitch) 2013-09-18 16:56:56 +02:00
Kelven Yang 832db1b398 Apply https://reviews.apache.org/r/14084/ 2013-09-17 16:29:48 -07:00
Daan Hoogland 25c8cee01a CLOUDSTACK-4346 uses of parseInt and parseLong secured 2013-09-09 22:19:59 +02:00
Daan Hoogland 947f49d869 Revert "uses of parseInt and parseLong secured"
This reverts commit f8fb422612.
2013-09-09 22:17:10 +02:00
Daan Hoogland f8fb422612 uses of parseInt and parseLong secured 2013-09-09 22:15:07 +02:00
Alex Huang a05ec6df33 Fixed up the agent separation. Added comments for config packaging. 2013-09-06 15:40:39 -07:00
Alex Huang 8f556e6d88 Made changes to configuration. Eliminated ConfigValue and only use ConfigKey 2013-09-06 15:40:38 -07:00
Alex Huang 6e8ca99466 Got all of the config stuff out of the way 2013-09-06 15:40:36 -07:00
Alex Huang 47afae8112 Merged conflicts resolved 2013-09-06 15:40:36 -07:00
Alex Huang 5b439f0748 Revert "Revert "Added missing files""
This reverts commit 48053001fb2303d4acfb77d23fe3733941e83781.
2013-09-06 15:40:35 -07:00
Alex Huang 06493d5b5c Revert "Added missing files"
This reverts commit a1dfc227e895d724f68c0206643825b3ba43116c.
2013-09-06 15:40:35 -07:00
Alex Huang 375eadd3d3 Added missing files 2013-09-06 15:40:34 -07:00
Alex Huang 435e74e914 Commit to try something on removing getZone 2013-09-06 15:40:33 -07:00
Alex Huang 2e5bb63f77 Moved NetworkManagerImpl to NetworkOrchestrator 2013-09-06 15:40:32 -07:00
Alex Huang 8e5249df62 Moved NetworkManager to NetworkOrchestrationService 2013-09-06 15:40:31 -07:00
Sheng Yang ebb9a0c619 Revert "CLOUDSTACK-2792: Send "saved_password" to BACKUP router when reset password for user VM"
This reverts commit 5a8a2a259e.

We would fix it in another way, since mgmt server may get state updated in
time.

Conflicts:
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2013-09-05 14:26:52 -07:00
Kelven Yang f383656b21 Fix problems found in local test when JVM assertion is turned on 2013-09-04 14:49:44 -07:00
Chip Childers bf967eb622 Updating datetime format of events to include the timezone 2013-09-03 12:45:01 -04:00
Chip Childers 14ee684ce3 Adding eventDateTime to all event generation locations 2013-09-03 11:34:56 -04:00
Jayapal 7aea599eb4 CLOUDSTACK-4586 Added CIDR validation for SG Egress rules 2013-09-03 14:18:18 +05:30
Wei Zhou a16fd4781c CLOUDSTACK-4566: fix incorrect values in resource_count table for resource limitation
There are three issues in resource_count table
(1) expunge a vm, the public_ip decreases and becomes -1 in basic zone.
(2) recover a vm, the volume increase.
(3) restore a vm, the volume decrease.
2013-09-02 16:56:34 +02:00
Daan Hoogland d9c06e538b CLOUDSTACK-4346 replace URI getHost() and create(String) calls with BroadcastDomainType methods 2013-09-01 22:53:23 +02:00
Murali Reddy 5f42e2937d CLOUDSTACK-3010: [VMWare] [SharedNetworkWithServices] router VM
deployment fails with error "Message: Invalid configuration for device
'2'."

ensuring that direct network guru assigns a mac address for the nic that
it designs
2013-08-28 00:49:38 +05:30
Alex Huang 8113ebb08f Moved the csvtotags into StringUtils. It was there to begin with. No idea who copied it to ConfigurationManager 2013-08-26 20:27:27 -07:00
Alex Huang abbae2aa87 Fixed the problem with offerings and templates. These two items due to a previous patch all the way back in 2.1.x versions uses the removed column incorrectly. No one fixed since then. Hence, there's a bunch of findbyidincludingremoved calls in the cloudstack code around these two items. 2013-08-26 17:31:10 -07:00
Alex Huang ff6b3fd11a Removed getzone 2013-08-26 17:31:08 -07:00
Toshiaki Hatano 914e7c4542 Revert "CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor"
This reverts commit 34ae32e0c2.
2013-08-24 07:12:23 +00:00
Toshiaki Hatano 34ae32e0c2 CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor
Initial patch for VXLAN support.
Fully functional, hopefully, for GuestNetwork - AdvancedZone.

Patch Note:
 in cloudstack-server
- Add isolation method VXLAN
- Add VxlanGuestNetworkGuru as plugin for VXLAN isolation
- Modify NetworkServiceImpl to handle extended vNet range for VXLAN isolation
- Add VXLAN isolation option in zoneWizard UI

 in cloudstack-agent (kvm)
- Add modifyvxlan.sh script that handle bridge/vxlan interface manipulation script
-- Usage is exactly same to modifyvlan.sh
- BridgeVifDriver will call modifyvxlan.sh instead of modifyvlan.sh when VXLAN is used for isolation

Database changes:
- No change in database structure.
- VXLAN isolation uses same tables that VLAN uses to store vNet allocation status.

Known Issue:
- Some resource still says 'VLAN' in log even if VXLAN is used
- in UI, "Network - GuestNetworks" dosen't display VNI
-- VLAN ID field displays "N/A"
2013-08-24 01:39:11 +00:00
Koushik Das 502c1db103 CLOUDSTACK-3441: [Load Test] High delays between VM being allocated to Pod and network implementation causing delays in VM deployment
The locking code in implement/shutdown network code was not efficient. Even in order to check the current state of the network lock was getting acquired which is not required. This resulted in delays in deploy VM as can be seen from attached logs where the code waited on the lock just to check if network is implemented.
As part of the fix moved out code that is checking if the network is already implemented or shutdowned outside the lock.
2013-08-21 15:25:45 +05:30
Koushik Das 534e0977c3 CLOUDSTACK-2131: [Performance][Enhancement] Avoid checking for providers that are not enabled while creating network.
For some scenarios like prepare nic, all network service providers are checked which is not efficient and also introduces unnecessary dependencies.
The check to use only the required providers is already there for implement, shutdown operation on network. Put the same check for all missing cases.
2013-08-21 12:48:51 +05:30
Alex Huang 494ea5052f Made IpAddressManager a manager 2013-08-19 14:13:31 -07:00
Alex Huang f23f1530e7 Removed missing class from application context 2013-08-19 14:13:31 -07:00
Alex Huang 45d239882b Added missing files 2013-08-19 14:13:30 -07:00
Alex Huang 092e20204a Divided NetworkManagerImpl into two files: NetworkManagerImpl and IpAddressManagerImpl 2013-08-19 14:13:29 -07:00
Alex Huang 4ba359c3fe Moved VirtualMachineManager into engine 2013-08-19 14:13:28 -07:00
Alena Prokharchyk b727001f48 CLOUDSTACK-4315: VPC - when fail to add nic to the VR, a) remove the nic b) remove the reference to nic from router_network_ref table. Before the fix b) was missing, and it caused NPEs when tried to apply the rules on the routers not having nic in the network
Conflicts:
	server/src/com/cloud/network/element/VirtualRouterElement.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
2013-08-14 11:44:34 -07:00
Likitha Shetty 4d48d9603d CLOUDSTACK-4286. Add one more check for validating vlanrange parameter with "dedicateGuestVlanRange" API 2013-08-13 18:54:10 +05:30
Murali Reddy f1c611ac60 CLOUDSTACK-4206: [EIP/ELB] Failed to disableStaticNAT when the userVM is
in destroyed state.

ignore VM state when system is enabling static NAT on the system IP to
VM in EIP enable network
2013-08-12 04:49:03 +05:30
Alex Huang 5495f10bce Revert "Reverting the range of commits that broke the build"
This reverts commit b59e3aaefc.
2013-08-08 15:02:40 -07:00
Alena Prokharchyk 4976a67bfc CLOUDSTACK-4193: don't let privateGateway to be created with NULL networkId 2013-08-08 10:49:12 -07:00
Bharat Kumar 5f2f5181e9 CLOUDSTACK-4083 if a failure occurs while adding VM to another network (this should be the first vm in the subnet). The ip alias created as a part of this process is not removed.
Signed-off-by: Sheng Yang <sheng.yang@citrix.com>
2013-08-08 10:31:15 -07:00
Prasanna Santhanam b59e3aaefc Reverting the range of commits that broke the build
This reverts commits 30c33415..f6a2c817bc

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-08-08 14:46:56 +05:30
Likitha Shetty aba50f81cf CLOUDSTACK-4153. Guest vlan dedication is not working as expected in case of multiple physical networks. 2013-08-08 10:59:19 +05:30
Alex Huang 5287f4c9ec Got everything running through testing 2013-08-07 16:41:06 -07:00
Alex Huang 942f282a6e Moved config into it's own package 2013-08-07 16:41:02 -07:00
Likitha Shetty 31fe99ef91 CLOUDSTACK-4025. NPE observed during VM start.
NPE was hit during VM start because the network it was to be deployed in didn't get implemented - Handling this failure.
2013-08-07 13:28:27 +05:30
Bharat Kumar 1a89bc06c8 Cloudstack-4015 No error logged when deleteing all the valns when there are allocateed vnets. Alos not updating the vnet range in physicalnetworks table in the above case.
Signed-off-by: Jayapal <jayapal@apache.org>
2013-08-06 17:28:22 +05:30
Murali Reddy 42b81009b9 CLOUDSTACK-4013: [PortableIP] [MultiplePhysicalNetworks] Associate
portable IP is trying to insert network id as physical network id

ensuring network id, physical network id, source network id are properly
set for portable ip in user_ip_address and vlan tables
2013-08-06 17:16:58 +05:30
Jayapal 6164077ee8 CLOUDSTACK-4084 Fixed the static nat vm ip address in public ip address table in external network gc
In external network after network GC the network n/w cidr changes.
    In this case the static nat enable vm ip also chagnes. So updated the new
    vm ip address in user_ip_address table.
2013-08-06 16:25:51 +05:30
Alena Prokharchyk beabf596ba CLOUDSTACK-4080: don't GC the network when it has vms in Starting state even when the nics are not allocated for them yet (can happen when vm is being created) 2013-08-05 14:15:04 -07:00
Daan Hoogland d9202100e0 fix warnings in NetworkServiceImpl: removed unused code and add cases to switches 2013-08-05 11:21:39 -07:00
Alena Prokharchyk fc33d69b2a CLOUDSTACK-4023: lock the network during the shutdownNetwork (just the way we do when implement network)
Conflicts:
	server/src/com/cloud/network/NetworkServiceImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2013-08-02 13:20:47 -07:00
Alena Prokharchyk a3b86573b9 CLOUDSTACK-4020: lock nic entry in releaseNic method. Otherwise multiple threads can try to release the same nic at the same time, and it will lead to NPEs and backend failures
Conflicts:
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
2013-08-01 16:19:10 -07:00
Bharat Kumar 21f1b137cb Cloudstack-3753 Multiple VLAN range API need to accept a list rather than "add" or "remove" per command
Reviewed-by: Alena Prokharchyk

Conflicts:
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2013-08-01 13:36:20 -07:00
Harikrishna Patnala f12adfff8a CLOUDSTACK-3042: handle System VM Scaling up of memory/CPU based on the presence of tools in the template
Signed off by : Nitin Mehta<nitin.mehta@citrix.com>
2013-08-01 12:20:48 +05:30
Alena Prokharchyk 9f66d18de6 CLOUDSTACK-3948: fixed createAutoscaleVmProfile - for situation when no autoscaleUserId is passed in, take it from caller user id, not caller account id 2013-07-30 14:30:53 -07:00
Alena Prokharchyk 9b7c4a6c47 CLOUDSTACK-3948: fixed createAutoscaleVmProfile - for situation when no autoscaleUserId is passed in, take it from caller user id, not caller account id
Conflicts:
	api/src/org/apache/cloudstack/api/command/user/autoscale/CreateAutoScaleVmProfileCmd.java
	server/src/com/cloud/network/as/AutoScaleManagerImpl.java
2013-07-30 14:13:58 -07:00
frank 6070a8b370 CloudStack CLOUDSTACK-1812
create physical network fails while creating basic zone
2013-07-30 11:11:17 -07:00
Marcus Sorensen 566ce3e625 Summary: Fix null pointer and op_networks blocker to account cleanup
Detail: Accounts can fail in cleanup/gc process due to inconsistent op_networks
table and null pointer in looking up account for event publishing.

BUG-ID: CLOUDSTACK-3957
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1375204815 -0600
2013-07-30 11:22:11 -06:00
Alena Prokharchyk a36c8a962b CLOUDSTACK-3902: createVpcOffering - throw an excpetion when sourceNat service is not passed in 2013-07-30 10:08:46 -07:00
Murali Reddy b2fdfc5084 CLOUDSTACK-3642: [Usage][PortableIP] CS is not generating usage events
for portable IPs

generating usage event for acquire and release
2013-07-30 19:01:10 +05:30
Murali Reddy c520aae346 CLOUDSTACK-2991: [PortableIPRange] CS should not allow portable IP with
sourceNAT service on it

if a portable ip is first IP associated with a non-VPC network, then its
being considered as source nat IP. This fix adds exemption for portable
IP not to be considred for source nat.
2013-07-30 15:49:09 +05:30
Alena Prokharchyk e6ec6137ab CLOUDSTACK-3914: assignToLoadBalancer - return false, when empty vmIds list is passed in 2013-07-29 13:55:55 -07:00
Bharat Kumar 4dc874fefc Cloudstack-2622 createipAlias.sh/deleteipAliash.sh should not be allowed with Isolated Guest Networks
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-29 18:36:20 +05:30
Bharat Kumar a8387568f3 Fixed the conditon which checks for the provider's capabilty and reapply ipaliases on virtual router restart.
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-29 17:40:00 +05:30
Sateesh Chodapuneedi 26d8c668f9 CLOUDSTACK-3870 [VMware] Management traffic network over a VLAN is not working
CLOUDSTACK-3437 In case of multiple physical network setup we see log message "can't get physical network"

CloudStack's control network is management network in case of VMware.
Processing management VLAN id provided in zone traffic label for management traffic.`

Signed-off-by: Sateesh Chodapuneedi <sateesh@apache.org>
2013-07-29 08:20:51 +05:30
Rajesh Battala 24a8d60d6f CLOUDSTACK-62 [AWS Style Health Checks] Response of the API listLoadBalancerRuleInstances should show the service state of a VM if health check is configured for it 2013-07-26 16:40:26 +05:30
Min Chen db93ebf169 Fix build break due to commit 2e0847bfe0. 2013-07-25 18:04:12 -07:00
Alena Prokharchyk 2e0847bfe0 CLOUDSTACK-3232: InternalLB system vm - allocate control ip address from the private range when vm's hypervisor is vmWare 2013-07-25 16:39:23 -07:00
Bharat Kumar e14f5d0aeb Cloudstack-3694 Dnsmasq rewrite in bash
(Sheng: Fix typo, fix log and error message, remove 'set -x' in script)

Signed-off-by: Sheng Yang <sheng.yang@citrix.com>
2013-07-24 14:00:31 -07:00
Likitha Shetty b7a483608f CLOUDSTACK-3735. Domain deletion fails even when the networks within the domain have been destroyed.
When a network is destroyed remove the corresponding network entry from domain_network_ref and account_network_ref table
2013-07-24 20:03:51 +05:30
Alex Huang 9bc5870f01 Removed the remove method. Not sure why we added to VirtualMachineManager 2013-07-23 18:24:58 -07:00
Alex Huang 5297a071d2 Changed virtual machine stop to use uuid 2013-07-22 20:06:04 -07:00
Alex Huang 6ac361e6a2 Removed VM generic from VirtualMachineGuru. Part of the cleanup to make vmsync a simple vm manager that doesn't understand the different types of vms 2013-07-22 16:32:59 -07:00
Anthony Xu 04cdd90a84 in one zone, Admin should not be allowed to add a Shared Network with a subnet that is already associated with another Vlan. 2013-07-22 14:29:38 -07:00
Alex Huang 1325014a03 Changed VirtualMachineProfile to be non-generic. From here on VirtualMachineManager will only manage vm instance. It doesn't understand the difference between different types of VMs. This makes the vmsync code to be generic across all vms. 2013-07-22 11:48:11 -07:00
Alex Huang 7928963d16 Changed start to use uuid instead of generic vm start 2013-07-22 11:46:33 -07:00
Sheng Yang 2df1d7f328 Revert "CLOUDSTACK-3357: dnsmasq on vpc-routervm"
This reverts commit f99d599930.

Due to it break vpc function and block regression test.

Conflicts:
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
	server/test/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImplTest.java
2013-07-21 22:23:48 -07:00
Alena Prokharchyk 823c72552e InternalLb: fixed creation for default network offering with internal lb support - public lb support should be disbaled on it 2013-07-19 13:20:57 -07:00
Murali Reddy 28aaa7534a CLOUDSTACK-3642: [Usage][PortableIP] CS is not generating usage events
for portable IPs

generating usage events for acquire/release of portable IP
2013-07-19 18:45:14 +05:30
ahuang 11971b5a58 Bring over from vmsync changes in utils package. Simple changes. New files are not being used yet in master 2013-07-17 18:29:42 -07:00
ahuang 541f9d7f9c Changed allocate method to be virtual machine type agnostic 2013-07-17 15:58:46 -07:00
Bharat Kumar f76bf5b053 Cloudstack-2150 DB table entries of phisical network is not proper.Shows Duplicate entries Cloudstack-2980 Adding a VLAN range that overlaps with two existing ranges results in inconsistent DB entries
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 15:22:33 +05:30
Bharat Kumar d73bb22802 Incorportaed the review changes Now dhcpservice IPs are removed when last vm from the subnet is removed. Rebased with master.
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 12:35:06 +05:30
Bharat Kumar dd33abffbe Cloudstack-2997 Make haproxy maxconn configurable
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 10:06:11 +05:30
Bharat Kumar 6b549074fa Cloudstack-3313 Cannot deploy vm in ipv6 network
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 10:06:11 +05:30
Sheng Yang 86bbe211f2 CLOUDSTACK-494: Loose the limition of same ip used by site-to-site vpn
Different account can have same remote side IP now. Of course the remote side need
to identify them and configured properly to handle it.
2013-07-16 17:26:51 -07:00
ahuang 11e1e585b1 UserContext switched to CallContext. Added generic storage mechanism for other code to carry information throughout a call. Made the calling User and Account a must have. Added an interface to carry entities in error. Fixed up the code. Part of the vmsync branch 2013-07-16 11:24:21 -07:00