Commit Graph

374 Commits

Author SHA1 Message Date
Sheng Yang 0121c0516d Network: Add Service providers
In the past, the NetworkElement would cover almost all the functionality that
e.g.  virtual router can cover: firewall, source NAT, static NAT, password,
VPN... So anyone want to implement the NetworkElement would have to implement
these service's specific methods, even it wouldn't support it. Also, if we want
to find a e.g. FirewallServiceProvider, we have to proceed all the current
network service providers, to call a method to know if it support such service.
That's neither elegant nor scaling way to do it.

As the first step, this patch separates each ServiceProvider from NetworkElement
(there are some interface already out of NetworkElement, so this patch slightly
modifies them too), and only the class would implement the correlated interface, would
have the ability to do these services.
2011-10-10 11:45:39 -07:00
alena 25c2734e03 More stuff to Projects feature - added support for adding resources (vms, templates, isos) to the project 2011-10-05 13:24:25 -07:00
Sheng Yang 474d1a6034 bug 11307: Add destroyRouter command 2011-09-14 16:23:42 -07:00
Sheng Yang 684a603a6e bug 11307: Add cleanup parameter to restartNetwork command
Default set it to true. When cleanup=false, restartNetwork would only
re-implement the network, but don't destroy current existed routers.
2011-09-14 16:23:34 -07:00
Sheng Yang e330e97f4b bug 11307: Mark router as to-be-stopped, rather than force stop it.
Force stop the router would release all the resources it used, but router may
still running. Add a column "stop_pending" in the database, and stop it when the
router come back.

Admin would able to choose to force destroy such router, then recover the
network using restartNetwork command with cleanup=false.
2011-09-14 16:23:17 -07:00
Chiradeep Vittal 3cb4ad4934 Add more detail when unable to schedule cleanup
clean up tests for security group manager v2

move interval to listener -- allows it to be configurable if needed

fix mocks

Enhanced logging for security group manager (from zucchini)

fix merge issues

merge issues
2011-09-12 18:22:55 -07:00
Chiradeep Vittal e216686029 Revert "bug 10617: Intermediate checking"
revert pending review

This reverts commit 561b27565512d438db3d8896df6f97b644b0b498.
2011-09-12 14:45:58 -07:00
Naredula Janardhana Reddy f9b0962ad9 bug 10617: Intermediate checking
Changes :
         - Fixing API doc +response name + errorMessage
         - Adding seperate events to Egress rules
         - Egress rules Using the same database table as that of ingress with new column type.

   Pending Tasks:
         - db upgrade
         - database table rename from security_ingress_rule to generic name, renaming some of the jave class from ingress to generic name.
         - Retesting on kvm
2011-09-09 18:14:19 +05:30
Murali Reddy 9abb544865 bug 6876: netscaler MPX & VPX support
- adding supprt for Netscaler VPX & MPX load blancers
    - implemented for virtual networking
    - works only with new fetched public IP, inline support is not added yet
2011-08-30 00:14:05 +05:30
alena 8c53dbcdd7 bug 11185: support multiple CIDR on overlapping port ranges for firewall rules
status 11185: resolved fixed

Conflicts:

	server/src/com/cloud/network/firewall/FirewallManagerImpl.java

Conflicts:

	api/src/com/cloud/network/firewall/FirewallService.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
2011-08-25 12:21:11 -07:00
alena d3eb9db7fa bug 11204: when search for domR/dhcp, include Role to the corresponding search to eliminate getting "LB" network element in the response
status 11204: resolved fixed

Conflicts:

	server/src/com/cloud/network/element/VirtualRouterElement.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManager.java
