Commit Graph

2037 Commits

Author SHA1 Message Date
Alena Prokharchyk 4a2796d7c7 CS-16123: applied the patch from https://reviews.apache.org/r/6723/
original committer: Mice Xia
2012-08-22 09:39:19 -07:00
Jayapal a5248f1cfc Fix for dns issue in multiple pods
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2012-08-22 16:48:41 +05:30
kishan b42a813ff1 bug CS-16112: During unplug nic iptables rules are cleaned up in both cloud_nic.sh and vpc_netusage.sh. Consolidated this code in cloud_nic.sh
status CS-16112: resolved fixed

Conflicts:
	patches/systemvm/debian/config/opt/cloud/bin/vpc_netusage.sh
2012-08-22 12:00:02 +05:30
Prachi Damle 4bffd71d71 [ASFCS40]Db upgrade: merging changes from 303->304 upgrade to 3.0.2 -> 4.0 on master branch. 2012-08-21 16:27:54 -07:00
Alena Prokharchyk 2bf5c99bc6 CS-15304: VR deployment - release the lock for the network once the router entry is allocated (2.2.x behavior) as opposed to releasing it when the router start is completed
Reviewed-by: Frank Zhang

Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-08-21 15:31:07 -07:00
Alena Prokharchyk 7d0ad98c93 More logging to lock operations on the network 2012-08-21 15:25:17 -07:00
Alena Prokharchyk 14dd3f07d7 Fixed line endings in VirtualNetworkApplianceManagerImpl 2012-08-21 15:24:44 -07:00
Edison Su 481aae1ebc add recreate.systemvm.enabled parameter to control recreating systemvm 2012-08-20 11:19:26 -07:00
Sheng Yang 86d49e7aa0 CS-16060: Firewall service should be excluded from conserve mode checking 2012-08-17 17:05:04 -07:00
Sheng Yang a8efbcda58 S2S VPN: Fix license headers 2012-08-17 16:52:06 -07:00
Sheng Yang 1cfcefd2fb CS-16043: Using network based router rather than account for RVR detection 2012-08-17 16:52:06 -07:00
Sheng Yang ea6f3eb6f9 CS-14253: Apply IP when firewall rule is in place 2012-08-17 16:52:06 -07:00
Sheng Yang 4cb7a100c6 Revert "bug 14484: Apply existed firewall rules when associating IP"
This reverts commit b409615a32.

In order to fix CS-15503. Fix of bug 14484(CS-14253) would be applied later.
2012-08-17 16:52:06 -07:00
Alena Prokharchyk f8bd05a1e3 Fixed regression in GuestNetworkGuru - get networkId from the network object passed to the method call instead of retrieving it from tne NicProfile when it wasn't set yet 2012-08-17 09:43:34 -07:00
kishan 691be5c60e bug CS-15577: Added per gateway network usage for VPC and VPN usage. VPN usage uses 525 mark for outgoing traffic and 524 mark for incoming traffic
status CS-15577: resolved fixed
2012-08-17 17:07:13 +05:30
Jayapal 98ae204972 giving diff ip to VR
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2012-08-17 13:49:39 +05:30
Chiradeep Vittal 5b85edb961 bug CS-16034 getRandomIp can return -1 unexpectedly
also fixes unit test failures
2012-08-16 11:42:25 -07:00
Alena Prokharchyk b3760350fe VPC: CS-15805 - guest cidr should be RFC1918 complient 2012-08-13 17:17:06 -07:00
Alena Prokharchyk 71ead9ef4e VPC: CS-15925 - when vpc provider is speficied for a new network offering, no other providers can be used
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-08-13 14:03:39 -07:00
Alena Prokharchyk e74969fdec VPC: CS-15968 - don't send ips in Releasing state to the router when the nic is already unplugged for this Vlan
Conflicts:

	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
2012-08-13 11:55:34 -07:00
tomoe@midokura.jp ce12d0d70d Submit Midokura SDN controller stubs 2012-08-13 18:55:11 +05:30
anthony 822cf3c9ee VPC : typo in FirewallRuleVO 2012-08-12 10:55:21 -07:00
Alena Prokharchyk d93c5d0531 VPC: CS-15950 - throw networkConflictException when try to create network rule for the ip address that is already in use for another service
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
2012-08-10 16:37:33 -07:00
Sheng Yang 327b4833ce S2S VPN: CS-15947: Add global config for S2S VPN VPN connection counts limitation
And subnets limitation for each customer gateway

Conflicts:

	server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
2012-08-10 16:24:35 -07:00
Sheng Yang 302c9048e8 S2S VPN: CS-15932: Allow user to update customer gateway when connection state is ERROR
Conflicts:

	server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
2012-08-10 16:20:52 -07:00
Sheng Yang 830aec3562 S2S VPN: CS-15936: Prevent user from connecting to different customer gateway with overlapped subnets
Conflicts:

	server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
2012-08-10 16:20:52 -07:00
Sheng Yang a4431b5740 S2S VPN: Use coma instead of semicolon for separating cidr list 2012-08-10 16:20:52 -07:00
Alena Prokharchyk 5c349dd5e5 Fixed NetworkManagerImpl - tabs weren't replaced with spaces in some places 2012-08-10 10:45:38 -07:00
Alena Prokharchyk 057d6ccbb8 Name change for vpc/Dao package (dao is lowercased now) 2012-08-08 14:51:51 -07:00
Alena Prokharchyk a5f99a2ca0 VPC: set event details in the method called by API 2012-08-08 11:52:46 -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 2641b5d6b8 S2S VPN: Fix multiply remote side guest networks 2012-08-07 18:39:45 -07:00
Sheng Yang 5e0eb93fe6 S2S VPN: CS-15882: Only allow VPN connection between same account's gateways 2012-08-07 16:27:04 -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 bda1e2d08d VPC: more unittests for VpcService
Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-08-07 11:37:36 -07:00
Alena Prokharchyk d38e9eebed VPC: CS-15850 - don't unplug the nic for public network when there are existing ips in the same vlan having network rules
Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-08-07 11:25:02 -07:00
Alena Prokharchyk a83c753354 VPC: CS-15850 - don't unplug the nic for public network when there are existing ips in the same vlan having network rules 2012-08-07 11:24:04 -07:00
Alena Prokharchyk cf64fda5d5 VPC: unittest preparation
Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-08-07 11:23:52 -07:00
Alena Prokharchyk 972fe01aec VPC: more validation for static route rules: 1) Can't belong to guest cidr defined on Vpc 2) Can't belong to link local cidr
Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-08-07 11:21:53 -07:00
Sheng Yang 6e7b4bc07b S2S VPN: CS-15642: Re-initiate the VPN connections after router reboot
Conflicts:

	server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
2012-08-06 15:32:18 -07:00
Sheng Yang a8cbba9e82 S2S VPN: CS-15820: Remove account information of vpn gateway and vpn connection
The owner would be always same as VPC owner.

Conflicts:

	api/src/com/cloud/api/commands/CreateVpnConnectionCmd.java
	server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
	setup/db/db/schema-304to305.sql
2012-08-06 15:21:54 -07:00
Sheng Yang 70d704c786 S2S VPN: Allow name to be modified in updateCustomerGateway
Conflicts:

	server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
2012-08-06 15:20:33 -07:00
Sheng Yang 1b5103c501 S2S VPN: CS-15472: Separate IKE lifetime and ESP lifetime 2012-08-06 15:19:26 -07:00
Alena Prokharchyk 5a72044dc7 Merge branch 'master' into vpc 2012-08-03 14:30:54 -07:00
Alena Prokharchyk 3496a73878 VPC: CS-15812 - fixed listVPCs by projectId 2012-08-03 14:23:56 -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 6eba8a818a VPC: applyStaticRoutes - don't exclude static routes in Revoke state 2012-08-03 14:15:50 -07:00
Alena Prokharchyk d6df2fdc64 VPC: createPrivateGateway - added cleanup part happening in case when the gateway fails to be applied on the backend
Conflicts:

	api/src/com/cloud/api/commands/CreatePrivateGatewayCmd.java
	api/src/com/cloud/api/response/AsyncJobResponse.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-08-02 18:12:19 -07:00
Alena Prokharchyk 0588c9748c VPC: CS-15818 - don't allow having ICMP networkACLs with the same cidr and icmpType=-1 for rule1 and icmpType!=-1 for rule 2 as the rule1 covers rule2 in this case
Conflicts:

	server/src/com/cloud/network/vpc/NetworkACLManagerImpl.java
	utils/src/com/cloud/utils/net/NetUtils.java
