Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -384,13 +384,26 @@ public DeployDestination planDeployment(VirtualMachineProfile vmProfile, Deploym
boolean considerLastHost = vm.getLastHostId() != null && haVmTag == null &&
(considerLastHostStr == null || Boolean.TRUE.toString().equalsIgnoreCase(considerLastHostStr));
if (considerLastHost) {
logger.debug("This VM has last host_id: {}", vm.getLastHostId());
HostVO host = _hostDao.findById(vm.getLastHostId());
logger.debug("This VM has last host_id specified, trying to choose the same host: " + host);
lastHost = host;
if (host == null) {
if (Boolean.TRUE.toString().equalsIgnoreCase(considerLastHostStr)) {
throw new CloudRuntimeException("Failed to deploy VM, last host doesn't exists");
}
} else {
if (host.isInMaintenanceStates()) {
if (Boolean.TRUE.toString().equalsIgnoreCase(considerLastHostStr)) {
throw new CloudRuntimeException("Failed to deploy VM, last host is in maintenance state");
}
} else {
logger.debug("VM's last {}, trying to choose the same host", host);
lastHost = host;

DeployDestination deployDestination = deployInVmLastHost(vmProfile, plan, avoids, planner, vm, dc, offering, cpuRequested, ramRequested, volumesRequireEncryption);
if (deployDestination != null) {
return deployDestination;
DeployDestination deployDestination = deployInVmLastHost(vmProfile, plan, avoids, planner, vm, dc, offering, cpuRequested, ramRequested, volumesRequireEncryption);
if (deployDestination != null) {
return deployDestination;
}
}
}
}

Expand Down Expand Up @@ -1474,7 +1487,7 @@ private Pair<Boolean, Boolean> findVMStorageRequirements(VirtualMachineProfile v

protected Pair<Host, Map<Volume, StoragePool>> findPotentialDeploymentResources(List<Host> suitableHosts, Map<Volume, List<StoragePool>> suitableVolumeStoragePools,
ExcludeList avoid, PlannerResourceUsage resourceUsageRequired, List<Volume> readyAndReusedVolumes, List<Long> preferredHosts, VirtualMachine vm) {
logger.debug("Trying to find a potenial host and associated storage pools from the suitable host/pool lists for this VM");
logger.debug("Trying to find a potential host and associated storage pools from the suitable host/pool lists for this VM");

boolean hostCanAccessPool = false;
boolean haveEnoughSpace = false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -833,7 +833,7 @@ public Long migrate(final HaWorkVO work) {
if (checkAndCancelWorkIfNeeded(work)) {
return null;
}
logger.info("Migration attempt: for VM {}from host {}. Starting attempt: {}/{} times.", vm, srcHost, 1 + work.getTimesTried(), _maxRetries);
logger.info("Migration attempt: for {} from {}. Starting attempt: {}/{} times.", vm, srcHost, 1 + work.getTimesTried(), _maxRetries);

if (VirtualMachine.State.Stopped.equals(vm.getState())) {
logger.info(String.format("vm %s is Stopped, skipping migrate.", vm));
Expand All @@ -843,7 +843,7 @@ public Long migrate(final HaWorkVO work) {
logger.info(String.format("VM %s is running on a different host %s, skipping migration", vm, vm.getHostId()));
return null;
}
logger.info("Migration attempt: for VM " + vm.getUuid() + "from host id " + srcHostId +
logger.info("Migration attempt: for VM " + vm.getUuid() + " from host id " + srcHostId +
". Starting attempt: " + (1 + work.getTimesTried()) + "/" + _maxRetries + " times.");

try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1417,7 +1417,7 @@ private boolean doMaintain(final long hostId) {
throw new CloudRuntimeException("There are active VMs using the host's local storage pool. Please stop all VMs on this host that use local storage.");
}
} else {
logger.info("Maintenance: scheduling migration of VM {} from host {}", vm, host);
logger.info("Maintenance: scheduling migration of {} from {}", vm, host);
_haMgr.scheduleMigration(vm, HighAvailabilityManager.ReasonType.HostMaintenance);
}
}
Expand Down
Loading