diff --git a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java index acaeee0504c..531473a2014 100755 --- a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java +++ b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java @@ -1053,10 +1053,14 @@ public class VirtualNetworkApplianceManagerImpl implements VirtualNetworkApplian } for (DomainRouterVO router : routers) { - - HostVO host = _hostDao.findById(router.getHostId()); - if (host != null && host.getStatus() == Status.Up) { - + boolean skip = false; + if (router.getHostId() != null) { + HostVO host = _hostDao.findById(router.getHostId()); + if (host == null || host.getStatus() != Status.Up) { + skip = true; + } + } + if (!skip) { State state = router.getState(); if (state != State.Running) { router = startVirtualRouter(router, _accountService.getSystemUser(), _accountService.getSystemAccount(), params);