2012-08-02 18:09:10 -07:00
Alena Prokharchyk 39485a4a56 VPC: CS-15821 - corrected mac address format for vpc private network 2012-08-02 18:07:15 -07:00
Alena Prokharchyk 8f797afd42 VPC: CS-15813 - ICMP type and code validation
Conflicts:

	server/src/com/cloud/network/vpc/NetworkACLManagerImpl.java
	utils/src/com/cloud/utils/net/NetUtils.java
2012-08-01 19:55:51 -07:00
Alena Prokharchyk ce9f1afa78 Merge branch 'master' into vpc
Conflicts:
	server/src/com/cloud/network/NetworkManagerImpl.java
2012-08-01 19:04:28 -07:00
Alena Prokharchyk 21e8fb372b VPC: CS-15805 - verify vpc guest network cidr only against networks in the same vpc
Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-08-01 19:02:43 -07:00
Alena Prokharchyk a4c52d41e8 VPC: CS-15811 - removed Netscaler from the list of supported providers in VPC 2012-08-01 18:57:52 -07:00
Alena Prokharchyk b92d2336ad VPC: CS-15798 - added vpc resource limit. Check vpc functional spec for more details:
http://wiki.cloudstack.org/display/RelOps/Inter-VLAN+Routing+functional+spec

Conflicts:

	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
2012-08-01 18:57:33 -07:00
Alena Prokharchyk 5cbe3d9722 ResourceTags: resourcetags support for Project/Vpc/NetworkACL/StaticRoute
Conflicts:

	api/src/com/cloud/api/commands/ListVPCsCmd.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/network/dao/FirewallRulesDaoImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/projects/dao/ProjectDaoImpl.java
	server/src/com/cloud/uuididentity/dao/IdentityDao.java
2012-08-01 18:54:08 -07:00
Alena Prokharchyk d2df3e0102 VPC: CS-15791 - allow having the same NetworkACL for 2 different protocols 2012-08-01 18:48:21 -07:00
Alena Prokharchyk 1168747128 Fixed numerous bugs in listNetworks call related to filtering by projectId/listAll/domainId/etc. All the rules below are followed now:
1) When account/domainId or projectId are passed in:

* list all account specific networks of the account/project
* list all domain level networks from the domainId + subdomains if the targeted network has allowSubdomainAccess = true

In other words, we use all the networks that can be used for vm deployment by account/domainId.

If listAll is not specified in the request, account/domainId are being defaulted to the account/domainId of the caller
listAll is ignored if the call is being done by the regular user.

2) listAll is passed in by the Root admin, we list:

* all Account specific networks in the system
* all domain specific networks in the system

3) listAll is passed by the Domain admin, we list:

* All Account specific networks belonging to domain/subdomains of the domain admin.
* All domain specific networks belonging to domain/subdomains of the domain admin
* All domain specific networks allowing subdomain access belonging to the parent domain.

4) domainId - can be passed either with or without listAll. We list:

* all account specific networks belonging to the domain
* all domain specific networks of the domain
* all domain specific networks of the subdomains if isRecursive = true is passed in

Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-08-01 18:46:36 -07:00
Alena Prokharchyk 7cceaae912 VPC: moved vpc related code from NetworkManager to VpcManager
Conflicts:

	api/src/com/cloud/api/commands/AssociateIPAddrCmd.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.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-08-01 18:45:06 -07:00
Alena Prokharchyk ebe53a91d7 VPC: reduced visability for some vpc related methods
Conflicts:

	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/vpc/NetworkACLManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-08-01 18:33:12 -07:00
Alena Prokharchyk 70713043cf VPC: CS-15774 - VPC and guest networks of VPC should belong to the same zone 2012-08-01 18:20:43 -07:00
Alena Prokharchyk 9be0a5525d VPC: CS-15725 - don't allow regular offering upgrade to the offering that can be used inside vpc only 2012-08-01 18:19:20 -07:00
Alena Prokharchyk e0c85c0d41 VPC: replaced vmTo object with vmName parameter in plug/unplugNic commands 2012-08-01 18:19:03 -07:00
Sheng Yang 904ef73398 Build fix. 2012-08-01 16:41:38 -07:00
Sheng Yang 96ac18d8ed S2S VPN: CS-15810: Add check for customer gateway subnets / VPC CIDR overlap 2012-08-01 15:31:17 -07:00
Alena Prokharchyk 7706a9c32f Merge branch 'master' into vpc
Conflicts:
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
2012-07-31 13:37:28 -07:00
Alena Prokharchyk 721d3ef3dc Fixed listNetworks to return domain level networks when listAll is passed to the request
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-07-31 10:24:09 -07:00
Sheng Yang 67941f818d S2S VPN: CS-15724: Show more parameter for listVpnCustomerGateways API 2012-07-30 15:52:23 -07:00
Sheng Yang d90be0d9bc S2S VPN: CS-15748: Deleting customer vpn gateway when delete account
Conflicts:

	server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
2012-07-30 15:34:41 -07:00
Alena Prokharchyk 9ec89b9240 Allow EIP/ELB network creation only in Basic zone 2012-07-30 13:39:42 -07:00
Alena Prokharchyk 372568cb9a CS-15743: disable static nat as a part of network resources cleanup
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
2012-07-30 11:08:33 -07:00
Hugo Trippaers 236f63fd34 When cleaning up or setting ip associations the NiciraNvpElement should be ignored.
Implemented a generic ConnectivyProvider interface work around the dependency from server to nicira-plugin.
2012-07-30 15:17:35 +02:00
kishan e87147de2e fixed build failure 2012-07-30 13:55:12 +05:30
Alena Prokharchyk 2943dc22d7 CS-15717: fail to delete the network when corresponding network elements fail to be destroyed 2012-07-27 23:37:46 -04:00
kishan 9611a017e9 bug CS-15389: Added prepareStop to Virtualmachine manager and moved network usage collection into prepareStop of VR manager 2012-07-27 23:37:46 -04:00
Sheng Yang b410cbff5f CS-15730: Prohibit create VPN connection from different gateway to same customer gateway 2012-07-27 17:41:47 -07:00
Sheng Yang 3c90fc842f CS-15704: Fix wrong domain id setting of non-root domain 2012-07-27 16:28:06 -07:00
Sheng Yang 8eee8f342e S2S VPN: CS-15650: Add connection status update to s2s vpn 2012-07-27 16:28:06 -07:00
Sheng Yang 786d5995df S2S VPN: Add list function for normal users 2012-07-27 16:27:36 -07:00
Sheng Yang 736c4c1510 CS-15670: Allow normal users to configure S2S VPN 2012-07-27 16:27:36 -07:00
Sheng Yang 72a4b2f410 S2S VPN: Add name field for customer gateway
Easier for user to identify the correct gateway
2012-07-27 16:27:36 -07:00
Alena Prokharchyk fe2681fa10 VPC: CS-15725 - don't allow regular offering upgrade to the offering that can be used inside vpc only
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-07-27 13:59:08 -07:00
Alena Prokharchyk 807a9ed2c3 VPC: added global configuration for limiting number of networks per vpc (vpc.max.networks)
Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-07-27 13:56:25 -07:00
Alena Prokharchyk 190329286c VPC:
1) CS-15692 - ipAddress is always null for NetworkACL rule
2) CS-15699 - redundant router = true when provider is VirtualRouter
3) CS-15701 - fixed error message

Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-07-27 13:55:39 -07:00
Alena Prokharchyk 110903a91a VPC: added vif info to ipassoc command
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-07-27 13:53:41 -07:00
Alena Prokharchyk a39fd61249 Merge branch 'master' into vpc
Conflicts:
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineGuru.java
2012-07-27 13:47:46 -07:00
kishan 468f2720eb bug CS-15389: Added prepareStop to Virtualmachine manager and moved network usage collection into prepareStop of VR manager 2012-07-27 23:13:18 +05:30
Alena Prokharchyk 7d406bf3d1 Added missing action events for enable/disable static nat 2012-07-26 15:28:50 -07:00
Sheng Yang 522bdf8163 S2S VPN: Fix incorrect conn returned by resetVpnConnection cmd 2012-07-25 19:27:16 -07:00
Alena Prokharchyk 58a9b94dfb Fixed listNetworks by domainId/aclType=Domain 2012-07-25 14:50:56 -07:00
Alena Prokharchyk 119e4e7443 VPC: CS-15681 - execute VPC related methods only when router is a vpc router
Conflicts:

	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
2012-07-24 16:12:13 -07:00
Sheng Yang a00456bc57 CS-15676: Fix NPE when stop non-VPC router 2012-07-24 11:43:30 -07:00
Sheng Yang 1920c2a735 CS-15534: Mark VPN connection as Disconnected when rebootRouter
Conflicts:

	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
