122 Commits

Author SHA1 Message Date
Naredula Janardhana Reddy
72fb7256d7 Bug 13297,13375,12705 :
Summary of changes :
        - Added a new flag -s to ipassoc command to carry if the ip address is
used for SNAT or not.
        - SNAT is completly decoupled from the first flag. first flag is used
to decide if the ip address is first ip address of the interface.
        - -s and -f are independent, SNAT can be enabled on the non-first ip
also.
2012-02-01 12:39:10 +05:30
Naredula Janardhana Reddy
e52ac3ae31 Bug 12808: Logging added, Improved remove_routing 2012-01-25 12:54:36 +05:30
Naredula Janardhana Reddy
5ca5851b1b Bug 12808:
Summary of changes:
  - Mutiple routing table for each public interface is added (previously there is only one routing table ). when the packet is send out of public interface corresponding per-interface routing table will be used. per-interface routing table will modified when ever ip/interface added/deleted.
  - New parameter is added to ipassoc command  to include the default gateway for every interface/ip. prevously it is using only one public interface to send out, default gateway is obtained at the boot up time.
  - In the DNAT case. In the revese path(from guest vm to outside, or when DNAT packet receives from the eth0) the public ip/source ip will not be available till POSTROUTING. to overcome this, DNAT connection are marked with routing table number at the time of connection creation, in the reverse path the routing table# from DNAT connection is used to detect per-interface routing table.
2012-01-25 12:54:00 +05:30
Naredula Janardhana Reddy
de8ba55d85 Bug 12496: Allowing guest vm's to access virtual router LB service 2012-01-25 12:17:39 +05:30
frank
52610ffcb3 add copyright header to shell scripts 2012-01-11 18:41:53 -08:00
Sheng Yang
f98191be5c Fix domr's file lock
And add more information for domr's file lock
2012-01-10 14:25:43 -08:00
Sheng Yang
59981f71c1 bug 12883: Fix numerous NETWORK_STAT related rule in iptables
Also use script in the router for the execution.

status 12883: resolved fixed
2012-01-09 20:04:45 -08:00
Sheng Yang
7e6bbf9b16 Discard rrouter lock
Then we can make all the actions in sequence
2011-12-30 15:00:59 -08:00
Sheng Yang
aeda3f3a1c bug 11056: Add customized iptables and kernel modules to the system template
The new kernel module xt_CHECKSUM.ko is based on [1], and back ported to 2.6.32
kernel. New iptables is based on adding a new extension from [2].

[1]https://lwn.net/Articles/396466/
[2]https://git.netfilter.org/cgi-bin/gitweb.cgi?p=iptables.git;a=commit;h=9d1b11102b53103c00b7fddf4658a4d2bdee1338

status 11056: resolved fixed
2011-12-28 20:20:35 -08:00
Sheng Yang
14d6c85176 bug 12727: Add arping to update the vSwitch cache
We need to broadcast all our public IP address's ARP, not only the gateway one.

status 12727: resolved fixed
2011-12-22 17:24:57 -08:00
Sheng Yang
3b2e2b079b bug 12704: Fix multiply public nics with redundant router
status 12704: resolved fixed
2011-12-21 16:01:58 -08:00
Chiradeep Vittal
797836723d bug 10804: add default dns provider 2011-12-05 16:56:31 -08:00
Chiradeep Vittal
89f13ad700 bug 10804 virtual router support for per-vm default network 2011-12-05 14:53:42 -08:00
Edison Su
782b4d97b2 bug 11835: don't return error if it's delete firewall rules
status 11835: resolved fixed
Reviewed-by: frank
2011-11-10 17:59:01 -08:00
Naredula Janardhana Reddy
00ea2a5995 bug 11590:
reviewed-by: Abhi

Summary of Changes:
 while adding a primary address to the domR interface, previous primaray addresses(ip) are removed and added as with 32-bit netmask.
   This is to avoid two same ip's with different netmask attached to the interface.
2011-11-09 16:44:47 +05:30
Sheng Yang
c44db2557d bug 11772: Add improved version of locking for the scripts in the systemvm
Because currently the lock in the script is retried every 1 second, and it's a
quite a long time that it's possible for some other active script can be
executed and retain the lock again. So it's possible that the first one request
the lock is always being preemptted by others, then finally got timeout.

To fix this issue, the retry interval is reduced to 0.1 seconds, which would
provide more retry times. And each process want to get the lock would create a
file named lockname-PID.lock, and only the first one(judged by timestamp) would
get the lock. The remaining ones would retry every 0.1 seconds to see if it can
get the lock.

Also timeout time is extended to 30 seconds.

And add testcase for it.

