@Override public String getAllocatorStrategy(HostInventory host) { if (host != null && !"KVM".equals(host.getHypervisorType())) { return null; } return PrimaryStorageConstant.DEFAULT_PRIMARY_STORAGE_ALLOCATION_STRATEGY_TYPE; } }
@Override public String getAllocatorStrategy(HostInventory host) { if (host != null && !"KVM".equals(host.getHypervisorType())) { return null; } return LocalStorageConstants.LOCAL_STORAGE_ALLOCATOR_STRATEGY; }
private void realize(final Iterator<HostInventory> it, final FlowTrigger trigger) { if (!it.hasNext()) { trigger.next(); return; } HostInventory host = it.next(); realizeNetwork(host.getUuid(), host.getHypervisorType(), new Completion(trigger) { @Override public void success() { realize(it, trigger); } @Override public void fail(ErrorCode errorCode) { trigger.fail(errorCode); } }); }
private void realize(final Iterator<HostInventory> it, final FlowTrigger trigger) { if (!it.hasNext()) { trigger.next(); return; } HostInventory host = it.next(); realizeNetwork(host.getUuid(), host.getHypervisorType(), new Completion(trigger) { @Override public void success() { realize(it, trigger); } @Override public void fail(ErrorCode errorCode) { trigger.fail(errorCode); } }); }
@Override public void connectionReestablished(HostInventory inv) throws HostException { if (!KVMConstant.KVM_HYPERVISOR_TYPE.equals(inv.getHypervisorType())) { return; } FutureCompletion completion = new FutureCompletion(null); createSecret(inv.getUuid(), inv.getClusterUuid(), new Completion(completion) { @Override public void success() { completion.success(); } @Override public void fail(ErrorCode errorCode) { completion.fail(errorCode); } }); completion.await(); if (!completion.isSuccess()) { throw new OperationFailureException(completion.getErrorCode()); } }
if (!KVMConstant.KVM_HYPERVISOR_TYPE.equals(d.getInventory().getHypervisorType())) { return false;
msg.setFormat(VolumeFormat.getVolumeFormatByMasterHypervisorType(spec.getDestHost().getHypervisorType()).toString()); } else { VolumeFormat imageFormat = VolumeFormat.valueOf(spec.getImageSpec().getInventory().getFormat()); msg.setFormat(imageFormat.getOutputFormat(spec.getDestHost().getHypervisorType())); msg.setFormat(VolumeFormat.getVolumeFormatByMasterHypervisorType(spec.getDestHost().getHypervisorType()).toString()); if (spec.getDataVolumeSystemTags() != null) { tags.addAll(spec.getDataVolumeSystemTags());
@Override public void run(FlowTrigger trigger, Map data) { VmInstanceSpec spec = (VmInstanceSpec) data.get(VmInstanceConstant.Params.VmInstanceSpec.toString()); changeVmStateInDb(struct.getStrategy() == VmCreationStrategy.InstantStart ? VmInstanceStateEvent.running : VmInstanceStateEvent.paused, ()-> { self.setLastHostUuid(spec.getDestHost().getUuid()); self.setHostUuid(spec.getDestHost().getUuid()); self.setClusterUuid(spec.getDestHost().getClusterUuid()); self.setZoneUuid(spec.getDestHost().getZoneUuid()); self.setHypervisorType(spec.getDestHost().getHypervisorType()); self.setRootVolumeUuid(spec.getDestRootVolume().getUuid()); }); logger.debug(String.format("vm[uuid:%s] is started ..", self.getUuid())); VmInstanceInventory inv = VmInstanceInventory.valueOf(self); extEmitter.afterStartNewCreatedVm(inv); trigger.next(); } });
private void createEmptyVolume(final InstantiateVolumeOnPrimaryStorageMsg msg) { NfsPrimaryStorageBackend backend; if (msg.getDestHost() != null) { backend = getBackend(HypervisorType.valueOf(msg.getDestHost().getHypervisorType())); } else { backend = getUsableBackend(); if (backend == null) { throw new OperationFailureException(operr("the NFS primary storage[uuid:%s, name:%s] cannot find any usable host to" + " create the data volume[uuid:%s, name:%s]", self.getUuid(), self.getName(), msg.getVolume().getUuid(), msg.getVolume().getName())); } } VolumeInventory vol = msg.getVolume(); final InstantiateVolumeOnPrimaryStorageReply reply = new InstantiateVolumeOnPrimaryStorageReply(); backend.instantiateVolume(PrimaryStorageInventory.valueOf(self), vol, new ReturnValueCompletion<VolumeInventory>(msg) { @Override public void success(VolumeInventory returnValue) { reply.setVolume(returnValue); bus.reply(msg, reply); } @Override public void fail(ErrorCode errorCode) { reply.setError(errorCode); reply.setSuccess(false); bus.reply(msg, reply); } }); }
.set(VmInstanceVO_.lastHostUuid, oldHostUuid) .set(VmInstanceVO_.hostUuid, spec.getDestHost().getUuid()) .set(VmInstanceVO_.hypervisorType, spec.getDestHost().getHypervisorType()) .update(); chain.next();