2012-07-23 21:14:49 -07:00
Sheng Yang 6cb10ce993 S2S VPN: Add check for router status before apply vpn 2012-07-23 19:53:39 -07:00
Alena Prokharchyk 46cd99f01e VPC: CS-15668 - IpAssoc: unplug the nics before pluggning new ones 2012-07-23 16:38:14 -07:00
Sheng Yang b18d90af04 CS-15615: Fix Site2SiteVpnService injection 2012-07-23 14:46:17 -07:00
Sheng Yang c357134330 CS-15574: Delete VPN gateway and connection when deleting VPC
Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-07-23 14:45:42 -07:00
Sheng Yang 7d68e33323 S2S VPN: Use source NAT ip address for VPN gateway
Conflicts:

	api/src/com/cloud/api/commands/CreateVpnGatewayCmd.java
	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-07-23 14:44:05 -07:00
Sheng Yang 671475242c S2S VPN: Add domain and account for VPN
Admin can add VPN connection for others

Conflicts:

	api/src/com/cloud/api/commands/CreateVpnConnectionCmd.java
	server/src/com/cloud/api/ApiResponseHelper.java
	setup/db/create-schema.sql
2012-07-23 14:40:26 -07:00
Sheng Yang df9315ff02 CS-15447: Don't enable s2s vpn when provider is disabled
Conflicts:

	server/src/com/cloud/network/vpc/VpcManager.java
2012-07-23 14:37:40 -07:00
Sheng Yang 0dec6ea804 CS-15456: Prohibit creating more than one VPN gateway of VPC 2012-07-23 14:35:52 -07:00
Alena Prokharchyk 7cf7002571 Merge branch 'master' into vpc 2012-07-23 10:57:55 -07:00
bfederle c8f72c9198 Merge branch 'master' into vpc
Conflicts:
	ui/scripts/network.js
2012-07-23 10:36:25 -07:00
Alena Prokharchyk 65551cff82 Resource tags: CS-15647 - delete resource tags when SG is expunged 2012-07-23 10:33:59 -07:00
Alena Prokharchyk 394f55d9e3 More logging to the VirtualRouter manager 2012-07-20 17:12:34 -07:00
Alena Prokharchyk 966c1b0ad8 VPC: when VPC router gets destroyed and recreated, plug public nic for each Vlan where VPC public ips belong to
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-07-20 17:12:34 -07:00
Alena Prokharchyk cf895d34d2 CS-15622: always get router info from the DB 2012-07-20 17:12:34 -07:00
Alena Prokharchyk 2b7ec3f4a8 VPC: one more fix for multiple public nic case for the VPC VR
Conflicts:

	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-07-20 17:12:34 -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 9b4c578e0d More logging on nic release 2012-07-20 16:44:24 -07:00
Alena Prokharchyk 281b23c2cd Fixed license headers 2012-07-18 14:52:13 -07:00
Alena Prokharchyk 6ad2388c72 VPC: added one more default network offering for VPC - the one not having LB service 2012-07-17 17:46:17 -07:00
Alena Prokharchyk 47615a26b6 VPC: CS-15583 - hostName for the vm should be unique inside the network domain 2012-07-16 15:42:47 -07:00
Alena Prokharchyk a3d4ee3d87 VPC: CS-15598 - update ipVO object after getting system ip as a part of elastic LB
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
2012-07-16 15:42:36 -07:00
Alena Prokharchyk 4a7149e6b5 VPC: CS-15580 - don't allow gateway for VPC guest network to be equal to the cidr subnet
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-07-13 17:09:16 -07:00
Alena Prokharchyk a1acfd3bfa Merge branch 'master' into vpc
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/network/Network.java
	client/tomcatconf/components.xml.in
	plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
	server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/guru/GuestNetworkGuru.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
	setup/db/create-schema.sql
2012-07-13 13:52:58 -07:00
Alena Prokharchyk 4dd71cb635 VPC: CS-15562 - get info about VR's guest networks from nics table 2012-07-13 13:35:18 -07:00
Alena Prokharchyk 534e6d4d80 VPC: CS-15564 - when send the rules to the backend, form the list of rules after the rules were marked with Revoke state
Conflicts:

	server/src/com/cloud/network/vpc/NetworkACLManagerImpl.java
2012-07-13 13:35:06 -07:00
Alena Prokharchyk d48d4c24e7 VPC: CS-15569/CS-15568 - release ip address from VPC when fail to enable static nat
Conflicts:

	server/src/com/cloud/network/rules/RulesManagerImpl.java
2012-07-13 13:34:19 -07:00
Alena Prokharchyk ad80f426a0 VPC: CS-15553 and CS-15549 - more checks during automatic ip assoc to VPC network
Conflicts:

	api/src/com/cloud/api/commands/CreateLoadBalancerRuleCmd.java
	server/src/com/cloud/network/firewall/FirewallManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
2012-07-13 13:32:14 -07:00
Alena Prokharchyk 1781f706f9 VPC: added forVpc parameter to listNetworks api call. If true, list networks not belonging to any vpc 2012-07-13 13:27:10 -07:00
Alena Prokharchyk b475396438 VPC: CS-15550 - fixed listVPCs by cidr
Conflicts:

	server/src/com/cloud/network/vpc/VpcManagerImpl.java
2012-07-13 13:26:59 -07:00
Alena Prokharchyk eb52f4a610 VPC: mark gateway with Deleting state when all static routes are gone 2012-07-13 13:26:04 -07:00
Alena Prokharchyk 5923659dba VPC: CS-15548 - don't plug the nic for guest network to router when network not in Implemented state 2012-07-13 13:25:56 -07:00
Alena Prokharchyk b15c2576a7 VPC: fixed listStaticRoutes when search by gatewayId 2012-07-13 13:25:47 -07:00
Alena Prokharchyk a848ecae8b VPC: fixed logging 2012-07-13 13:25:39 -07:00
Hugo Trippaers 79c7da07ab Phase 1 of Nicira integration 2012-07-11 17:16:06 -07:00
Edison Su 8b7b838c8a CS-15544: recreate router if router filesystem is crashed 2012-07-11 16:14:28 -07:00
Alena Prokharchyk 7cb4ab5e60 VPC: added State to vpc_gateways 2012-07-11 12:05:42 -07:00
Alena Prokharchyk d2e491a377 VPC: don't send staticRoutes in Revoke state to the VPC VR 2012-07-11 12:05:33 -07:00
Alena Prokharchyk b407b3beaa VPC: add vm to network - no need to prepare nic when add vm in Stopped state to the network; the nic will be prepared once the vm starts up 2012-07-10 18:07:45 -07:00
Alena Prokharchyk 697aa4589b VPC: unplugNic - release the nic in the DB only after the command is executed succesfully on the backend
Conflicts:

	api/src/com/cloud/agent/api/routing/SetStaticRouteCommand.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-07-10 18:07:09 -07:00
Alena Prokharchyk f59b935da5 VPC: CS-15519 - fixed ipAssoc when only zoneId parameter is passed in to the API call
Conflicts:

	api/src/com/cloud/api/commands/AssociateIPAddrCmd.java
	server/src/com/cloud/network/ExternalLoadBalancerUsageManagerImpl.java
2012-07-10 15:20:39 -07:00
Sheng Yang ade3ae4e3c CS-15512: Fix delete vpn connection 2012-07-10 14:47:50 -07:00
Alena Prokharchyk c2f9417de4 VPC: CS-15345 - fixed regression in ipRelease happening as a part of cleanupNetworkResources method 2012-07-10 14:35:50 -07:00
Sheng Yang 94c62f2127 CS-15513: Fix group 5 of s2s vpn
Conflicts:

	utils/test/com/cloud/utils/net/NetUtilsTest.java
2012-07-10 10:38:17 -07:00
Alena Prokharchyk c2134b431f VPC: CS-15505 - allocate guest nics when new VR starts in VPC 2012-07-09 18:30:58 -07:00
Alena Prokharchyk 525ba472e8 VPC: CS-15481: don't allow creating networkACLs for overlapping cidrs/ports 2012-07-09 18:23:58 -07:00
Alena Prokharchyk 55db112990 CS-15503: don't send Ips in Releasing state as a part of VPC VR start 2012-07-09 18:23:50 -07:00
Alena Prokharchyk 21519070fc VPC: added vpc_id to private_ip_address table to indicate which vpc the ip belongs to
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManager.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-07-09 18:23:35 -07:00
Alena Prokharchyk 10dcc117c3 VPC: CS-15486 - prepare public nic as a part of VR deployment 2012-07-09 18:12:54 -07:00
Alena Prokharchyk a6086dc806 Removed @author tag from bunch of resources 2012-07-06 17:25:36 -07:00
Alena Prokharchyk 5be0a3eeb1 VPC: fixed listNetworkACLs by networkId
Conflicts:

	api/src/com/cloud/api/commands/ListNetworkACLsCmd.java
