diff --git a/conf/springConfigXml/sugonSdnController.xml b/conf/springConfigXml/sugonSdnController.xml index 02f8d5d414728e5aa10caeeb8b8a2e716712c5af..f0ff6ad0033d34701ad8e919f8661285c6428789 100644 --- a/conf/springConfigXml/sugonSdnController.xml +++ b/conf/springConfigXml/sugonSdnController.xml @@ -47,6 +47,7 @@ + diff --git a/plugin/sugonSdnController/src/main/java/org/zstack/sugonSdnController/network/TfMigrateVmBackend.java b/plugin/sugonSdnController/src/main/java/org/zstack/sugonSdnController/network/TfMigrateVmBackend.java index f54b1d608fbc243da8d5056556d8449563508e54..672e630f4335b56a2e5db450217a2e867a772e47 100644 --- a/plugin/sugonSdnController/src/main/java/org/zstack/sugonSdnController/network/TfMigrateVmBackend.java +++ b/plugin/sugonSdnController/src/main/java/org/zstack/sugonSdnController/network/TfMigrateVmBackend.java @@ -9,6 +9,7 @@ import org.zstack.core.cloudbus.CloudBus; import org.zstack.core.cloudbus.CloudBusCallBack; import org.zstack.core.db.DatabaseFacade; import org.zstack.core.db.Q; +import org.zstack.header.core.Completion; import org.zstack.header.errorcode.ErrorCode; import org.zstack.header.errorcode.OperationFailureException; import org.zstack.header.host.HostConstant; @@ -39,7 +40,7 @@ import java.util.stream.Collectors; import static org.zstack.core.Platform.operr; -public class TfMigrateVmBackend implements VmInstanceMigrateExtensionPoint { +public class TfMigrateVmBackend implements VmInstanceMigrateExtensionPoint, VmPreMigrationExtensionPoint { private static final CLogger logger = Utils.getLogger(TfMigrateVmBackend.class); public static final String NOTIFY_TF_NIC = "/vm/nodifytfnic"; @Autowired @@ -48,6 +49,7 @@ public class TfMigrateVmBackend implements VmInstanceMigrateExtensionPoint { private AccountManager accountMgr; @Autowired protected DatabaseFacade dbf; + public static class SugonNicNotifyCmd extends KVMAgentCommands.AgentCommand { private String sugonSdnAction; private List nics; @@ -91,6 +93,17 @@ public class TfMigrateVmBackend implements VmInstanceMigrateExtensionPoint { } + + @Override + public void preVmMigration(VmInstanceInventory vm, VmMigrationType type, Completion completion) { +// try { +// notifySugonSdn(vm, vm.getHostUuid(), "add"); +// completion.success(); +// } catch (OperationFailureException e) { +// completion.fail(e.getErrorCode()); +// } + } + @Override public void preMigrateVm(VmInstanceInventory inv, String destHostUuid) { // pre支持物理机+本地存储迁移,以及物理机+共享存储迁移,before不支持物理机+共享存储的迁移