2011-08-23 12:05:53 -07:00
alena 8a7feb8ec1 Merge branch '2.2.y'
Conflicts:
	agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java
	api/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java
	api/src/com/cloud/agent/api/to/FirewallRuleTO.java
	api/src/com/cloud/agent/api/to/IpAddressTO.java
	api/src/com/cloud/agent/api/to/PortForwardingRuleTO.java
	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/CreateFirewallRuleCmd.java
	api/src/com/cloud/api/commands/CreateIpForwardingRuleCmd.java
	api/src/com/cloud/api/commands/CreateLoadBalancerRuleCmd.java
	api/src/com/cloud/api/commands/CreatePortForwardingRuleCmd.java
	api/src/com/cloud/api/commands/DeleteLoadBalancerRuleCmd.java
	api/src/com/cloud/api/commands/ListCapabilitiesCmd.java
	api/src/com/cloud/api/commands/UpdateNetworkCmd.java
	api/src/com/cloud/api/response/CapabilitiesResponse.java
	api/src/com/cloud/network/Network.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/network/firewall/FirewallService.java
	api/src/com/cloud/network/lb/LoadBalancingRule.java
	api/src/com/cloud/network/lb/LoadBalancingRulesService.java
	api/src/com/cloud/network/rules/FirewallRule.java
	api/src/com/cloud/network/rules/RulesService.java
	api/src/com/cloud/offering/NetworkOffering.java
	client/tomcatconf/commands.properties.in
	cloud.spec
	core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java
	core/src/com/cloud/hypervisor/xen/resource/CitrixHelper.java
	core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
	core/src/com/cloud/storage/template/DownloadManagerImpl.java
	core/src/com/cloud/vm/DomainRouterVO.java
	debian/cloud-deps.install
	patches/systemvm/debian/config/etc/init.d/cloud-early-config
	patches/systemvm/debian/config/root/ipassoc.sh
	patches/systemvm/debian/config/root/loadbalancer.sh
	scripts/vm/hypervisor/kvm/rundomrpre.sh
	scripts/vm/hypervisor/xenserver/vmops
	server/src/com/cloud/agent/manager/AgentAttache.java
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/agent/manager/AgentMonitor.java
	server/src/com/cloud/agent/manager/ClusteredAgentManagerImpl.java
	server/src/com/cloud/alert/ClusterAlertAdapter.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/cluster/ClusterManagerImpl.java
	server/src/com/cloud/configuration/Config.java
	server/src/com/cloud/configuration/ConfigurationManager.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/deploy/FirstFitPlanner.java
	server/src/com/cloud/ha/HighAvailabilityManagerImpl.java
	server/src/com/cloud/host/dao/HostDaoImpl.java
	server/src/com/cloud/hypervisor/xen/discoverer/XcpServerDiscoverer.java
	server/src/com/cloud/network/LoadBalancerVO.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/FirewallRulesDao.java
	server/src/com/cloud/network/dao/FirewallRulesDaoImpl.java
	server/src/com/cloud/network/element/DhcpElement.java
	server/src/com/cloud/network/element/VirtualRouterElement.java
	server/src/com/cloud/network/firewall/FirewallManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManager.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/rules/FirewallManager.java
	server/src/com/cloud/network/rules/FirewallRuleVO.java
	server/src/com/cloud/network/rules/PortForwardingRuleVO.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/network/rules/StaticNatRuleImpl.java
	server/src/com/cloud/network/security/SecurityGroupListener.java
	server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
	server/src/com/cloud/offerings/NetworkOfferingVO.java
	server/src/com/cloud/server/ConfigurationServerImpl.java
	server/src/com/cloud/server/ManagementServerImpl.java
	server/src/com/cloud/storage/StorageManager.java
	server/src/com/cloud/storage/StorageManagerImpl.java
	server/src/com/cloud/storage/dao/VMTemplateHostDaoImpl.java
	server/src/com/cloud/storage/download/DownloadMonitorImpl.java
	server/src/com/cloud/upgrade/DatabaseUpgradeChecker.java
	server/src/com/cloud/upgrade/dao/Upgrade228to229.java
	server/src/com/cloud/upgrade/dao/Upgrade229to2210.java
	server/src/com/cloud/user/AccountManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
	server/src/com/cloud/vm/dao/DomainRouterDao.java
	server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
	setup/db/create-index-fk.sql
	setup/db/create-schema.sql
	setup/db/db/schema-222to224.sql
	setup/db/db/schema-227to228.sql
	setup/db/db/schema-228to229.sql
	setup/db/db/schema-229to2210.sql
	tools/testClient/README
	ui/scripts/cloud.core.instance.js
	utils/src/com/cloud/utils/SerialVersionUID.java
	utils/src/com/cloud/utils/db/ConnectionConcierge.java
	utils/src/com/cloud/utils/db/Merovingian2.java
	utils/src/com/cloud/utils/db/Transaction.java
	utils/src/com/cloud/utils/nio/Link.java
	utils/src/com/cloud/utils/nio/NioConnection.java
	utils/src/com/cloud/utils/time/InaccurateClock.java
2011-08-22 20:28:30 -07:00
Naredula Janardhana Reddy 4369b0ba96 bug 1067:
- covered basic impelementation for xen, need to test corner cases.
      - Not implemneted: kvm, vmware , listing of egress rules.
2011-08-19 11:10:16 +05:30
alena 803255b0ba bug 11029: db upgrade from 2.2.9 to 2.2.10 includes firewall_rule upgrade now
status 11029: resolved fixed

Commit also includes the following:

* map firewall rule to pf/lb/staticNat/vpn when the firewall rule is created as a part of pf/lb/staticNat/vpn rule creation
* when delete firewall rules, also delete related firewall rule
2011-08-15 10:18:09 -07:00
Alex Huang 6e7ad8830f bug 11043: Propagating fix 2011-08-11 10:30:03 -07:00
Alex Huang 1079a77024 bug 11043: rverted the bad fix 2011-08-11 10:27:02 -07:00
alena 278f2a401f bug 10561: intermediate checkin for enable/disableStaticNat.
1) On enableStaticNat command we actually send the command to the backend (we used to just upgrade the DB in the past). The backend command carries sourceIp and destIp, and creates IP to IP mapping on the domR.
2) On disableStaticNat for the Ip address in addition to cleaning up port ranges, we also delete IP to IP mapping on the domR.
2011-08-11 10:19:22 -07:00
Abhinandan Prateek 9bba09857e bug 10561: readding source cidr changes to firewall rules 2011-08-10 13:52:42 +05:30
keshav 1761024fda Changed RuleTO classes to carry the source VLAN tag. Added guest network gateway to NetworkElementCommand. 2011-08-09 16:38:24 -07:00
alena 6b9603bc4c bug 10561: intermidiate checkin for FirewallRuleFeature
1) Added new apis: createFirewallRule, deleteFirewallRule, listFirewallRules
2) Modified existing apis - added boolean openFirewall parameter to createPortForwardingRule/createIpForwardingRule/createRemoteAccessVpn. If parameter is set to true, open firewall on the domR before creating an actual PF rule there
Modified backend calls appropriately.
3) Schema changes for firewall_rules table:
* startPort/endPort can be null now
* added icmp_type, icmp_code fields (can be not null only when protocol is icmp)
4) Added new manager - FirewallManagerImpl