2012-07-06 16:43:39 -07:00
Alena Prokharchyk c9eb0c59bf VPC: allow adding private gateway to the VPC when the VR is in Stopped state 2012-07-06 15:28:07 -07:00
Alena Prokharchyk 818a3c72ac VPC: CS-15485 - dont' create a record for VPC VR private gateway nic in router_network_ref; do it for regular guest networks only
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
2012-07-06 14:57:26 -07:00
Alena Prokharchyk 353423acec Merge branch 'master' into vpc
Conflicts:
	api/src/com/cloud/api/commands/ListFirewallRulesCmd.java
	api/src/com/cloud/api/response/FirewallResponse.java
	api/src/com/cloud/api/response/IPAddressResponse.java
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/FirewallRulesDaoImpl.java
	server/src/com/cloud/network/dao/NetworkDaoImpl.java
	server/src/com/cloud/server/ManagementServerImpl.java
2012-07-06 12:04:10 -07:00
Alena Prokharchyk 85677b71fe Resource tags: CS-15473 - fixed delete/list by resourceId when UUID is specified as a value
Conflicts:

	server/src/com/cloud/network/dao/FirewallRulesDaoImpl.java
	server/src/com/cloud/network/vpc/Dao/StaticRouteDaoImpl.java
	server/src/com/cloud/network/vpc/Dao/VpcDaoImpl.java
	server/src/com/cloud/projects/dao/ProjectDaoImpl.java
2012-07-06 11:43:31 -07:00
Alena Prokharchyk 7acf8585b1 Resource tags: 1) Remove tag records when correspdonding cloudStack object gets removed
2) added "tags" request parameter to the banch of list* Api commands (listVirtualMachines, listSnapshots - all commands are listed in the resource tags functional spec)

Conflicts:

	api/src/com/cloud/api/commands/ListFirewallRulesCmd.java
	api/src/com/cloud/api/commands/ListPortForwardingRulesCmd.java
	api/src/com/cloud/api/commands/ListPublicIpAddressesCmd.java
	api/src/com/cloud/api/commands/ListSecurityGroupsCmd.java
	api/src/com/cloud/api/commands/ListSnapshotsCmd.java
	api/src/com/cloud/api/commands/ListVolumesCmd.java
	api/src/com/cloud/api/response/FirewallResponse.java
	api/src/com/cloud/api/response/IPAddressResponse.java
	api/src/com/cloud/api/response/VolumeResponse.java
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/FirewallRulesDaoImpl.java
	server/src/com/cloud/network/security/dao/SecurityGroupDaoImpl.java
	server/src/com/cloud/server/ManagementServerImpl.java
	server/src/com/cloud/storage/dao/VMTemplateDaoImpl.java
	server/src/com/cloud/vm/dao/UserVmDaoImpl.java
2012-07-06 11:43:31 -07:00
Alena Prokharchyk 7044fa695d VPC: CS-15469: createNetworkACL - startPort is not accepted if protocol is ICMP 2012-07-06 11:11:36 -07:00
Alena Prokharchyk e1fe1616d7 VPC: fixed CS-15465 - lb creation for ip not associated with any networks 2012-07-06 11:09:56 -07:00
Alena Prokharchyk e19e26ec4e VPC: don't fail when create/remove static route when VPC VR is in Stopped state 2012-07-06 11:09:15 -07:00
Alena Prokharchyk d6774e6a86 VPC: don't allow vpcs for the same account with overlapping cidrs 2012-07-06 11:08:58 -07:00
Alena Prokharchyk 234ae447ee VPC: added field networkacl_service_provided to physical_network_service_providers table 2012-07-06 11:08:39 -07:00
Alena Prokharchyk 07eb6e3cf7 VPC: CS-15447 - fail vpc creation when vpc provider is not enabled at least in one physical network in the target zone 2012-07-06 11:08:28 -07:00
Alena Prokharchyk b4fec75ff7 VPC: added dns1/dns2 + networkDomain to the list of bootload args passed on VPC VR start 2012-07-06 11:08:17 -07:00
Alena Prokharchyk 540ea34f57 VPC: removed NetworkACL interface; added getTrafficType() to Firewall
Conflicts:

	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
2012-07-06 11:08:00 -07:00
Alena Prokharchyk 0dfe603d48 VPC: createLB rule - removed duplicated check for ip services when createLB rule
Conflicts:

	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
2012-07-06 11:07:26 -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 07d478d836 VPC: CS-15426 - In Basic zone always pass control nic when prepare nics for the VR
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-07-03 17:27:46 -07:00
Alena Prokharchyk 5afa83abb6 VPC: CS-15355 - fixed router when deployVm in Basic zone
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-07-03 17:25:07 -07:00
Alena Prokharchyk da6d876cd4 VPC: added "forVpc" parameter to listNetworkOfferings command. If true, the offeirng can be used for vpc networks only
Conflicts:

	api/src/com/cloud/api/ApiConstants.java
	server/src/com/cloud/api/ApiDBUtils.java
2012-07-03 17:23:40 -07:00
Alena Prokharchyk 2b799aa9ac VPC: added missing FirewallService to the VR provider 2012-07-03 17:22:41 -07:00
Alena Prokharchyk 580261119c VPC: corrected the name for PublicIp interface (mistakenly renamed it as a part of previous checkin)
Conflicts:

	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-07-02 17:44:54 -07:00
Alena Prokharchyk 5d5b584a8e VPC: remove network ACLs from VPC VR when shutdown guest network 2012-07-02 17:44:54 -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
Alena Prokharchyk 183633cf70 VPC: createPrivateGateway - consists of plug nic + ipassoc (no setsource nat is needed)
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-07-02 17:44:54 -07:00
Alena Prokharchyk b565f63e42 VPC: listPrivateGateways command is available for regular user too (he needs to know the gatewayId for the static route creation)
Conflicts:

	api/src/com/cloud/api/ResponseGenerator.java
	server/src/com/cloud/api/ApiResponseHelper.java
2012-07-02 17:44:28 -07:00
Alena Prokharchyk 1ee0c30935 VPC: added vpccidr to the list of VPC router bootload args 2012-07-02 17:44:27 -07:00
Alena Prokharchyk 2dc1a286f6 VPC: set networkId to be null for IP address when the last PF/LB rule is removed for it and the IP belongs to VPC
Conflicts:

	server/src/com/cloud/network/rules/RulesManagerImpl.java
2012-07-02 17:44:27 -07:00
Sheng Yang 5ee4b79688 CS-6840: Fix 0 id returned by createVpnConnection 2012-07-02 16:29:34 -07:00
Sheng Yang 1d97af3abf CS-6840: Add status checking for site 2 site VPN 2012-07-02 16:29:23 -07:00
Sheng Yang d9688f74ba CS-6840: List all objects without require parameter 2012-07-02 16:29:10 -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
Sheng Yang 24c480f9e6 CS-6840: Add commands for site-to-site vpn
Conflicts:

	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/api/ResponseGenerator.java
	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	utils/test/com/cloud/utils/net/NetUtilsTest.java
2012-07-02 16:26:34 -07:00
Sheng Yang 9bb65b1126 CS-6840: Add data structure for site-to-site vpn tables 2012-07-02 16:20:58 -07:00
Murali reddy 9876d34ea4 moving out ELB network element to plugins/network-elements/elastic-loadbalancer 2012-07-02 15:05:58 -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
Alena Prokharchyk 1f01d923ca Merge branch 'master' into vpc 2012-06-28 17:44:08 -07:00
Alena Prokharchyk 634cd78baa Merge branch 'master' into vpc
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/api/ResponseGenerator.java
	api/src/com/cloud/api/commands/ListNetworksCmd.java
	api/src/com/cloud/api/response/NetworkResponse.java
	api/src/com/cloud/event/EventTypes.java
	api/src/com/cloud/network/NetworkService.java
	client/tomcatconf/commands.properties.in
	scripts/network/domr/getDomRVersion.sh
	scripts/network/domr/ipassoc.sh
	scripts/network/domr/l2tp_vpn.sh
	scripts/network/domr/networkUsage.sh
	scripts/network/domr/router_proxy.sh
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/IPAddressDao.java
	server/src/com/cloud/network/dao/IPAddressDaoImpl.java
	setup/apidoc/gen_toc.py
	setup/db/create-schema.sql
	wscript
