Commit Graph

54 Commits

Author SHA1 Message Date
Alena Prokharchyk b8b7d06f15 VPC: don't send staticRoutes in Revoke state to the VPC VR 2012-07-11 10:51:20 -07:00
Alena Prokharchyk a3424cf8a0 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:02:44 -07:00
Alena Prokharchyk 08b9b3bc5b VPC: CS-15505 - allocate guest nics when new VR starts in VPC 2012-07-09 18:08:44 -07:00
Alena Prokharchyk c49cc27b1c VPC: CS-15485 - dont' create a record for VPC VR private gateway nic in router_network_ref; do it for regular guest networks only 2012-07-06 14:54:25 -07:00
Alena Prokharchyk 9d88781e8c VPC: implementation for Add/delete/list StaticRoute. Agent implementation is yet to be done 2012-06-26 11:11:26 -07:00
Alena Prokharchyk b8f67f0249 Vpc: fixed the network shutdown happening as a part of GC thread for VPC networks 2012-06-19 14:30:50 -07:00
Alena Prokharchyk cf1882a2c8 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-10 12:31:47 -07:00
Alena Prokharchyk 460bab4a7d Support for adding private network 2012-06-05 10:57:29 -07:00
Alena Prokharchyk aa0c0cb260 Added support for network shutdown in VPC guest networks 2012-05-24 15:33:52 -07:00
Alena Prokharchyk 2014cb0feb Plug nic support 2012-05-23 16:18:41 -07:00
Alena Prokharchyk 9fb9149c99 1) Added new element - VpcVirtualRouterElement. Extends VirtualRouter + has plug/unplug nics support
2) Added services api support for plugging/unplugging the nics to VpcElement
2012-05-22 16:53:27 -07:00
Alena Prokharchyk e4458cf5b7 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
2012-05-21 14:29:34 -07:00
Alena Prokharchyk 0e1b5901dc Set networkId as a join parameter in DomainRouterDaoImpl as networkId was moved to the helper table 2012-05-18 18:26:44 -07:00
Alena Prokharchyk 492e41c462 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-05-18 17:25:04 -07:00
Salvatore Orlando 8c398654d3 Open vSwitch tunnel manager
Applying patch with new ovs-tunnel-manager on top of cloudstack oss-master

Conflicts:

	api/src/com/cloud/network/ovs/OvsCreateTunnelAnswer.java
2012-04-24 02:20:37 +01:00
frank 72d284de7d Switch to Apache license 2012-04-03 04:54:14 -07:00
Sheng Yang 9b8f96c06d NaaS: Merge Role.DHCP_USERDATA and Role.DHCP_FIREWALL_LB_USERDATA to Role.VIRTUAL_ROUTER 2011-11-09 17:09:17 -08:00
Sheng Yang 3de3fc69d2 NaaS: Implement shutdownProviderInstances for virtual router 2011-11-03 13:44:26 -07:00
alena d315e57b0e Renamed "type" to "guestType" 2011-10-27 16:51:42 -07:00
alena 75c8e33226 Removed guestIpType from network/networkOffering 2011-10-24 17:05:00 -07:00
kishan f9d5a46871 Compare current and previous network stats before updating. Ignore stats if the current stats are not same as the prev stats. Set NetworkUsageAnswer log level to debug 2011-09-05 18:41:42 +05:30
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
Sheng Yang 843e41752f Update redundant router status even router is down
We need to update the status to UNKNOWN if router is down(also ensure we can't
contact the router if the state is Stopped in our database).
2011-08-18 22:51:23 -07:00
Sheng Yang a961dd913f Update redundant router status even router is down
We need to update the status to UNKNOWN if router is down(also ensure we can't
contact the router if the state is Stopped in our database).
2011-08-18 22:51:13 -07:00
Chiradeep Vittal 8277584b8a merge ELB / nectarine branch 2011-08-08 15:20:56 -07:00
Alex Huang f043f63eaa Merged changes from 2.2.8.zucchini 2011-08-02 15:33:48 -07:00
Chiradeep Vittal 07c2f6cdc7 differentiate between dhcp server and elb vm 2011-07-27 12:00:07 -07:00
alena 3167c49687 bug 10736: when deploy vm in Basic zone, 1) send vmData/Password info to the Dhcp running in the same pod 2) send dhcp information to all pods in the system only when network.dns.basiczone.updates has "all" value
status 10736: resolved fixed
2011-07-20 16:50:58 -07:00
alena e2eac341a4 bug 10710: Basic zone setup - send dhcp entries to all domRs (in every Pod) only when network.dns.basiczone.updates is set to "all"
status 10710: resolved fixed

