You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ke...@apache.org on 2013/11/21 03:33:50 UTC

[4/6] git commit: updated refs/heads/4.3 to 5a44de2

Newly added VR monitoring service has broken VMware basic network mode.


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/367db2e4
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/367db2e4
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/367db2e4

Branch: refs/heads/4.3
Commit: 367db2e45fcd6fd172cc3c060f621d81c2a6087a
Parents: 7be9b12
Author: Kelven Yang <ke...@citrix.com>
Authored: Tue Nov 12 23:48:56 2013 -0800
Committer: Kelven Yang <ke...@gmail.com>
Committed: Wed Nov 20 18:18:48 2013 -0800

----------------------------------------------------------------------
 .../router/VirtualNetworkApplianceManagerImpl.java    | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/367db2e4/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
index 3ba6cec..806e3af 100755
--- a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
+++ b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
@@ -2211,12 +2211,12 @@ public class VirtualNetworkApplianceManagerImpl extends ManagerBase implements V
 
             finalizeUserDataAndDhcpOnStart(cmds, router, provider, guestNetworkId);
         }
-        finalizeMonitorServiceOnStrat(cmds, router, provider, routerGuestNtwkIds.get(0));
+        finalizeMonitorServiceOnStrat(cmds, profile, router, provider, routerGuestNtwkIds.get(0));
 
         return true;
     }
 
-    private void finalizeMonitorServiceOnStrat(Commands cmds, DomainRouterVO router, Provider provider, long networkId) {
+    private void finalizeMonitorServiceOnStrat(Commands cmds, VirtualMachineProfile profile, DomainRouterVO router, Provider provider, long networkId) {
 
         NetworkVO network = _networkDao.findById(networkId);
 
@@ -2249,18 +2249,18 @@ public class VirtualNetworkApplianceManagerImpl extends ManagerBase implements V
             servicesTO.add(serviceTO);
         }
 
+        // TODO : This is a hacking fix
+        // at VR startup time, information in VirtualMachineProfile may not updated to DB yet, 
+        // getRouterControlIp() may give wrong IP under basic network mode in VMware environment
+        NicProfile controlNic = getControlNic(profile);
         SetMonitorServiceCommand command = new SetMonitorServiceCommand(servicesTO);
-        command.setAccessDetail(NetworkElementCommand.ROUTER_IP, getRouterControlIp(router.getId()));
+        command.setAccessDetail(NetworkElementCommand.ROUTER_IP, controlNic.getIp4Address());
         command.setAccessDetail(NetworkElementCommand.ROUTER_GUEST_IP, getRouterIpInNetwork(networkId, router.getId()));
         command.setAccessDetail(NetworkElementCommand.ROUTER_NAME, router.getInstanceName());
 
         cmds.addCommand("monitor", command);
     }
 
-
-
-
-
     protected NicProfile getControlNic(VirtualMachineProfile profile) {
         DomainRouterVO router = _routerDao.findById(profile.getId());
         DataCenterVO dcVo = _dcDao.findById(router.getDataCenterId());