2012-06-28 17:41:40 -07:00
Murali reddy c41094154d moving out OVS code to plugins/network-elements/ovs 2012-06-28 17:23:41 -07:00
Alena Prokharchyk 377b03acde VPC: when add guest network to VPC, verify that the list of network services is within the list of services supported by VPC offering 2012-06-28 17:18:27 -07:00
Alena Prokharchyk 24772bcb4e VPC: createPF/createLBrule: 1) don't allow to pass openFirewall=true 2) when no openFirewall is passed in, defaulted to false if the public ip belongs to VPC 2012-06-28 17:18:15 -07:00
Alena Prokharchyk c19639e4a2 Static route can be created for generic VpcGateway now, not just Private gateway 2012-06-28 17:17:44 -07:00
Alena Prokharchyk 46b97cbf7d VPC: update public IP info in domain_router table once the VR gets the public nic 2012-06-28 10:25:24 -07:00
Alena Prokharchyk 308fd39a73 VPC: delete network ACLs as a part of network cleanup 2012-06-28 10:18:23 -07:00
Alena Prokharchyk b03265bc76 VPC: implemented vpc cleanup thread that cleans up Inactive VPCs (that were failed to delete) 2012-06-28 10:18:14 -07:00
Alena Prokharchyk cec5012d5a VPC: fixed ip addres assignment in createLB rule 2012-06-28 10:18:03 -07:00
Alena Prokharchyk c8ec262dea VPC: as there is no support for FirewallRules/remoteAccessVPN in the VPC, removed the networkId from the list of parameters for corresponding api calls 2012-06-28 10:17:53 -07:00
Alena Prokharchyk 5ecdad7399 VPC: don't generate empty SetStaticRoute command during VR start when there are no static routes for the VPC
Conflicts:

	server/src/com/cloud/user/AccountManagerImpl.java
2012-06-28 10:17:34 -07:00
Alena Prokharchyk 42dac79e08 VPC: 1) Don't allow to delete private gateway when it has static routes assigned. Routes have to be removed first.
2) Re-apply static routes as a part of VPC VR start
2012-06-28 10:13:48 -07:00
Alena Prokharchyk 1140f081df VPC: fixed getEntityOwnerId() in AssociateIpAddress command to return vpc owner if vpcId is passed in. Added action events for create/delete privateGateway/staticRoutes 2012-06-28 10:13:36 -07:00
Alena Prokharchyk a78fcedb5e VPC: added vpcId to SetStaticNatRule and CreateLoadBalancerConfig commands
Conflicts:

	server/src/com/cloud/network/element/NetscalerElement.java
2012-06-28 10:13:19 -07:00
Alena Prokharchyk 1a232171eb VPC: implementation for Add/delete/list StaticRoute. Agent implementation is yet to be done 2012-06-28 10:11:41 -07:00
Edison Su 5f6387e113 add clouddev 2012-06-27 23:28:34 -07:00
Murali reddy 8197f1f07c moving out VMWAre and Nexus VSM support code into plugins/hypervisors/vmware 2012-06-26 19:48:55 -07:00
Alena Prokharchyk ce876e24de VPC: intermidiate checkin to Static Routes
Conflicts:

	api/src/com/cloud/api/ApiConstants.java
2012-06-25 21:00:57 -07:00
Alena Prokharchyk 8be74c033f VPC: update ip address object after the ip is associated with the network 2012-06-25 21:00:12 -07:00
Alena Prokharchyk 96c273ad55 VPC: finilize start for the VR - send ip assoc commands only after plug nic is done for all public nics 2012-06-25 21:00:00 -07:00
Alena Prokharchyk d35eb73c9b VPC: initial checkin for Static Routes
Conflicts:

	api/src/com/cloud/api/ApiConstants.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-06-25 20:59:33 -07:00
Alena Prokharchyk 83ed35f06b VPC: Don't allow to do ip assoc to the network in the VPC. The ip should be assigned to the VPC itself 2012-06-25 20:58:00 -07:00
Alena Prokharchyk b770c8b979 VPC: moved NetworkACL manager to the vpc folder 2012-06-25 20:57:50 -07:00
Alena Prokharchyk 4e7b65ef71 VPC: CS-15354 - fixed updateNetworkServiceProvider for VpcVirtualRouter 2012-06-25 20:57:37 -07:00
Alena Prokharchyk dc04e0b2e5 VPC: listPrivateGateways API implementation 2012-06-25 20:57:09 -07:00
Alena Prokharchyk d3ccc3a7de VPC: fixed NPE in network ACL delete (ip address is null for the rule of this type_ 2012-06-25 20:55:37 -07:00
Alena Prokharchyk 030458a37b VPC: implemented add/delete Private gateway
Conflicts:

	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/dc/DataCenterVO.java
	server/src/com/cloud/network/NetworkManagerImpl.java
2012-06-25 20:54:14 -07:00
Alena Prokharchyk 300110931c VPC: apply dhcp entries only after all guest nics are plugged
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-06-25 20:51:09 -07:00
Alena Prokharchyk 1b1e52ddb0 VPC: apply firewall ACLs as a part of VPC router start/restart and VPC network implement
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
2012-06-25 20:47:29 -07:00
Murali reddy 392ae5cb13 moving out Srx code into Plugins/network-elements 2012-06-25 16:55:53 -07:00
Murali reddy 422c4ce513 moving out F5 code from server into plugins/network-elements/f5/ 2012-06-23 14:16:59 -07:00
Murali reddy 49b88472a5 moving out NetScaler network element code from CloudStack core into plugins/network-elements/netscaler 2012-06-21 18:57:18 -07:00
Alena Prokharchyk 887970690b Added NicTO to SetSourceNat command, CreateLoadBalancerConfigCommand, SetNetworkACLCommand 2012-06-21 10:02:33 -07:00
Alena Prokharchyk ccec9192a2 VPC: implemented delete and list Network ACL(s) 2012-06-20 17:20:04 -07:00
Alena Prokharchyk 374a600746 VPC: initial checkin for network ACLs
Conflicts:

	client/tomcatconf/commands.properties.in
2012-06-20 17:19:49 -07:00
Alena Prokharchyk 7fda6306b8 VPC: fixed user vm start in case when Implemented network existed w/o VR (it was expunged with DestroyRouter command) 2012-06-20 17:19:17 -07:00
Alena Prokharchyk d2abc0e275 canUseForDeploy is always false for system networks 2012-06-20 15:45:14 -07:00
Alena Prokharchyk 19f648f1aa VPC: plug guest nic on guest network implement, and unplug on shutdown
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-06-19 10:09:46 -07:00
Alena Prokharchyk 89d7e54732 Network usage for VPC implementation
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-06-19 10:08:03 -07:00
Alena Prokharchyk 214782cc8c Don't send public/guest nic info when start VR in VPC
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-06-19 10:05:06 -07:00
Sheng Yang 590b2332de Don't need to check guest cidr overlap
It's not external devices, so guest network with different vlan can be the same.
2012-06-18 16:06:14 -07:00
Alena Prokharchyk 810151586b 1) Allow having multiple shared networks with the same vlan
2) Added new parameter to listNetworks command - canUseForDeploy(boolean). When true, list only networks that can be used for vm deployment (networks have enough ip addresses to allocate from for the vm)

Conflicts:

	api/src/com/cloud/api/ApiConstants.java
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/IPAddressDao.java
2012-06-15 16:47:13 -07:00
Alena Prokharchyk 38215583ea Fixed lock problem when add vm to guest network 2012-06-15 14:33:32 -07:00
Alena Prokharchyk 9ae62d32cd Isolated non-vpc networks: start router with 3 nics from the very beginning 2012-06-15 14:33:14 -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
anthony e69561b857 VPC : revert some change 2012-06-15 14:32:47 -07:00
Alena Prokharchyk 3e5f391c85 VPC: more changes to ipAssoc 2012-06-15 14:32:39 -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 c82885021b More logging to plug nic code 2012-06-15 14:27:49 -07:00
Alena Prokharchyk aa2b7d2d8c VPC: fixed guest network shutdown 2012-06-15 14:27:42 -07:00
Alena Prokharchyk 39422a3138 Release acquired lock for VPC 2012-06-15 14:27:33 -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 d70d2f82d4 StartRouter: set only control nic during the initial router start; plug exising public and guest nics after the router is started with control nic 2012-06-15 14:25:31 -07:00
Alena Prokharchyk 31b8f07bb5 Added NicTO to setupGuestNetworkCommand constructor - we need this info for guest network configuraiton 2012-06-15 14:22:40 -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
anthony 396fa72ee3 1. move control network to eth0 on domr
2. if it is basic mode, use guest NIC as Control NIC
2012-06-15 14:18:38 -07:00
Alena Prokharchyk 929997f54e AssociateIpAddress to VPC - the ip gets associated to the network only when the first rule for the ip gets created.
When the last rule is removed for vpc ip, networkId is set to null

Conflicts:

	api/src/com/cloud/api/commands/AssociateIPAddrCmd.java
	api/src/com/cloud/api/commands/EnableStaticNatCmd.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/network/rules/RulesService.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-06-15 14:18:24 -07:00