Conflicts:

	api/src/com/cloud/api/BaseCmd.java
	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
2011-08-09 15:51:56 -07:00
Abhinandan Prateek 311afeae23 bug 10731: reverting back source cidr changes for loadbalancer and portforwarding 2011-08-09 16:01:48 +05:30
Chiradeep Vittal 924961d898 merge nectarine 2011-08-08 21:45:37 -07:00
alena 06d007337a bug 10561: intermidiate checkin for FirewallRuleFeature
1) Added new apis: createFirewallRule, deleteFirewallRule, listFirewallRules
2) Modified existing apis - added boolean openFirewall parameter to createPortForwardingRule/createIpForwardingRule/createRemoteAccessVpn. If parameter is set to true, open firewall on the domR before creating an actual PF rule there
Modified backend calls appropriately.
3) Schema changes for firewall_rules table:
* startPort/endPort can be null now
* added icmp_type, icmp_code fields (can be not null only when protocol is icmp)
4) Added new manager - FirewallManagerImpl
2011-08-08 20:59:40 -07:00
Chiradeep Vittal 8277584b8a merge ELB / nectarine branch 2011-08-08 15:20:56 -07:00
alena 8d47c53735 Revert "bug 10435: removed vpn feature"
This reverts commit ea9e1b5d138950e8de49fce7ffdbb12a1c72c560.

Conflicts:

	api/src/com/cloud/api/ResponseGenerator.java
	scripts/vm/hypervisor/xenserver/vmops
	server/src/com/cloud/configuration/Config.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManager.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2011-08-02 18:12:57 -07:00
Chiradeep Vittal b240c4a645 WIP: make creating an ELB bullet proof 2011-07-27 21:11:26 -07:00
Chiradeep Vittal 042c06fbb6 Make createLoadBalancer async 2011-07-27 12:00:08 -07:00
Chiradeep Vittal cd8e069f80 Acquire an ip and launch an ELB vm 2011-07-27 12:00:07 -07:00
alena d6112b1632 Revert "bug 10373: Intermediate checkin for Domain level guest Virtual networks"
This reverts commit e5c25f3868965e36c4bff1c78ca4552a8c852241.

Conflicts:

	server/src/com/cloud/configuration/Config.java
	server/src/com/cloud/network/NetworkManagerImpl.java
2011-07-21 16:04:55 -07:00
Abhinandan Prateek dff712f2a9 bug 10731: sending source cidrs to the required router element, on domR allowing these source cidrs thru iptables
status 10731: resolved fixed
2011-07-21 13:48:42 +05:30
Abhinandan Prateek de34d6089d bug 10731: sending source cidrs to the required router element, on domR allowing these source cidrs thru iptables
status 10731: resolved fixed
2011-07-21 13:40:06 +05:30
alena 36edf298e7 bug 10373: Intermediate checkin for Domain level guest Virtual networks 2011-07-20 13:44:26 -07:00
Abhinandan Prateek 57f41a3a05 bug 10731: added optional paramter source cidr 2011-07-19 12:21:39 +05:30
Abhinandan Prateek 24510cd5fb bug 10731: adding optional paramter for cidr 2011-07-19 12:10:48 +05:30
Sheng Yang 44d4113ae6 bug 10429: backport redundant router
Part 2

commit 797839360c65cd348d2eb20630521177ab0919de
    bug 9154: redundant virtual router

commit 8ff7f230204d4d3a7a4adee75523a9a84f4276fe
    bug 9154: Replace domain_router.is_master with domain_router.redundant_state in DB

commit 230b99e9e0b152648f1dd2a5eab6f22315b8e7b4
    bug 9154: Add redundant state to DomainRouterResponse

commit ccefb5ff5e83d713798a347c99bce1a0d04b4317
    bug 9154: Add router fault state report

commit 7a3090378f9785caecf741b70554f6ea17c41764
    bug 9154: Send alert if found two virtual routers in master state

commit 66831056e4bf27665871bccd24e6159071564847
    bug 9154: Code clean up

commit bf3f58a85741fa7118bd848a42d8b21baa4478d4
    bug 9154: Add isRedundantRouter to DomainRouterResponse