status 11772: resolved fixed
2011-11-01 19:06:14 -07:00
kishan
a4af6d43f8 bug 11547: VMware - Reset iptables counter when a public interface on domR is
removed
status 11547: resolved fixed
reviewed-by: Ram
2011-09-28 16:50:57 +05:30
kishan
8ffeddb020 bug 11547: Reset iptables counter when a public interface on domR is removed 2011-09-23 15:43:45 +05:30
Naredula Janardhana Reddy
db75bf2072 bug 11455: adding firewall rule chain to the main chain in the case when vpn chain is not present. 2011-09-16 17:30:41 +05:30
Sheng Yang
fe838c5528 bug 11233: Update switch's cache using ping
We would ping the gateway after transit to MASTER, this should speed up the
update of switch's cache.
2011-09-14 16:26:54 -07:00
Sheng Yang
c47bc3664e Add rrouter lock for edithost.sh and ipassoc.sh 2011-09-14 16:26:09 -07:00
Sheng Yang
ba2fc97865 bug 11351: Add monitor process for keepalived
Then when the process dead, we can know it and prevent two MASTER case happened.
2011-09-14 16:25:17 -07:00
Sheng Yang
d3b0f04877 bug 11351: Add checkrouter.sh.templ
Also modify ipassoc.sh to use checkrouter.sh
2011-09-14 16:25:03 -07:00
Sheng Yang
b007e24e59 bug 11351: Add parameters for binary file/log file 2011-09-14 16:24:50 -07:00
Sheng Yang
4bbfa2513e bug 11307: Add PRIORITY bump up script for redundant virtual routers 2011-09-14 16:18:55 -07:00
Sheng Yang
0553c543a1 bug 11421: Add missing source cmd for ipassoc.sh
status 11421: resolved fixed
2011-09-13 11:08:32 -07:00
Sheng Yang
97d788dfc9 Add log for reconfigLB.sh 2011-09-12 17:00:53 -07:00
Sheng Yang
abc44ac283 bug 11266: Add lock file for every script in the systemVM
To prevent them from racy.

status 11266: resolved fixed
2011-09-09 18:27:33 -07:00
Naredula Janardhana Reddy
cbed4c7a44 bug 11253:
Added New value "link-local"  to  global config network.loadbalancer.haproxy.stats.visibility . With this change it can take new parameter "link-local" value apart from the existing 3 values global,guest-network,disabled.
       global -  stats visible from public network
       guest-network - stats visible only to guestnetwork.
       link-local - stats visible only to link local network
       disabled - stats disabled.
2011-08-26 15:21:29 +05:30
Sheng Yang
c7a887a51c bug 11266: Add lockfile for scripts in system vm
Otherwise it's easy to trigger the racy issue.

This one just contained fix for reconfigLB.sh
2011-08-25 19:37:14 -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
7ccc833114 Fix potential redundant router FAULT state by dnsmasq
This message may show during redundant router start up:

FAULT (Restarting DNS forwarder and DHCP server: dnsmasq failed!)

This caused by edithost.sh is racy with keepalived process. They both want to
restart dnsmasq.

Even in normal condition, it's very hard to reproduce this bug. Add file lock
for edithost.sh should solve it.
2011-08-19 16:11:48 -07:00
Sheng Yang
d9b0188d7e Fix potential redundant router FAULT state by dnsmasq
This message may show during redundant router start up:

FAULT (Restarting DNS forwarder and DHCP server: dnsmasq failed!)

This caused by edithost.sh is racy with keepalived process. They both want to
restart dnsmasq.

Even in normal condition, it's very hard to reproduce this bug. Add file lock
for edithost.sh should solve it.
2011-08-19 16:11:33 -07:00
Naredula Janardhana Reddy
b9183c0840 bug 10561: merging code from 2.2.10 to master 2011-08-16 14:20:51 +05:30
Chiradeep Vittal
779989ce6b bug 11103: create firewall chains on ipassoc
status 11103: resolved fixed
bug 11106: this is somehow fixed / cannot reproduced
status 11106: resolved fixed
2011-08-15 10:18:44 -07:00
Sheng Yang
29cc88571f Redundant router script fix, also fix CheckRouterTask 2011-08-11 17:57:12 -07:00
Sheng Yang
23e6b96c98 Redundant router script fix, also fix CheckRouterTask 2011-08-11 17:57:00 -07:00
Sheng Yang
258a1bc451 Ifdown may not bring interface down if ifup not run
Use ifconfig to bring it down
2011-08-11 15:01:02 -07:00
Sheng Yang
a935e52b62 Ifdown may not bring interface down if ifup not run
Use ifconfig to bring it down
2011-08-11 15:00:43 -07:00
Chiradeep Vittal
f91d173511 bug 10561: handle icmp (finally\!) 2011-08-11 14:36:41 -07:00
Sheng Yang
7807e29c30 Use ifup/ifdown for redundant router 2011-08-11 14:30:21 -07:00
Sheng Yang
95cc2d6381 Use ifup/ifdown for redundant router 2011-08-11 14:29:49 -07:00
Chiradeep Vittal
88a1c69413 bug 10561: get static nat working 2011-08-11 12:41:21 -07:00
Chiradeep Vittal
d1ec7e759b remove cruft 2011-08-11 11:26:45 -07:00
Naredula Janardhana Reddy
7c2395e684 bug 10561: fix: last entry in the firewall rules unable to delete 2011-08-11 19:01:36 +05:30
Naredula Janardhana Reddy
699b197a3c bug 10561: changes to the create/delete firewall rule backend script:
1) changes to the return value
    2) added a FIXME to one the leak.
2011-08-11 16:53:18 +05:30
Chiradeep Vittal
35e67bbfdf bug 10561: ensure outgoing connections work 2011-08-10 23:16:04 -07:00
Chiradeep Vittal
d29b01ca7f bug 10561: backend rules for firewall 2011-08-10 18:39:52 -07:00
Sheng Yang
9f6dc993ab Fix dhcp_entry.sh fail on redundant router
And don't worry about "chkconfig dnsmasq off", because keepalived script should
take care of it.
2011-08-10 17:13:45 -07:00
Sheng Yang
02049d4cd4 Fix dhcp_entry.sh fail on redundant router
And don't worry about "chkconfig dnsmasq off", because keepalived script should
take care of it.
2011-08-10 17:13:15 -07:00