Alena Prokharchyk c56998e876 Support for IPAssoc inside VPC 2012-06-15 14:10:33 -07:00
Alena Prokharchyk 1189e92708 Destroy VPC if it fails to start during the deployment 2012-06-15 14:10:22 -07:00
Alena Prokharchyk 9ec8526281 1) Added VPC restart support - new api command RestartVPC. The purpose of the call is to shutdown and start VPC including VPCVirtualRouter restart, rules re-implement, etc
2) Only networks created from offerings with conserveMode=false, can participate in VPC
2012-06-15 14:10:09 -07:00
Alena Prokharchyk b9a4e79277 1) Added search by vpcId to listRouters/listNetworks Apis
2) Don't allow to add new networks/implement existing ones for VPC in Disabled state. Disabled state indicates that there was unsuccessful attempt to remove the VPC, and the further cleanup will be taken care of by cleanup thread.

Conflicts:

	server/src/com/cloud/network/dao/IPAddressDao.java
	server/src/com/cloud/server/ManagementServerImpl.java
2012-06-15 14:09:37 -07:00
Alena Prokharchyk d5507e1379 Support for delete VPC 2012-06-15 14:08:26 -07:00
Alena Prokharchyk f28cefc4c3 Added support for network shutdown in VPC guest networks 2012-06-15 14:07:59 -07:00
Alena Prokharchyk d9fd7e02a5 Plug nic support
Conflicts:

	server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
2012-06-15 14:07:46 -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 c12ba9c86d Add type and rpcfilter to the virtual router bootload arguments even when there is no guest network is being configured. 2012-06-15 13:57:27 -07:00
Alena Prokharchyk bdfd484444 Deploy VR as a part of VPC: set elementId to the VR element id of the first physical network in the zone by now. TODO - add logic for handling the case when VR has 1 to many element ids relationship 2012-06-15 13:57:11 -07:00
Alena Prokharchyk ab680bc30c Start Virtual Router as a part of VPC start
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-06-15 13:57:00 -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
Alena Prokharchyk 60b52f90dd Initial checkin for VPC feature:
1) Added API frameworks for the feature. New commands:
* CreateVPCCmd
* ListVPCsCmd
* DeleteVPCCmd
* UpdateVPCCmd
* CreateVPCOfferingCmd
* UpdateVPCOfferingCmd
* DeleteVPCOfferingCmd
* ListVPCOfferingsCmd

2) New db tables:

* `cloud`.`vpc`
* `cloud`.`vpc_offerings`
* `cloud`.`vpc_offering_service_map`

and corresponding VO/Dao objects.