2011-07-18 18:30:02 -07:00
alena 74f34a0e0c bug 10435: removed vpn feature
status 10435: resolved fixed
2011-06-24 09:18:46 -07:00
Sheng Yang 6e405efe01 bug 10311: Update UpdateNetworkCmd, allow change networkOfferingId
And restart/re-implement the network if networkOfferingId is changed.
2011-06-22 15:30:39 -07:00
Sheng Yang be216bf975 bug 9154: Add redundancy capability to VirtualRouterElement
Also move redundancy checking to VirtualRouterElement
2011-06-20 14:47:22 -07:00
Sheng Yang 9466106c40 bug 9154: Add isRedundantRouter to DomainRouterResponse 2011-06-15 14:39:28 -07:00
kishan ed6809c53d bug 8144: Added event for router start/stop and reboot
status 8144: resolved fixed
2011-06-15 12:40:23 +05:30
Sheng Yang 6f0edd9541 bug 9154: Add router fault state report 2011-06-14 20:33:18 -07:00
Sheng Yang 07a61686db bug 9154: Add redundant state to DomainRouterResponse 2011-06-14 19:31:24 -07:00
Sheng Yang aef562c69d bug 9154: Replace domain_router.is_master with domain_router.redundant_state in DB
Then we can distingush BACKUP state from UNKNOWN state(which means we didn't get
valid answer from CheckRouterCommand).
2011-06-14 18:48:56 -07:00
kishan 0629592caf bug 8144: Added event for router start/stop and reboot
status 8144: resolved fixed
2011-06-14 14:24:52 +05:30
alena 53bdd625b8 bug 9579: allow domain name suffix update for existing networks.
Block update only in these cases:

* when DNS capability AllowDnsSuffixModification is false for the network
* when target network has running network elements (dhcps or domRs)

Conflicts:

	server/src/com/cloud/vm/dao/DomainRouterDao.java
	server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
2011-06-09 16:24:48 -07:00
alena b9325a28dd bug 9579: allow domain name suffix update for existing networks.
Block update only in these cases:

* when DNS capability AllowDnsSuffixModification is false for the network
* when target network has running network elements (dhcps or domRs)
2011-06-09 16:10:24 -07:00
Alex Huang bc67b2a973 bug 9651: update now also shows tags 2011-06-01 17:50:04 -07:00
Alex Huang 0dfc44582b bug 9651: Adding network tags
Also changes in Request logging.
2011-05-23 15:51:50 -07:00
Abhinandan Prateek d752a94838 bug 8115: Source IP filtering in Virtual Router
Passing the additional source cidrs paramter to the xapi.
2011-05-12 13:37:43 +05:30
keshav 435e178eef Added a new service to enabled zone-wide, shared source NAT rules. 2011-05-11 15:35:26 -07:00
Abhinandan Prateek 2984b0607f bug 8115: source ip filtering
Created a table for source cidrs list.
Created necessary Daos and VOs.
Updated PortForwardingRulesDao to persist/update non null list of cidrs.
For deletion depending on ON DELETE CASCADE.
2011-05-09 17:41:50 +05:30
alena 41e5e38fef bug 9336: securityGroups can be used by other securityGroups in the same domain only; no cross domain SG authentication
status 9336: resolved fixed

Following changes were made:

* deleteSecurityGroup/authorizeSecurityGroupIngress - removed account/domainId parameters as SG is uniquely identified by id now
* removed account_name field from securityGroup DB table; removed allowed_security_group/allowed_sec_grp_acct from security_ingress_rule.
These values were used for api response generation only for performance purposes; added caching on API level to improve performance
* Added missing security checks for securityGroups/ingressRules
2011-04-22 11:35:29 -07:00
alena 1a6d78eae4 Code cleanup. No need to declare runtime exceptions (CloudRuntimeException, InvalidParameterException, PermissionDenied exceptions) 2011-04-21 16:26:53 -07:00
alena c844655825 bug 9488: throw InsufficientVirtualNetworkCapcityException when fail to allocate guest vnet as a part of network implement() call
status 9488: resolved fixed
2011-04-21 13:59:06 -07:00
Frank 92155522f2 Add license header to files 2011-04-14 11:23:14 -07:00
Frank 105db3b15a Merge branch 'baremetal' to master
modifies:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/commands/AddHostCmd.java
	api/src/com/cloud/api/commands/CreatePodCmd.java
	api/src/com/cloud/api/commands/DeployVMCmd.java
	api/src/com/cloud/dc/Pod.java
	api/src/com/cloud/network/NetworkService.java
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/dc/HostPodVO.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	setup/db/create-schema.sql
	utils/src/com/cloud/utils/SerialVersionUID.java
2011-04-11 14:21:41 -07:00
alena bf588166ed bug 7704: network limits cleanup.
status 7704: resolved fixed

For user vm:
* for default network, take limit from the corresponding service offering
* for all additional networks, take limit from the network offerings

For domainRouter/SSVM/CPVM:
* get info from the network offering

