dnsmasq.conf need to contain /etc/dhcpopts.txt from the beginning, otherwise
SIGHUP won't make dnsmasq reload the dhcpopts.txt, thus result in multiple nics
user VM get router information from all DHCP offers.
Seems the behavior of ifdown/ifup changed in new version, that it would only
enable the default IP of eth2, regardless we can configure additional ips for
it. So we would always use ifconfig for interface control whenever
possible(a.k.a eth2 already got ip addresses).
When VR is booting up, ipassoc command hasn't been delivered, it's possible that
eth2 doesn't have any ip address, then ifconfig would fail because it doesn't
know how to find the ip for eth2. So in this only case, we would use ifdown/ifup
to set the ip address according to /etc/network/interfaces.
It can potentially racy againest ipassoc command, but biglock should prevent
racy condition from happening.
When master router down, the back up router is entered into FAIL state
but it supposed to enter into master.
This issue is happening because the the enable_pubip.sh script triying to
ifdown and ifup the eth2 interface. Which is failed. So master.sh script got
failed. Fixed by doing ifdown force
Introducing the option dhcp-client-update fails if the dnsmasq version is less than 2.6 (like in older templates).
Added a check for the version in cloud-early-config. will add dhcp-client-update option in the config file only
if the dnsmasq version is 2.6 and above.
Signed-off-by: Jayapal <jayapal@apache.org>
Detail: KVM recently got a patch that did away with a few dozen ssh calls
when programming virtual router (CLOUDSTACK-3163), saving several seconds
for each vm served by the virtual router when the router is rebooted. This
patch updates Xen to use the same method, and cleans up the old script refs.
Reviewed-by: Sheng Yang, Prasanna Santhanam
Detail: Adds flocks, etc for calling this concurrently, since CLOUDSTACK-3484
made userdata, vmdata, start commands concurrent
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1374773177 -0600
Detail: userdata and vm metadata take a long time to program on KVM routers.
This does it all in one go, processed on the router.
BUG-ID: CLOUDSTACK-3163
Tested-by: Wido
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1374695897 -0600
dhcp_release doesn't support IPv6, though it won't return failure(that's a bug
that has been fixed in recent release). So if it's IPv6, we would still use the
old way(restart dnsmasq) to refresh the lease.
This reverts commit f37567ef45fe6e41469a176d387e91840bfae23c.
This deletes the duplicate entry when new vm came with deleted vm ip.
So will not fix the bug CLOUDSTACK 3424 fully. So this changes will be committed into new bug
for number of commands participating in Vm deployment process, as parallel deployment is supported on the hypervisor side.
The behavior is controlled by global config varirables:
"execute.in.sequence.hypervisor.commands" (false by default) sets/resets the synchronization for commands:
=========================
StartCommand
StopCommand
CreateCommand
CopyVolumeCommand
"execute.in.sequence.network.element.commands" (false by default) sets/resets the synchronization for commands:
==========================
DhcpEntryCommand
SavePasswordCommand
UserDataCommand
VmDataCommand
As a part of the fix, increased the global lock timeout to 30 mins in several VR scripts:
===========================
edithosts.sh
savepassword.sh
userdata.sh
to support situations when multiple concurrent calls to the script are being made.