Commit Graph

281 Commits

Author SHA1 Message Date
Chiradeep Vittal b240c4a645 WIP: make creating an ELB bullet proof 2011-07-27 21:11:26 -07:00
Chiradeep Vittal 2447830c55 fix network type check 2011-07-27 12:00:07 -07:00
Chiradeep Vittal cd8e069f80 Acquire an ip and launch an ELB vm 2011-07-27 12:00:07 -07:00
Sheng Yang 8d2e41abd1 bug 10429: Enable redundant virtual router for 2.2.9
status 10429: resolved fixed
2011-07-19 15:06:20 -07:00
Sheng Yang 0449ba6c8c Fix restartNetwork command on destroying virtual router 2011-07-19 11:56:02 -07:00
Sheng Yang aa8fc81790 Fix restartNetwork command on destroying virtual router 2011-07-19 11:55:16 -07:00
Sheng Yang 3100d4b22f Update RestartNetworkCmd to reimplment the network
Because the redundant router config may change.

Back port from 8c7c9a4b499ceee8a07f1f3a2b908d4a128aef32 partly.
2011-07-19 10:53:21 -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 0d84cde633 bug 10409: added domainSuffix parameters to account/domain objects 2011-07-15 14:40:39 -07:00
alena 21afc889d0 bug 10438: always return success on disableAccount when it got disabled successfully in the DB. If his vms failed to stop on the backend, mark account for cleanup and let background thread to do the cleanup job
status 10438: resolved fixed
2011-07-15 14:27:58 -07:00
kishan b8a19e73af bug 6128: Throw exception when applying port forwarding rule fails
status 6128: resolved fixed
2011-07-12 16:41:17 +05:30
alena 50dce6d5a0 bug 10438: always return success on disableAccount when it got disabled successfully in the DB. If his vms failed to stop on the backend, mark account for cleanup and let background thread to do the cleanup job
status 10438: resolved fixed
2011-07-11 17:45:50 -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 470c80a2c6 bug 9154: Update addVirtualMachineIntoNetwork to accept routers as parameter 2011-06-20 14:47:22 -07:00
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 872116890b Fix findByNetwork()/findByNetworkAndPod()'s return
Add null check and some missed empty check.
2011-06-08 11:45:42 -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
Frank 92155522f2 Add license header to files 2011-04-14 11:23:14 -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
Frank ffb900fc86 Bug 8208 - bare metal provisioning
Add useExternalDhcp option to createPodCmd
2011-03-14 16:42:59 -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 f395005e0a bug 8781: set dhcp/dns/userData providers to be DhcpServer in Basic zone; all other providers have to be null
status 8781: resolved fixed
2011-03-01 09:00:47 -08:00
Frank 5035778b1a Bug 8208 - bare metal provisioning
StartCommand cloud reach to BareMetalResrouce
2011-02-24 19:22:34 -08:00
alena c11a9c18e2 bug 8381: disassociateIpAddress is async now 2011-02-15 12:24:18 -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
alena 3328ec5d2d Fixed the bug when dhcp server wasn't started for Direct netwok on JuniperSrx setup 2011-02-10 19:12:10 -08:00
Alex Huang b92fc074aa added forced paramter to stop apis 2011-02-08 15:38:26 -08:00
Alex Huang b322fb072f bug 8186: Changed the investigator to use the new networking 2011-02-07 16:04:23 -08:00
Frank 4c7fb08b33 Add OvsElement.java 2011-02-03 18:28:33 -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 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 2466589e2f removed unused domain_router_id from uservm 2011-01-24 16:56:00 -08:00
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
Kelven Yang 256e26ff61 Waiting virtual router to be ready in a outer place instead of inside VirtualNetworkApplianceImpl. This is to fix the the blocker issue of unable to deploy VM/start DomR 2011-01-12 12:31:19 -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 c94b6acadf bug 7722: open vswitch - works at VM start time, need fullsync() and flow clean in next 2011-01-08 16:22:59 -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
Alex Huang 4eba6d10d7 Moved State into VirtualMachine like other States of objects 2011-01-04 15:01:34 -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 da4ed648ac consolidated all of the vm destroy, cleanup and account cleanup. 2010-12-30 05:46:54 -08:00
alena bd788b1827 Fixed RemoteAccessVpn apis 2010-12-29 21:36:44 -08:00
alena d005f9133e bug 7603: update uservm count when deploy/recover vm. Also fixed updating volumes count when volume is created as a part of vm deployment
status 7603: resolved fixed

Couple of other fixes:
* Set correct user_id for createVolume event instead of hardcoding it to System (1)
* Deploy dhcp vm when Zone's gateway provider is External Firewall and network is Virtual
2010-12-28 17:32:17 -08:00
alena 8f7c0bc500 bug 7680: Use correct name ("source") for one of supported LB algorithms.
status 7680: resolved fixed
2010-12-27 09:19:47 -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 ec9260ce62 bug 7619: Added list of Capabilities parameter for Network
status 7619: resolved fixed
2010-12-22 11:05:31 -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 116ddb3cae Port forwarding rules support for domainRouterElement. When new pf rule is created for a public ip address, we resend all existing rules for this address to the domR. 2010-12-20 10:01:19 -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
alena 7224e1ccd2 Implemented applyLoadBalancer rules in domainRouterManager 2010-12-16 10:40:58 -08:00
alena 4ca2b8808b Fixed ipAssoc command to throw an exception when virtual network is null 2010-12-15 17:25:45 -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 2f0f78ff73 Set trafficType to Public insteand of Guest for Direct network 2010-12-09 21:06:48 -08:00
Alex Huang 9bae18d915 merge changes 2010-12-08 09:17:44 -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 daa9add158 removed router stuff from network manager 2010-12-04 17:32:31 -08:00
Alex Huang a8b617c596 port forwarding is now in 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
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 5f90a8adb0 Checking in to do git pull...stupid git 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 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 ce091de3d2 more changes for refactor 2010-10-12 07:17:47 -07:00