Added new config parameter: "vm.network.throttling.rate". If nw_rate is NULL for serviceOffering, this parameter would be used for default vm's network
2011-04-01 15:48:32 -07:00
alena 718386a2b6 bug 8862: added updateNetwork api command. Can update name/displayText only 2011-03-22 11:26:56 -07:00
alena e9a10c53dc bug 8831: added 2 new parameters to create/listNetworks api: "isdedicatedtodomain" and "dedicateddomainid" 2011-03-22 10:17:08 -07:00
alena 7c1a6e4884 bug 8831: API/Management server part is done for "Dedicate Network to domain". UI part is left 2011-03-21 18:17:59 -07:00
alena 96e83fe97f bug 8146: Elastic IP support in Basic zone.
Following was done as a part of checkin:

1) NetworkOffering/Network:

* add PF service support for default Guest network offering.
* Add one more additional network - Public.
* Allow to enable external firewall in Basic zone.

2) Don't allow to deployVm in Public Network.
3) Allow to add vlan ip ranges to Public networks in Basic zone.
4) Associate IP - allow to associate with Direct vms.
5) Allow to create PF/Static nat rules. Rules are being sent to External Firewall Rule only.
6) Add PF support to External Firewall element.
2011-03-17 17:19:36 -07:00
alena d2f92f1c76 bug 8973: Create Virtual Guest network as a part of deployVm if corresponding networkOffering has availability=Required and no networkIds are specified
status 8973: resolved fixed
2011-03-15 15:06:52 -07:00
Frank 6c819c1491 Merge branch 'bareMetal'
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/commands/DeployVMCmd.java
	api/src/com/cloud/offering/ServiceOffering.java
	api/src/com/cloud/vm/UserVmService.java
	client/tomcatconf/components.xml.in
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/deploy/FirstFitPlanner.java
	server/src/com/cloud/service/ServiceOfferingVO.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
2011-03-08 14:18:11 -08:00
alena 5842392ec1 bug 8146: Multiple network case (default network is Virtual) - for Direct networks dhcp servers set dns to the eth0 ip address of the domR belonging to virtualNetwork
bug 8146: resolved fixed
2011-03-07 19:56:25 -08:00
alena b3ff533244 bug 8795: start domR after corresponding network is shutdown - implement network before starting the domR
status 8795: resolved fixed

Conflicts:

	api/src/com/cloud/deploy/DeployDestination.java
2011-03-02 13:46:57 -08:00
alena 62b3d548d6 bug 8753: never release public Ip address without ensuring that all corresponding resources (PF/StaticNat/Lb rules) are cleaned up.
Fixed couple of other problems along:

