mirror of https://github.com/apache/cloudstack.git
CLOUDSTACK-2648 [Multiple_IP_Ranges] Reboot or start/stop router vm deletes the ip alises created on VR in case of multiple subnets
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
This commit is contained in:
parent
0a69b82899
commit
48913679e8
|
|
@ -642,7 +642,7 @@ public class VirtualRoutingResource implements Manager {
|
|||
for (IpAliasTO ipAliasTO : revokedIpAliasTOs) {
|
||||
args = args + ipAliasTO.getAlias_count()+":"+ipAliasTO.getRouterip()+":"+ipAliasTO.getNetmask()+"-";
|
||||
}
|
||||
args = args + " " ;
|
||||
args = args + "- " ;
|
||||
List<IpAliasTO> activeIpAliasTOs = cmd.getCreateIpAliasTos();
|
||||
for (IpAliasTO ipAliasTO : activeIpAliasTOs) {
|
||||
args = args + ipAliasTO.getAlias_count()+":"+ipAliasTO.getRouterip()+":"+ipAliasTO.getNetmask()+"-";
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ set -x
|
|||
var="$1"
|
||||
cert="/root/.ssh/id_rsa.cloud"
|
||||
|
||||
while [ -n "$var" ]
|
||||
while [[ !( "$var" == "-" ) ]]
|
||||
do
|
||||
var1=$(echo $var | cut -f1 -d "-")
|
||||
alias_count=$( echo $var1 | cut -f1 -d ":" )
|
||||
|
|
|
|||
|
|
@ -1976,7 +1976,7 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa
|
|||
for (IpAliasTO ipAliasTO : revokedIpAliasTOs) {
|
||||
args = args + ipAliasTO.getAlias_count()+":"+ipAliasTO.getRouterip()+":"+ipAliasTO.getNetmask()+"-";
|
||||
}
|
||||
args = args + " " ;
|
||||
args = args + "- " ;
|
||||
for (IpAliasTO ipAliasTO : activeIpAliasTOs) {
|
||||
args = args + ipAliasTO.getAlias_count()+":"+ipAliasTO.getRouterip()+":"+ipAliasTO.getNetmask()+"-";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2006,7 +2006,8 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
|
|||
for (IpAliasTO ipAliasTO : revokedIpAliasTOs) {
|
||||
args = args + ipAliasTO.getAlias_count()+":"+ipAliasTO.getRouterip()+":"+ipAliasTO.getNetmask()+"-";
|
||||
}
|
||||
args = args + " " ;
|
||||
//this is to ensure that thre is some argument passed to the deleteipAlias script when there are no revoked rules.
|
||||
args = args + "- " ;
|
||||
List<IpAliasTO> activeIpAliasTOs = cmd.getCreateIpAliasTos();
|
||||
for (IpAliasTO ipAliasTO : activeIpAliasTOs) {
|
||||
args = args + ipAliasTO.getAlias_count()+":"+ipAliasTO.getRouterip()+":"+ipAliasTO.getNetmask()+"-";
|
||||
|
|
|
|||
|
|
@ -2473,18 +2473,21 @@ public class VirtualNetworkApplianceManagerImpl extends ManagerBase implements V
|
|||
//Reapply dhcp and dns configuration.
|
||||
if (_networkModel.isProviderSupportServiceInNetwork(guestNetworkId, Service.Dhcp, provider)) {
|
||||
List<NicIpAliasVO> revokedIpAliasVOs = _nicIpAliasDao.listByNetworkIdAndState(guestNetworkId, NicIpAlias.state.revoked);
|
||||
s_logger.debug("Found" + revokedIpAliasVOs.size() + "ip Aliases to apply on the router as a part of dhco configuration");
|
||||
s_logger.debug("Found" + revokedIpAliasVOs.size() + "ip Aliases to revoke on the router as a part of dhcp configuration");
|
||||
List<IpAliasTO> revokedIpAliasTOs = new ArrayList<IpAliasTO>();
|
||||
for (NicIpAliasVO revokedAliasVO : revokedIpAliasVOs) {
|
||||
revokedIpAliasTOs.add(new IpAliasTO(revokedAliasVO.getIp4Address(), revokedAliasVO.getNetmask(), revokedAliasVO.getAliasCount().toString()));
|
||||
}
|
||||
List<NicIpAliasVO> aliasVOs = _nicIpAliasDao.listByNetworkIdAndState(guestNetworkId, NicIpAlias.state.active);
|
||||
s_logger.debug("Found" + aliasVOs.size() + "ip Aliases to apply on the router as a part of dhco configuration");
|
||||
s_logger.debug("Found" + aliasVOs.size() + "ip Aliases to apply on the router as a part of dhcp configuration");
|
||||
List<IpAliasTO> activeIpAliasTOs = new ArrayList<IpAliasTO>();
|
||||
for (NicIpAliasVO aliasVO : aliasVOs) {
|
||||
activeIpAliasTOs.add(new IpAliasTO(aliasVO.getIp4Address(), aliasVO.getNetmask(), aliasVO.getAliasCount().toString()));
|
||||
}
|
||||
createDeleteIpAliasCommand(router, revokedIpAliasTOs, activeIpAliasTOs, guestNetworkId, cmds);
|
||||
if (revokedIpAliasTOs.size() != 0 || activeIpAliasTOs.size() != 0){
|
||||
createDeleteIpAliasCommand(router, revokedIpAliasTOs, activeIpAliasTOs, guestNetworkId, cmds);
|
||||
configDnsMasq(router, _networkDao.findById(guestNetworkId), cmds);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -2844,13 +2847,13 @@ public class VirtualNetworkApplianceManagerImpl extends ManagerBase implements V
|
|||
|
||||
Commands cmds = new Commands(OnError.Continue);
|
||||
List<NicIpAliasVO> revokedIpAliasVOs = _nicIpAliasDao.listByNetworkIdAndState(network.getId(), NicIpAlias.state.revoked);
|
||||
s_logger.debug("Found" + revokedIpAliasVOs.size() + "ip Aliases to apply on the router as a part of dhco configuration");
|
||||
s_logger.debug("Found" + revokedIpAliasVOs.size() + "ip Aliases to revoke on the router as a part of dhcp configuration");
|
||||
List<IpAliasTO> revokedIpAliasTOs = new ArrayList<IpAliasTO>();
|
||||
for (NicIpAliasVO revokedAliasVO : revokedIpAliasVOs) {
|
||||
revokedIpAliasTOs.add(new IpAliasTO(revokedAliasVO.getIp4Address(), revokedAliasVO.getNetmask(), revokedAliasVO.getAliasCount().toString()));
|
||||
}
|
||||
List<NicIpAliasVO> aliasVOs = _nicIpAliasDao.listByNetworkIdAndState(network.getId(), NicIpAlias.state.active);
|
||||
s_logger.debug("Found" + aliasVOs.size() + "ip Aliases to apply on the router as a part of dhco configuration");
|
||||
s_logger.debug("Found" + aliasVOs.size() + "ip Aliases to apply on the router as a part of dhcp configuration");
|
||||
List<IpAliasTO> activeIpAliasTOs = new ArrayList<IpAliasTO>();
|
||||
for (NicIpAliasVO aliasVO : aliasVOs) {
|
||||
activeIpAliasTOs.add(new IpAliasTO(aliasVO.getIp4Address(), aliasVO.getNetmask(), aliasVO.getAliasCount().toString()));
|
||||
|
|
|
|||
Loading…
Reference in New Issue