@Override public void destroyVM(String id) { journal.log(Level.INFO, ">> Stopping VM: "+id); cloudSigmaApi.stopServer(id); while(cloudSigmaApi.getServerInfo(id).getStatus() != ServerStatus.STOPPED) { try { journal.log(Level.INFO, ">> Waiting for VM: "+id+ " being stopped"); Thread.sleep(15000); } catch (InterruptedException e) { journal.log(Level.SEVERE, e.getMessage()); } } journal.log(Level.INFO, ">> Terminating VM: "+id); cloudSigmaApi.deleteServer(id); }
@Override public boolean apply(String input) { ServerInfo serverInfo = api.getServerInfo(input); return status.equals(serverInfo.getStatus()); } }
@Override public boolean apply(String input) { ServerInfo serverInfo = api.getServerInfo(input); return status.equals(serverInfo.getStatus()); } }
@Override public void exec() { List<MonitoredVm> list = new ArrayList<MonitoredVm>(); //Get all servers FluentIterable<ServerInfo> cloudsigmaServers; cloudsigmaServers = connector.listOfServers(); if (cloudsigmaServers != null) { for (ServerInfo o : cloudsigmaServers) { MonitoredVm temp = new MonitoredVm(o.getUuid(), o.getName(), toState(o.getStatus())); list.add(temp); } } ListManager.listManager(list, VMs, coord); }
@Override public void destroyNode(String uuid) { ServerInfo server = api.getServerInfo(uuid); if (ServerStatus.RUNNING == server.getStatus()) { api.stopServer(uuid); waitUntilServerIsStopped(uuid); } deleteTags(server.getTags()); List<String> driveIds = transform(server.getDrives(), new Function<ServerDrive, String>() { @Override public String apply(ServerDrive input) { return input.getDriveUuid(); } }); logger.debug(">> deleting server..."); api.deleteServer(uuid); if (destroyDrives) { logger.debug(">> deleting server drives..."); destroyDrives(driveIds); } }
@Override public void destroyNode(String uuid) { ServerInfo server = api.getServerInfo(uuid); if (ServerStatus.RUNNING == server.getStatus()) { api.stopServer(uuid); waitUntilServerIsStopped(uuid); } deleteTags(server.getTags()); List<String> driveIds = transform(server.getDrives(), new Function<ServerDrive, String>() { @Override public String apply(ServerDrive input) { return input.getDriveUuid(); } }); logger.debug(">> deleting server..."); api.deleteServer(uuid); if (destroyDrives) { logger.debug(">> deleting server drives..."); destroyDrives(driveIds); } }
@Override public NodeMetadata apply(ServerInfo serverInfo) { NodeMetadataBuilder builder = new NodeMetadataBuilder(); builder.ids(serverInfo.getUuid()); builder.name(serverInfo.getName()); builder.group(groupNamingConventionWithoutPrefix.extractGroup(serverInfo.getName())); builder.location(getOnlyElement(locations.get())); builder.hardware(new HardwareBuilder().ids(serverInfo.getUuid()).processor(new Processor(1, serverInfo.getCpu())) .ram(serverInfo.getMemory().intValue()) .volumes(Iterables.transform(serverInfo.getDrives(), serverDriveToVolume)).build()); builder.tags(readTags(serverInfo)); builder.userMetadata(serverInfo.getMeta()); builder.imageId(extractImageId(serverInfo)); builder.status(serverStatusToNodeStatus.get(serverInfo.getStatus())); builder.publicAddresses(filter(transform(serverInfo.getNics(), nicToAddress), notNull())); // CloudSigma does not provide a way to get the credentials. // Try to return them from the credential store Credentials credentials = credentialStore.get("node#" + serverInfo.getUuid()); if (credentials instanceof LoginCredentials) { builder.credentials(LoginCredentials.class.cast(credentials)); } return builder.build(); }
@Override public NodeMetadata apply(ServerInfo serverInfo) { NodeMetadataBuilder builder = new NodeMetadataBuilder(); builder.ids(serverInfo.getUuid()); builder.name(serverInfo.getName()); builder.group(groupNamingConventionWithoutPrefix.extractGroup(serverInfo.getName())); builder.location(getOnlyElement(locations.get())); builder.hardware(new HardwareBuilder().ids(serverInfo.getUuid()).processor(new Processor(1, serverInfo.getCpu())) .ram(serverInfo.getMemory().intValue()) .volumes(Iterables.transform(serverInfo.getDrives(), serverDriveToVolume)).build()); builder.tags(readTags(serverInfo)); builder.userMetadata(serverInfo.getMeta()); builder.imageId(extractImageId(serverInfo)); builder.status(serverStatusToNodeStatus.get(serverInfo.getStatus())); builder.publicAddresses(filter(transform(serverInfo.getNics(), nicToAddress), notNull())); // CloudSigma does not provide a way to get the credentials. // Try to return them from the credential store Credentials credentials = credentialStore.get("node#" + serverInfo.getUuid()); if (credentials instanceof LoginCredentials) { builder.credentials(LoginCredentials.class.cast(credentials)); } return builder.build(); }
cloudSigmaApi.startServer(createdServer.getUuid()); if(createdServer.getStatus().value().equals("Running")) state=ComponentInstance.State.RUNNING;
public static Builder fromServerInfo(ServerInfo serverInfo) { return new Builder() .uuid(serverInfo.getUuid()) .name(serverInfo.getName()) .resourceUri(serverInfo.getResourceUri()) .owner(serverInfo.getOwner()) .status(serverInfo.getStatus()) .runtime(serverInfo.getRuntime()) .cpusInsteadOfCores(serverInfo.isCpusInsteadOfCores()) .drives(serverInfo.getDrives()) .enableNuma(serverInfo.isNumaEnabled()) .hvRelaxed(serverInfo.isHvRelaxed()) .hvTsc(serverInfo.isHvTsc()) .memory(serverInfo.getMemory()) .meta(serverInfo.getMeta()) .nics(serverInfo.getNics()) .requirements(serverInfo.getRequirements()) .tags(serverInfo.getTags()) .vncPassword(serverInfo.getVncPassword()) .smp(serverInfo.getSmp()); }
public static Builder fromServerInfo(ServerInfo serverInfo) { return new Builder() .uuid(serverInfo.getUuid()) .name(serverInfo.getName()) .resourceUri(serverInfo.getResourceUri()) .owner(serverInfo.getOwner()) .status(serverInfo.getStatus()) .runtime(serverInfo.getRuntime()) .cpusInsteadOfCores(serverInfo.isCpusInsteadOfCores()) .drives(serverInfo.getDrives()) .enableNuma(serverInfo.isNumaEnabled()) .hvRelaxed(serverInfo.isHvRelaxed()) .hvTsc(serverInfo.isHvTsc()) .memory(serverInfo.getMemory()) .meta(serverInfo.getMeta()) .nics(serverInfo.getNics()) .requirements(serverInfo.getRequirements()) .tags(serverInfo.getTags()) .vncPassword(serverInfo.getVncPassword()) .smp(serverInfo.getSmp()); }
public static Builder fromServerInfo(ServerInfo serverInfo) { return new Builder() .uuid(serverInfo.getUuid()) .name(serverInfo.getName()) .resourceUri(serverInfo.getResourceUri()) .owner(serverInfo.getOwner()) .status(serverInfo.getStatus()) .runtime(serverInfo.getRuntime()) .cpusInsteadOfCores(serverInfo.isCpusInsteadOfCores()) .drives(serverInfo.getDrives()) .enableNuma(serverInfo.isNumaEnabled()) .hvRelaxed(serverInfo.isHvRelaxed()) .hvTsc(serverInfo.isHvTsc()) .memory(serverInfo.getMemory()) .meta(serverInfo.getMeta()) .nics(serverInfo.getNics()) .requirements(serverInfo.getRequirements()) .tags(serverInfo.getTags()) .vncPassword(serverInfo.getVncPassword()) .smp(serverInfo.getSmp()); }