* when expunge PF/Static nat rules as a part of vmExpunge/IpRelease process, first mark all rules as Revoke, and then send commands to the backend. Group commands by Ip address.
Before we used to do Revoke/Send per rule basis.
* When release source nat rule, make sure that corresponding vpn (if exists) is being expunged.
2011-02-28 09:21:05 -08:00
Frank 5035778b1a Bug 8208 - bare metal provisioning
StartCommand cloud reach to BareMetalResrouce
2011-02-24 19:22:34 -08:00
alena 1f1e393b03 Release vnet during network shutdown for guest networks only 2011-02-23 18:50:23 -08:00
Edison Su adbd20ca5a bug 8655: add security group for direct tagged network 2011-02-23 15:53:14 -05:00
keshav ed465500a2 Added capability to keep track of what IPs a load balancing rule can be made on. 2011-02-23 11:44:14 -08:00
alena 15f59e6f58 bug 8637: throw ResourceAllocationException when resource limit is exceeded.
status 8637: resolved fixed
2011-02-18 12:26:58 -08:00
alena 504ab73ae5 Sync on network instead of ipAddressId when do create PF/StaticNat/LB rules 2011-02-17 16:13:28 -08:00
alena 8978839d96 bug 8617: Disable firewall/lb/vpn service for Direct network offering, so when user tries to create PF/LB rule for direct IP address, it fails.
status 8617: resolved fixed
2011-02-17 14:31:05 -08:00
alena d80caf24fd bug 8564: Changed implementation for static nat rules. Now we use separate interfaces instead of PortForwardingRules interfaces.
status 8564: resolved fixed
2011-02-15 10:45:28 -08:00
Alex Huang 7dd54f079b started vms with these latest 2011-02-11 17:03:04 -08:00
Alex Huang b92fc074aa added forced paramter to stop apis 2011-02-08 15:38:26 -08:00
alena 0082b8435a Fixed account security checks for domain admins in following commands:
* listPortForwardingRules
* listIpForwardingRules
* listRemoteAccessVpns
* listVpnUsers
2011-02-07 16:24:34 -08:00
Alex Huang 86e51eb536 Made changes to the exceptions thrown by NetworkManagerImpl 2011-02-04 11:56:20 -08:00
alena 84fef40ce2 Refactored "allocate vlan to account" code 2011-02-04 09:54:16 -08:00
alena 6f55c4dd7e bug 8270: Synchronize on 1) ipAddress object when create/delete ipForwarding/portForwardingRule and vpn service 2) on networkId when assignTo/removeFrom/deleteLoadBalancer
status 8270: resolved fixed
2011-02-03 18:45:49 -08:00
keshav 66cb75ded3 Changed external network provider names to be model specific. 2011-02-03 11:55:39 -08:00
alena 6544820e74 Moved networkRestart to the NetworkManager as it's up to the manager (not network elements) to decide what to do on restart (IpAssoc/ruleApply/etc..) 2011-02-01 12:16:19 -08:00
alena f6f8a35c75 bug 8251: introduced "id" field for public IP address. In the DB id is a primary key in user_ip_address table; ip_address and source_network_id is a composite key
status 8251: resolved fixed
2011-02-01 12:16:18 -08:00
alena 52dd679d95 bug 8185: fixed java part of password reset feature. There are still changes needed in backend scripts (bugs 8253 and 8254 are filed separately)
status 8185: resolved fixed
2011-01-27 17:24:09 -08:00
alena 77e89b72ca bug 8187: retreive DNS information from DataCenter instead of resetting it for the network. After the DNS is reset, all networks in the zone have to be restarted. Console proxy and secondary vm should be restarted too.
status 8187: resolved fixed
2011-01-26 19:08:56 -08:00
alena 402506e8a0 Disable static nat for the IP address when corresponding vm gets expunged 2011-01-26 14:17:08 -08:00
alena 731e78937f Added 2 new api commands for 1-1 nat feauture: enable/disableOneToOneNat. Here is the 1-1 nat api summary:
* to enable 1-1 nat for ip/vm use enalbeOneToOneNat api
* to open port range (or multiple port ranges) use createIpForwardingRule api.
* to delete one port range use deleteIpForwardingRule api.
* to disable 1-1 nat use disableOneToOneNat api.
2011-01-26 09:35:32 -08:00
alena a96f8f9575 Refactored 1-1 NAT feature:
* added new fields to createIpForwardingRule api: startPort/protocol - required, endPort is optional
* updated "firewall_rules" table with a new field "is_one_to_one_nat" (being set when new rule is created)
2011-01-25 14:43:32 -08:00
alena 3a008ee699 Changed restartNetwork command flow:
* API requires network id to be passed in (it was optional before)
* restartNetwork calls restart() method of all network elements in the system, and it's up to the element to decide which actions to take on the restart (for example, for Virtual Router it's IPAssoc/applyPF/applyLBRules).
2011-01-24 18:37:57 -08:00
Alex Huang 9d3eedaf01 removed gateway and guestzonemacaddress from domr 2011-01-24 17:50:32 -08:00
Alex Huang 3dd7301fb2 removed unused gateway 2011-01-24 17:50:32 -08:00
Alex Huang 68464d6f66 removed unused dns 2011-01-24 17:50:32 -08:00
Alex Huang fc33ef2be2 Removed several unused fields after the refactoring 2011-01-24 16:18:40 -08:00
Frank 38ab26bcb0 ovs tunnel network -- add lock entry in ovs_tunnel_account 2011-01-24 13:47:34 -08:00
Frank 276e37115b open vswitch - Implement gre tunnel based network that doesn't use vlan
it allows cross zone communication and no 4096 limitation introduced by vlan
2011-01-21 17:32:02 -08:00
Alex Huang 57def20cf6 moved all agent commands to api. 2011-01-20 09:54:05 -08:00
kishan fa2ae5793a bug 7341: introduced search by id and vmId for listIpForwardingRules
status 7341: resolved fixed
2011-01-19 13:13:09 +05:30
alena 632d3c67f1 bug 6689: release source nat ip address as a part of domR/dhcp destroy
status 6689: resolved fixed

Changes to destroyNetwork process. Here are the steps:
* shutdown network - shutdowns all network elements (domRs/Dhcps)
* delete network - destroy all network elements, cleanup network's resources (vlans, ip ranges), mark network with Destroyed state and set Removed field
2011-01-18 19:31:04 -08:00
alena 877741030c bug 7957: set network domain for domain router based on Network networkDomain parameter. Default networkDomain is "cloud.internal"
status 7957: resolved fixed
2011-01-13 11:57:29 -08:00
alena 5dfe399c1a bug 7803: introduces new parameter "is_default" for the network. DeployVm requires 1 default network to be specified, other networks (if any) have to be secondary
status 7803: resolved fixed

Fix overview:

1) Parameter "isDefault" should be defined as a part of createNetwork
* Virtual network is always default
* Parameter can be specified only for DirectNetwork
* Once parameter is set, there is no way to change it as we don't provide updateNetwork command.
2) Added isDefault parameter to listNetworks command so you can sort by that.
3) DeployVmCmd:
* at least one default network should be set
* if more than 1 default network is set - throw an error
4) Return isDefault information as a part of Nic object for the vm response in deploy/stop/start/listVm
2011-01-11 14:22:26 -08:00
Frank c6683c2eab bug 7722: open vswitch -
refine ovs plugin, create a separate plugin instead of messing with vmops
refine gre tunnel, maintains tunnel in database instead of plugin
fix an arp issue cause by overlap vlan range
2011-01-11 02:55:36 -08:00
Frank ec643c7e59 bug 7722: open vswitch - refine code; add normal flow makes vswitch work as
normal L2/L3, otherwise the output packet cannot find right output port
2011-01-08 16:28:47 -08:00
Frank 6f9f8b145b bug 7722: open vswitch - complete 2011-01-08 16:28:47 -08:00
Frank 9d2916ffcc it works 2011-01-08 16:28:47 -08:00
Frank 5c01c42ba7 fix bug 7722, code complete basic architecture 2011-01-08 16:20:39 -08:00
alena d0687f663f bug 7863: fixed router cleanup thread
status 7863: resolved fixed