Added vpc_id field to `cloud.`networks` table - not null when network belongs to VPC

3) New Manager and Service interfaces- VpcManager/VpcService

4) Automatically create new VpcOffering (if doesn't exist) on system start

5) New Action events:

* VPC.CREATE
* VPC.UPDATE
* VPC.DELETE

* VPC.OFFERING.CREATE
* VPC.OFFERING.UPDATE
* VPC.OFFERING.DELETE

Conflicts:

	api/src/com/cloud/api/ApiConstants.java
	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	setup/db/create-schema.sql
2012-06-15 13:53:59 -07:00
Kelven Yang d0bdab98ae bug CS-15191: remove a sanity check that prevent us from getting traffic lable under VMware
Reviewed-by: anthony
2012-06-06 16:57:49 -07:00
Kelven Yang 8b6936bde6 CS-15080: VMware control network is CloudStack management network, correct the way to send down a correct traffic label to VMware resource
Reviewed-by: Anthony
2012-06-06 16:57:27 -07:00
Sheng Yang 79c276ba6b CS-15116: When GetDomRVersion failed, let VR creation fail
Because there are more commands after GetDomRVersion command. Though
GetDomRVersion command itself is not that critical, the commands after it may
including DHCP and firewall related commands. The failure of GetDomRVersion
command would result in the following commands fail to be executed. So it should
fail, and fail loudly.
2012-05-31 18:57:11 -07:00
Sateesh Chodapuneedi 4ad8845b28 CS-14956 Support for rate limiting policies in Nexus dvSwith feature for CloudStack
Removed global parameters that are not required. Cleanup.
Reviewed-by: Devdeep
2012-05-25 19:41:36 -07:00
Vijayendra Bhamidipati 7cf04c1fe4 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Incorporating Salvatore's review comments.
2012-05-25 19:02:00 -07:00
Vijayendra Bhamidipati 7f26a43d48 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Incorporating more changes from Alena's review.

	Modified the Nexus Enable and Disable commands
	to return CiscoNexusVSMResponse instead of
	SuccessResponse.

	Put event annotations for enable/disable functions
	that the enable/disable nexus commands cal into.
2012-05-25 18:37:50 -07:00
Vijayendra Bhamidipati 15d0cf782a CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Removed the vcenter_dc_name and vcenter_ipaddr
	fields from the virtual_supervisor_module
	table, the CiscoNexusVSMDeviceVO, addClusterCmd,
	and all other references to these two fields.

	Fixing null pointer exceptions when checking
	for nexus related global parameter values in
	addClusterCmd.

Conflicts:

	api/src/com/cloud/api/commands/AddClusterCmd.java
2012-05-25 18:37:20 -07:00
Vijayendra Bhamidipati 63de97e63c CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Modifying column names in db tables to
	adhere to naming conventions.
2012-05-25 18:28:34 -07:00
Vijayendra Bhamidipati ed0ba1a0e6 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Incorporating more changes post review by Alena.

	1. Renamed the ListCiscoVSMDetailsCmd command
	   to ListCiscoNexusVSMsCmd. The command will
	   return a list of VSMs always, depending on
	   what parameter is passed to it. If a clusterId
	   is passed to it, it will return the VSM
	   associated to that cluster, if present. If
	   a zoneId is passed in, it will return a list
	   of all VSMs configured for any clusters of
	   type VMware within that zone. If neither is
	   passed, it will return a list of all VSMs
	   configured in the management server. If no
	   VSMs are found, it will return an exception
	   response.

	2. Cleaned up miscellaneous code.

Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in
	server/src/com/cloud/server/ManagementServerImpl.java
2012-05-25 18:27:29 -07:00
Vijayendra Bhamidipati ffaa8cc20a CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	More changes incorporating Alena's review comments:

	  1. Changed id to clusterId for better naming.

	  2. Changed the name of GetCiscoVSMByClusterIdCmd
	     to ListCiscoVSMDetailsCmd.

	  3. Removed the GetCiscoVSMDetailsCmd command.

	  4. Removed catch{} blocks in each of the Nexus
	     related APIs since the exceptions raised in
	     the API implementations will be caught in the
   	     command dispatcher.

	  5. Added ActionEvent annotation to
	     deleteCiscoNexusVSM() function.

	  6. Modified each Nexus API command's
	     getEntityOwnerId() to return
	     Account.ACCOUNT_ID_SYSTEM.
2012-05-25 18:23:51 -07:00
Vijayendra Bhamidipati e7246847ac CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Putting in code changes as per Alena's reviews:

	  Replaced references to CiscoNexusVSMDeviceVO
	  in GetCiscoVSMByClusterIdCmd to work with an
	  interface that CiscoNexusVSMDeviceVO instead,
	  since VO objects should not be directly accessed
	  in APIs.

	  Made associated changes in other files.

	More commits incorporating Alena's review comments
	will follow.
2012-05-25 18:23:40 -07:00
Vijayendra Bhamidipati 78d40da1bf CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Removing two unexposed APIs that we never use:
		ConfigureCiscoNexusVSMCmd
		ListCiscoNexusVSMCmd

	More changes to follow.
2012-05-25 18:23:21 -07:00
Vijayendra Bhamidipati b28568a221 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Modified the following commands to be Async:
		a. EnableCiscoNexusVSM
		b. DisableCiscoNexusVSM
		c. DeleteCiscoNexusVSM

	Cleaned up miscellaneous code.
2012-05-25 18:11:04 -07:00
Vijayendra Bhamidipati 187d32057e CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Didn't stage all modified files in previous
	commit by mistake. Checking in the rest of
	the changes in this commit. Please refer to
	immediate previous commit for CS-9919 for
	details on what changes went in with this
	commit.

Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in
2012-05-25 18:07:48 -07:00
Vijayendra Bhamidipati c08716db00 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Added a new API GetCiscoVSMDetailsCmd. This
	API gets all details of a VSM when provided
	with the VSM ID.

Resolved Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in

Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in
2012-05-25 18:06:27 -07:00
Vijayendra Bhamidipati b793c4c0fe CS-14929: Exception while creating a port forwarding rule on an acquired ip
CS-14943: Unable to deploy VM due to Unable to identify the provider by name CiscoNexus1000vVSM

Description:

	Ignore the CiscoNexus1000vVSM provider when checking for
	providers when applying port forwarding rules.
2012-05-25 18:04:46 -07:00
Sateesh Chodapuneedi 67bfe23d28 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Avoid detection of public traffic label for basic zones. Check switch types along with global parameter for enabling a particular vmware vswitch types. Move credentials information into resource and load during resource configuration. Cleanup.

Conflicts:

	server/src/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
2012-05-25 18:00:13 -07:00
Vijayendra Bhamidipati f774ef7415 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Missed out a file in previous commit when adding
	the new API getCiscoVSMByClusterId. Stub file was
	added by Sateesh to prevent breakage. Putting the
	file in in this commit plus better exception
	handling.
2012-05-25 17:45:03 -07:00
Sateesh Chodapuneedi c59d5415ad CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Portprofile shaping policies will be fetched
	from nexus vswitch instead of vcenter.
	ACLs and Policies won't be synced to vCenter.
	Get physical network label while adding cluster.
	Cleanup.

Conflicts:

	core/src/com/cloud/hypervisor/vmware/manager/VmwareManager.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-05-25 17:44:02 -07:00
Vijayendra Bhamidipati d933358f10 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Adding command getCiscoVSMByClusterId to
	retrieve a VSM associated with a cluster.
2012-05-25 17:41:24 -07:00
Vijayendra Bhamidipati 7e845cfa62 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Removed CiscoNexusVSM.java.

	2. Put in invocation of Netconfhelper's
	   connect method to a VSM, in
	   CiscoNexusVSMDeviceManagerImpl.java.
2012-05-25 17:29:35 -07:00
Sateesh Chodapuneedi 205f4a2192 CS-9919 - Support for Nexus Swiches (Cisco Vswitches)
Description:

	Code changes to manage Cisco Nexus 1000v in CloudStack.
	VmwareResource has been modified to leverage Nexus vSwitch.

	Providing following global configuration parameters,

vmware.use.nexus.vswitch -
	This would decide whether Nexus vSwitch in the VMware
	cluster environment would be used/managed by CloudStack
	for it's network infrastructure needs.

vmware.guest.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for guest traffic.

vmware.private.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for private traffic.

vmware.public.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for private traffic.

Functional Specification -
	http://wiki.cloudstack.org/display/RelOps/Cisco+Nexus+1000v+Support+in+CloudStack+-+Functional+Specification

Documentation / README for usage instructions -
	http://wiki.cloudstack.org/display/RelOps/Configuration+instructions+for+CloudStack+Deployment+with+Nexus+vSwitch

Conflicts:

	core/src/com/cloud/hypervisor/vmware/manager/VmwareManager.java
	core/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
	server/src/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
	vmware-base/src/com/cloud/hypervisor/vmware/mo/HostMO.java
	vmware-base/src/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
	vmware-base/src/com/cloud/hypervisor/vmware/util/VmwareContext.java
2012-05-25 17:27:00 -07:00
Vijayendra Bhamidipati 781f0b4966 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Added the PortProfile infrastructure:

	    a. PortProfileVO : The VO class to represent a db
	    record of the table port_profile. Each db record
	    represents one port profile.

	    b. PortProfileDao: The interface that declares search
	    functions on the port_profile table.

	    c. PortProfileDaoImpl: The class that defines the
	    interfaces declared in PortProfileDao.

	    d. PortProfileManagerImpl: The class that contains
	    routines that will add or delete db records from
	    the port_profile table. If you want to create/delete
	    a portprofile, call functions from this class.

	    e. Changes to create-schema.sql to create the port_profile
	    table.

	2. Cleaned up code:

	    a. Removed a number of unused Dao and Manager objects in
	    CiscoNexusVSMDeviceManagerImpl.

	    b. Removed the ListCiscoNexusVSMNetworksCmd command.

	    c. Removed a bunch of import statements in a few files.
2012-05-25 17:17:56 -07:00
Vijayendra Bhamidipati 0f28222cce Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Modify addCiscoNexusVSMCmd to enable a VSM
           by default, when it is added to a cluster.

	2. Put in two new APIs exposed to the user -
                a. EnableCiscoNexusVSMCmd
                b. DisableCiscoNexusVSMCmd

        Disabling a VSM does not delete it. It only
        prevents the Management Server from using that
        VSM. This is useful if the VSM is in
        maintenance mode.
2012-05-25 17:17:37 -07:00
Vijayendra Bhamidipati 38c140b181 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

        1. Put in invocation to the deleteCiscoNexusVSM()
	   function in the deleteCiscoNexusVSM command
	   chain.

        2. Put in additional check for physical servers
	   present in a cluster that still is tied to a
	   VSM. The previous check would query for all
	   hosts in a cluster, causing the check to see
	   if a cluster has any physical servers in it
	   to always fail and thus block the VSM from
	   getting deleted. By putting in a check to see
	   if a host if of type "Routing", we refine this
	   search to only hypervisors.

        3. Other miscallaneous code + cleanup.
2012-05-25 17:17:29 -07:00
Vijayendra Bhamidipati 037ac6592e Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

        1. Changed AddCiscoNexusVSMCmd to:
             a. Extend BaseCmd instead of BaseAsyncCmd.
             b. Take in more required parameters (viz
                vCenterDCName and vCenterIpAddress)

        1a. Changed DeleteCiscoNexusVSMCmd to also
            extend BaseCmd.

        2. Put in changes that will ensure that
           When a VSM is added, it is disabled by default.

        3. Fixed code that was leading to exceptions
           related to DB reads/writes to VSM related tables.

        4. Added new API Constants in ApiConstants.java.
           NOTE - Always initialize new attributes in
           ApiConstants.java to values in small case.
           Never put in upper case there. Also regardless
           of what names you give attributes in the
           *Cmd.java's class, you pass in parameters via
           API calls by specifying <key>=<value> where the
           <key> is taken from the value you specified in
           ApiConstants.java.

        5. Modified the addCiscoNexusVSM() function in
           CiscoNexusVSMDeviceManagerImpl.java to write VSM
           records to the db.
2012-05-25 17:17:18 -07:00
Vijayendra Bhamidipati 7380f52f12 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Missed replacing older table name for VSMs in a few
	   files (changed the name from
	   external_virtual_switch_management_devices to
	   virtual_supervisor_module). Fixed that in this commit.

	2. Missed adding the new Dao ClusterVSMMapDao in the Dao
	   loading in DefaultComponentLibrary. Fixed.

	3. Fixed wrong searchbuilder options passed to ipaddrSearch
	   in CiscoNexusVSMDeviceDaoImpl.
2012-05-25 17:09:41 -07:00
Vijayendra Bhamidipati a940d962ca Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Added a new VO class to represent a new table
	   "cluster_vsm_map". The class is ClusterVSMMapVO
	   in ClusterVSMMapVO.java. This table has only
	   two fields - clusterId, VSMId. The clusterId can
	   occur only once. But the same VSMId can be tied
	   to different clusterIds.

	2. Added the Dao interface + implementation of the
	   interface. This provides the functions required
	   to populate objects of type ClusterVSMMapVO with
	   records from the cluster_vsm_map table. The
	   interface is defined in ClusterVSMMapDao.java,
	   and the implementation is in ClusterVSMMapDaoImpl.java.

	3. Changed the table name that represents the VSM to
	   "virtual_supervisor_module" from the earlier overly
	   generic "external_virtual_switch_management_devices".

	4. Added search/remove functions to the Dao of the VSM.
	   This is the Dao for the Cisco Nexus VSM -

		CiscoNexusVSMDeviceDao:CiscoNexusVSMDeviceDaoImpl
		 --> This is the Dao Implementation that would let
		     us query/update records on the
		     "virtual_supervisor_module" table that contains
		     the records of all the VSMs that are added to
		     the Management Server.

NOTE::
======
These were some of the changes made as part of the previous commit (#7):

	1. Renamed CiscoNexusVSMResource.java to CiscoNexusVSM.java.

	2. Changed it to not implement a true resource, but to be
	   just a class providing functionality to talk to a VSM.

	3. Modified the AddCiscoNexusVSMCmd class to take in clusterId
	   instead of zoneId + your fix of the String to Long.
2012-05-25 17:09:26 -07:00
Vijayendra Bhamidipati 28568e694b Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	This is work in progress. This set of changes will not
	compile. Checking in for team wide code sync up.

	Changes are underway to test if VMWareResource can be
	leveraged to talk to the VSM, instead of creating a
	new resource for the VSM, like we've been doing up
	until now.
2012-05-25 17:09:08 -07:00
Vijayendra Bhamidipati b0facd16e4 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
At this point, the mgmt server comes up, loading the
	   Nexus related modules without dying.

Description:

	1) Added a new properties file for Cisco N1kv VSM commands:
		cisconexusvsm_commands.properties.in

	2) Added the CiscoNexusVSMElement to the components.xml file.

	3) Modified CiscoNexusVSMElement to implement NetworkElement.

		The NetworkElement interface functions are not
	  	relevant to the N1KV VSM, so we override them
	  	with noops.

	4) Added an addDao() of CiscoNexusVSMDeviceDaoImpl in populateDaos(),
	   else we'd run into a failure to look up the VSM's dao when the
	   mgmt server is starting up:

		com.cloud.utils.exception.CloudRuntimeException: Unable to find DAO com.cloud.network.dao.CiscoNexusVSMDeviceDao

	5) Also added the CiscoNexusVSMElementService in populateServices(),
	   and modified CiscoNexusVSMElement to implement Manager as well.

	6) populateServices() was running into an exception that indicated
	   that it was unable to find a commands.properties file for the
	   cisco n1kv vsm service. Fixed it by changing getProperties() in
	   CiscoNexusVSMElement to return the correct string
	   "cisconexusvsm_commands.properties", and putting in an @Override
	   for getProperties() in CiscoNexusVSMElement. Also fixed up all
	   the other functions in CiscoNexusVSMElement that needed to have
	   @Override. Also updated build/developers.xml with this file
	   location. And did other small cleanup.

	7) More clean up in CiscoNexusVSMDeviceManagerImpl.

Conflicts:

	server/src/com/cloud/configuration/DefaultComponentLibrary.java
2012-05-25 17:07:03 -07:00
Vijayendra Bhamidipati 32ba2ef17a CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Reviewed by: Sateesh Chodapuneedi, Devdeep Singh

Description:

This is the first in a series of commits for integrating the
Cloudstack Management Server with the Nexus 1000v Virtual
Supervisor Module.

These changes introduce the necessary API command interfaces
to work with a Cisco N1KV VSM. The backend logic is still to
be put in and will be incorporated in subsequent commits.
Please do not attempt to use these APIs until then. Also,
these are not yet filled in into commands.xml, so they are
not currently exposed.

Additional APIs would be added if required.

These changes will not break any current management server
functionality.

Given below is a description of the changes put in here:

	Added Cisco N1KV commands to core/api:
	    These are the added commands -

		AddCiscoNexusVSMCmd
		DeleteCiscoNexusVSMCmd
		ConfigureCiscoNexusVSMCmd
		ListCiscoNexusVSMCmd
		ListCiscoNexusVSMNetworksCmd

	Added a Network Element service file for Cisco N1KV.

	Declared the interface functions that we'll need for
	the N1KV VSM.

	Defined a DeviceVO file for the Cisco Nexus Element.

	Created a response file for Cisco Nexus VSM.

	Created new event types for external Switching Management devices.

	Put in logic to call interface methods in ListCiscoNexusVSMNetworksCmd
	and ListCiscoNexusVSMCmd

NOT VSM RELATED:
	Fixed minor typo in some of the event types for external load balancers.

       Added properties of a VSM in the VSM VO class.

       Replaced the "url" input parameter by "ipaddress"
       in the AddCiscoNexusVSMCmd API.

       Added a new file - CiscoNexusVSMElement.java to
       contain the implementation of the functions
       declared in the VSMElementService interface, and
       put in implementations of the functions for the
       Nexus VSM API commands. These functions are
       defined in the CiscoNexusVSMElement class.

       Added a class for Port Profiles (PortProfile.java).
       The fields in this class are still not correctly
       declared as of now. We'll make the required changes
       going forward.

	Added CiscoNexusVSMDeviceManagerImpl class.

	Added CiscoNexusVSMResource class.

	Created a new class to provide a package to
	connect to Cisco Nexus VSMs. This will be a
	set of Java wrapper functions that allow us
	to connect/disconnect and send commands and
	receive the results of those commands via
	XML-RPC. These functions are yet to be
	implemented, and will be checked in in future
	commits.

	Added two new classes, VSMCommand and
	VSMResponse, to encapsulate XML-RPCcommands
	and responses to and from a Ciscon Nexus VSM.

	Put in the following function stubs inside the
	CiscoNexusVSMService class:

		connectToVSM()
		disconnectFromVSM()
		executeVSMCommand()

	Added new field in the Type enum of the "Host"
	interface, for Cisco Nexus VSMs.

	Added two parameters to AddCiscoNexusVSMCommand
		vsmName
		zoneId

	Modified the CiscoNexusVSMDeviceVO constructor to
	take in an zoneId as a parameter when creating
	the VO object.

	Added new interface and class for the DeviceDao
	implementation for Cisco Nexus VSM devices:
		CiscoNexusVSMDeviceDao
		CiscoNexusVSMDeviceDaoImpl

	Removed the vsmvCenterDomainId property, since it's
	going to the same as vsmDomainId, which is the VSM's
	switch Domain Id.

	Have started putting in the following query functions
	in the CiscoNexusVSMDeviceDao interface:

	Put in DAO implementations of some of the above functions in the CiscoNexusVSMDeviceDaoImpl class.

	Added a vsmName parameter to the CiscoNexusVSMDeviceVO class.
2012-05-25 17:05:15 -07:00
Alena Prokharchyk f6efcd39a3 CS-15083: fixed source nat ip assoc for the case when account owns more than 1 guest network, and 1+ public account specific ranges 2012-05-24 13:47:14 -07:00
Alena Prokharchyk e65465929d CS-15082: don't allow to remove guest network in Basic zone when there are non-expunged CPVM/SSVMs using it. 2012-05-24 11:38:32 -07:00
Murali reddy a4b0759c52 bug CS-14862: EIP/ELB - SSVM and CPVM should be given an ip address from the public ip address range.
With this fix  both SSVM and CPVM will get public IP's in case of basic zone with EIP service.
A static NAT rule is implicitly configured on the EIP service provider to map public IP to a
guest IP address associated with SSVM/CPVM
2012-05-21 20:18:37 +05:30
Edison Su 26e78bd0b7 send ssh key to kvm host, even if it's developer env 2012-05-16 14:51:04 -07:00
Murali reddy 3b1aca19b3 bug CS-14291: support EIP with multiple NetScalers in basic zone
This fix will enable support for multiple NetScaler devices providing EIP service in same zone.

    - Introduced global setting "eip.use.multiple.netscalers" to turn multiple netscaler support
    - Enhanced configureNetscalerLoadBalancer API to take the PBR setup between the POD's subnet
      and NetScaler device
    - logic to pick a NetScaler (based on the guest IP and corresponding pod) while configuring INAT rule
2012-05-15 14:00:32 +05:30
Naredula Janardhana Reddy d0a09732d2 Bug 14120: Enabling SNAT for all the public NICs.
Summary of changes:
    - snat flag is set to true if it is first ip of the NIC.

reviewed-by: Abhi
2012-05-07 10:08:51 +05:30
Salvatore Orlando a794e49545 CS-14724 : Making the default network label configurable, improving exception management
Please also see notes added to wiki.cloudstack.org/display/QA/Open+vSwitch+Tunnel+Manager
2012-05-02 15:16:10 +01:00
Salvatore Orlando 2bf0c7f7ff CS-14605: OVS cleanup
Fix syntax errors in ConfigurationManager and Resource Manager test
2012-04-25 10:53:41 +01:00
Salvatore Orlando 6e0a86862a CS-14605: OVS Tunnel Manager Clean-up
1) Remove old VLAN-in-overlay manager
2) Remove unused DAO objects
3) Fix code using removed object (all stale lines)
2012-04-25 10:50:17 +01:00
Alena Prokharchyk afb97f128b Account specific vlan ranges - fixed deleteVlanRange
Conflicts:

	api/src/com/cloud/api/commands/DeleteVlanIpRangeCmd.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
2012-04-24 17:18:27 -07:00
Alena Prokharchyk a678988f33 CS-14622: fixed adding vlan range per account - associate it with the Guest network, not public
Conflicts:

	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-04-24 11:44:00 -07:00
Salvatore Orlando 026ed52f1d CS-14437: Final changes to ensure proper tunnel creation (rebase problems) 2012-04-24 15:53:10 +01:00
Salvatore Orlando ccbdee899c Now finding the IP address also for the remote endpoint 2012-04-23 22:33:19 +01:00
root 59e93d9f29 Minor changes to string format command 2012-04-23 22:33:19 +01:00
Salvatore Orlando b980993864 Adding DB support for interfaces OVS tunnel manager will use as GRE endpoints 2012-04-23 22:33:19 +01:00
root 3513551ae3 Hacking for demo 2012-04-23 22:33:19 +01:00
Salvatore Orlando 02cd1484b7 Removing superfluous log statements 2012-04-23 22:33:18 +01:00