diff --git a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java index 6393947a4a0..b7cc90b7b95 100755 --- a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java +++ b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java @@ -1053,11 +1053,14 @@ public class VirtualNetworkApplianceManagerImpl implements VirtualNetworkApplian } for (DomainRouterVO router : routers) { - State state = router.getState(); - if (state != State.Running) { - router = startVirtualRouter(router, _accountService.getSystemUser(), _accountService.getSystemAccount(), params); + HostVO host = _hostDao.findById(router.getHostId()); + if (host != null && host.getStatus() == Status.Up) { + State state = router.getState(); + if (state != State.Running) { + router = startVirtualRouter(router, _accountService.getSystemUser(), _accountService.getSystemAccount(), params); + } + runningRouters.add(router); } - runningRouters.add(router); } return runningRouters; }