Router cleanp thread is fixed, here is functionality description:

* Runs every "router.cleanup.interval" period of time (1 day by default)
* Stops only domRs running in Advance zone
* Thread Flow:
- gets all Running domRs/dhcps, get their networks, select network that
has to be checked (see criteria below):
- checks that there is only one nic in the op_networks table for the
network, and this nic belongs to domR/dhcp
- Stops domR/dhcp
* Criteria to choose the network:
- Network has to be non-system.
- Network should be one of the following: Guest Virtual (TrafficType=Guest; GuestType=Virtual); Direct Tagged (TrafficType=Public; GuestType=Direct)

Couple of other fixes:

* Added isShared parameter to listNetworks command
* Moved guestType from NetworkOffering to Network
2011-01-07 16:57:47 -08:00
alena 916b516d13 bug 7878: Fixed Basic zone functionality - uservm/systemvm/domR start
status 7878: resolved fixed
2011-01-06 15:44:13 -08:00
alena 0b7a15ab99 bug 7348: reapply PortForwardingRules (including 1-1 Nat), LB rules, Vpn as a part of domr Stop/Start
status 7348: resolved fixed

More fixes:
* Update user_statistics on each domR stop/reboot
* Reset dhcpData/userData as a part of domR stop/reboot
* More logging for domR commands
2011-01-03 23:00:05 -08:00
Alex Huang a10ce22f99 remote access vpn from management server side is done 2010-12-29 12:13:35 -08:00
Alex Huang 544fa7ff1b remote access vpn, user ip address changes 2010-12-29 09:32:54 -08:00
alena 085824d524 1) Updated schema for data_center - provider fields can have NULL values.
2) Fixed deletePortForwarding/deleteIpForwardingRule commands to return false when delete rule fails.
2010-12-28 16:22:36 -08:00
kishan 53d3455cbe bug 7504: Events refactoring 2010-12-24 12:58:32 +05:30
alena 928ab98dc6 Added new network Capability "TrafficStatistics" for LoadBalancer and Firewall services 2010-12-23 15:06:37 -08:00
alena eb1f1da035 Assert when capability is not supported by service 2010-12-23 11:52:44 -08:00
alena 3775ba043e Added Services (dhcp, gateway, portForwarding, etc.) to NetworkOffering. 2010-12-23 09:40:15 -08:00
alena ec9260ce62 bug 7619: Added list of Capabilities parameter for Network
status 7619: resolved fixed
2010-12-22 11:05:31 -08:00
Chiradeep Vittal cc5dea49dc Add RemoteAccessVpn service 2010-12-21 11:04:27 -08:00
Alex Huang 0ecb0118ec renamed the domainrouter services 2010-12-21 03:56:01 -08:00
Alex Huang 356526db83 Changed exception code to give the scope of the problem 2010-12-21 03:54:30 -08:00
alena 724b8d80bd Don't allow to remove a network with deleteNetwork api when the network has active nics assigned 2010-12-20 20:20:09 -08:00
abhishek 5eae8923b1 commenting out this assert for now as it might break code 2010-12-17 19:53:40 -08:00
abhishek a54c5e8949 fixing the issue wherein public network guru failed to get ip address for direct network in case of security groups 2010-12-17 16:16:51 -08:00
alena 0049c74a5e 1) Different format for LoadBalancerCommand.
2) When apply lb rule for domR, resend all lb rules belonging to the lb network
2010-12-17 09:37:13 -08:00
abhishek 5154ba1539 bug 6361: this is a good point to commit; 1st round of refactor is done, code is clean compiling and ms is deploying 2010-12-16 15:37:19 -08:00
Alex Huang 39cc371e78 network gc 2010-12-16 14:03:21 -08:00
alena d427cdae1e 1) Return associatedIpAddress in listPublicIpAddresses command.
2) Disabled create/deleteNetworkOffering API commands
2010-12-16 12:07:09 -08:00
alena c1db5b6fc0 1) Fixed associate/disassociateIP address commands. The procedure is changed from 2.1, right now on single ipAssoc command we get a new ip and reapply all exising ip associations.
2) Added restartNetwork API command. Currently the command reapplies ip addresses for the network. TODO - reapply PF/LB rules and restart the domR.
2010-12-15 11:39:30 -08:00
alena d673686f5f Added Availability field for NetworkOffering. Added updateNetworkOffering API command 2010-12-13 18:28:33 -08:00
alena c7a9267225 Delete network as a part of account cleanup 2010-12-13 10:47:10 -08:00
alena 88d6ff2136 bug 7467: release IP address works now.
status 7467: resolved fixed