Conflicts:

	server/src/com/cloud/configuration/Config.java
	server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
	setup/db/db/schema-228to229.sql
2011-07-19 10:33:34 -07:00
Sheng Yang 978b2640e2 Backport VirtualNetworkApplianceManager
Also:
1. Discard VPN related change.
2. Add network.dns.basiczone.updates in Config.java
3. Add findByNetworkOutsideThePod() for DomainRouterVO

Tested with VLAN and basic mode, works.

Disable redundant virtual router temporaily, would enable it after more testing.
2011-07-18 18:30:05 -07:00
Sheng Yang 4bc8686513 bug 10429: Backport redundant virtual router
Part 1

This backport contained:

commit 52317c718c25111c2535657139b541db0c9d1e1f
    bug 9154: Initial check in for enabling redundant virtual router

commit 54199112055d754371bfb141168fb5538bf6d6ea
    Add host verification for CheckRouterCommand

commit cef978a228c90056ead9be10cbc4de74c2b8de76
    Fix CheckRouterAnswer's isMaster report

commit 4072f0a6991ac3b63601a1764fbe14188965f62f
    Some build fixes and code refactoring for redundant router

commit 4d3350b7cd8ee2706a9bace4437fc194e36c8dd5
    Redundant Router: Fix OVS

commit 6a228830e7c46d819fa0c3317e159e041337e887
    Fix findByNetwork()/findByNetworkAndPod()'s return

commit c627777b3d5bdbcd60db4032cebd349a5b1ecd83
    Redundant Router: Fix isVmAlive()

commit e1275d2514adc41f8744f5107d4069c38be195f1
    Only issue CheckRouterCommand to redundant routers

And all modification to the scripts till
commit 4e3942462ed3fde3a3d7011e95839e2128fba514
logging changes

in the master branch.
2011-07-18 18:29:56 -07:00
alena 731c3bc20a bug 10710: Basic zone setup - send dhcp entries to all domRs (in every Pod) only when network.dns.basiczone.updates is set to "all"
status 10710: resolved fixed
2011-07-14 16:28:13 -07:00
kishan dfd3e128f5 bug 8879: Send network usage command for domain routers in Running state only
status 8879: resolved fixed
2011-06-15 14:17:30 +05:30
kishan 675ffe23e8 bug 8879: Send network usage command for domain routers in Running state only
status 8879: resolved fixed
2011-06-15 14:13:50 +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
Sheng Yang 62ac899091 bug 9154: Initial check in for enabling redundant virtual router
This patch enable redundant virtual routers.

1. To enable this feature, db need to be updated using follow SQL by now(we
would get a UI way later):

UPDATE network_offerings SET redundant_router=1 WHERE guest_type="Virtual" AND
system_only=0;

2. System would try to start up two routers at different hosts. But if there is
only one host in the zone, system would start up two routers on it.

3. The failover part is using keepalived, and connection tracking part is using
conntrackd. There would be one master router and one backup router. The status
of router(master or backup) can be query from the database table domain_router
now. Management server would update the status every 30s by default.

4. The routers for the same zone would use same external NIC(same ip and mac).
The script used for fail-over would ensure only one external NIC present in the
network at any time.

5. Currently management server don't got the ability to stop one of router is
both of them reported as master. The feature is in the todo list.

After two routers start up, disconnect anyone of them, the guest network
shouldn't be affected, and established connection(http, ssh, etc.) should still
works. The fail-over on gateway part should be 3~4 seconds.

Currently the patch works with KVM. Would deal with vmware and XenServer soon.
2011-06-07 14:47:45 -07:00
Alex Huang d9e0bcfa1e bug 10126: Renamed getPodId() to getPodIdToDeployIn() 2011-06-03 22:17:08 -07:00
Alex Huang 0ab12edd6c network tagging changes 2011-05-31 09:49:27 -07:00
kishan 77e48b8683 bug 9678: update user statistics in cloud_usage. Send network usage command to routers of virtual network only
status 9678: resolved fixed
2011-05-04 02:38:25 +05:30
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 b322fb072f bug 8186: Changed the investigator to use the new networking 2011-02-07 16:04:23 -08:00
Edison Su fc97034000 refactor vmstatelistener 2011-01-26 11:01:43 -05:00
Alex Huang 68464d6f66 removed unused dns 2011-01-24 17:50:32 -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
Alex Huang 4eba6d10d7 Moved State into VirtualMachine like other States of objects 2011-01-04 15:01:34 -08:00
alena 21bb9df292 Fixed accountCleanup to release all public ip addresses and delete the corresponding networks. 2010-12-20 20:20:09 -08:00
abhishek 5e61be67fd fix bugs in allocator 2010-12-13 16:42:25 -08:00