Fixed all load balancer commands to work with the latest networking code
2010-12-10 15:12:32 -08:00
keshav d9f5e63f69 Added a constructor for LoadBalancerConfigCommand, and a variable to keep track of a list of destinations. 2010-12-09 21:28:10 -08:00
keshav 198cab4dee Added support code for external firewalls and loadbalancers. Added new host types and startup commands, and enabled NicVO to reserve IPs for external network resources. 2010-12-09 11:40:02 -08:00
alena 1f7d74dbec 1) Disabled updatePortForwardingRule api command.
2) Added vm information (id, name, display_text) to all port forwarding rule responses.
2010-12-08 14:28:37 -08:00
Alex Huang 2c42ebbf71 ip assoc working 2010-12-08 09:03:34 -08:00
Alex Huang f794abfdef ip addresses are now separated from domR 2010-12-08 09:03:34 -08:00
alena 954756d69b Introduced new NetworkElement - DhcpElement. 2010-12-07 13:47:59 -08:00
Alex Huang a87aac2640 missing file 2010-12-06 15:24:32 -08:00
Alex Huang f147bf5f94 start vm not working again 2010-12-06 14:17:53 -08:00
Alex Huang fcdd20ca06 more checkin 2010-12-06 14:17:53 -08:00
Alex Huang 16caf1954b New ip address states and mode 2010-12-04 17:32:32 -08:00
alena 150d684e05 1) isShared attribute belongs to Network now, not NetworkOffering
2) Added list by networkId support to listVirtualMachines command.
3) Implemented search by zoneId in listNetworks command
2010-12-03 19:07:08 -08:00
Alex Huang a8b617c596 port forwarding is now in 2010-12-03 08:48:03 -08:00
Alex Huang b859e103d8 ip nat rule forwarding done 2010-12-03 08:48:03 -08:00
Alex Huang 9a70ee54f0 portforwarding is working 2010-12-03 08:48:03 -08:00
Alex Huang 223688d0bf Port forwarding rules and load balancing rules rewrite 2010-12-03 08:48:02 -08:00
alena f8a687ab23 1) Implemented create/list/deleteNetworkOffering create/delete/listNetwork APIs.
2) Added networkIds parameter to deployVMCmd - accepts list of networks ids separated by coma.
3) Changed domainRouter/systemVm/userVm response to return list of Nics associated with the vm.
2010-12-02 19:30:17 -08:00
Alex Huang 1e44925564 api refactoring 2010-11-21 12:00:21 -08:00
Alex Huang bb843ab1fb missing file 2010-11-19 15:48:40 -08:00
Alex Huang 5b4a6f27db Changed networkconfigurations to network as per Sheng's suggestion 2010-11-19 15:44:42 -08:00
Alex Huang 17afeade00 better componentslocator 2010-11-16 04:28:14 -08:00
Alex Huang 94250c1330 committing to update 2010-11-11 12:53:19 -08:00
Alex Huang aca8ef79cd a bunch of other changes for network refactoring 2010-11-08 12:29:37 -08:00
Alex Huang 5f90a8adb0 Checking in to do git pull...stupid git 2010-11-05 16:10:22 -07:00
Alex Huang d5d1808488 Added reservation context to the network gurus 2010-11-05 16:10:22 -07:00
Alex Huang e27bb550fe Harmony among gurus 2010-11-03 21:18:31 -07:00
Alex Huang 6311644e08 Successful creation of domr and uservm with all programming done correctly.....yahooo 2010-11-02 12:25:08 -07:00
Alex Huang 14f80f2e13 domain router up and running...now on to patching through the network between the domain router and the vm 2010-10-29 12:16:58 -07:00
Alex Huang 4f9f249218 make console proxy work again with the new network configuration 2010-10-26 17:37:29 -07:00
Alex Huang f58063911e deploy vm completed 2010-10-26 09:35:24 -07:00
Alex Huang d5d8f27cad Added more changes to the api 2010-10-21 15:11:49 -07:00
Alex Huang 2da8035bd1 more changes for the rewrite 2010-10-19 11:52:02 -07:00
Alex Huang 794ca16a65 Added code to start domR 2010-10-19 11:52:01 -07:00
Alex Huang c443867f28 more changes 2010-09-27 15:14:38 -07:00
root 979fcf8b78 finalized guru design 2010-09-22 10:44:00 -07:00
Alex Huang c0d8422d69 more changes 2010-09-22 10:43:59 -07:00
Alex Huang 22652e7ace got the vm created 2010-09-22 10:43:59 -07:00
Alex Huang 8acba8fbd1 more checkins 2010-09-22 10:43:59 -07:00
Alex Huang bebe79ebc9 more work from alex 2010-09-17 13:37:53 -07:00
Alex Huang 327924a9ad More changes for refactoring 2010-09-15 18:00:54 -07:00
root 077690cf15 switched from networkprofile to network configuration 2010-09-09 17:48:24 -07:00
Alex Huang 6134f7dfd2 more file changes 2010-09-09 11:52:12 -07:00
Alex Huang 415bc8ae20 bug 5764: checkin before I switch to work on 2.1.x 2010-08-24 14:40:29 -07:00
Alex Huang 20b26082db bug 5764: changing from networkoffering to network profile 2010-08-24 00:00:43 -07:00
Manuel Amador (Rudd-O) 05c020e1f6 Source code committed 2010-08-11 09:13:29 -07:00