Package org.jclouds.compute

Examples of org.jclouds.compute.ComputeService


      if (statementBuilder.isEmpty()) {
        continue; // skip
      }

      final ComputeServiceContext computeServiceContext = getCompute().apply(clusterSpec);
      final ComputeService computeService = computeServiceContext.getComputeService();

      LoginCredentials credentials = LoginCredentials.builder().user(clusterSpec.getClusterUser())
            .privateKey(clusterSpec.getPrivateKey()).build();
     
      final RunScriptOptions options = overrideLoginCredentials(credentials);

      if (numberAllocated == 0) {
        for (ComputeMetadata compute : computeService.listNodes()) {
          if (!(compute instanceof NodeMetadata)) {
            throw new IllegalArgumentException("Not an instance of NodeMetadata: " + compute);
          }
          nodes.add((NodeMetadata) compute);
        }
View Full Code Here


        public boolean apply(InstanceTemplate group) {
          return plusJoiner.join(group.getRoles()).equals(templateGroup);
        }
      }));

    ComputeService computeService = mock(AWSEC2ComputeService.class);
    ComputeServiceContext context = mock(ComputeServiceContext.class);
    when(computeService.getContext()).thenReturn(context);

    when(context.getBackendType()).thenReturn(TypeToken.class.cast(AWSEC2ApiMetadata.CONTEXT_TOKEN));

    TemplateBuilder templateBuilder = mock(TemplateBuilder.class);
    when(computeService.templateBuilder()).thenReturn(templateBuilder);
    when(templateBuilder.from((TemplateBuilderSpec)any())).thenReturn(templateBuilder);
    when(templateBuilder.options((TemplateOptions)any())).thenReturn(templateBuilder);

    Template template = mock(Template.class);
    TemplateOptions options = mock(TemplateOptions.class);
View Full Code Here

      final int maxNumberOfRetries = clusterSpec.getMaxStartupRetries();
      StatementBuilder statementBuilder = entry.getValue().getStatementBuilder();

      ComputeServiceContext computeServiceContext = getCompute().apply(clusterSpec);
      final ComputeService computeService =
        computeServiceContext.getComputeService();

      final Template template = BootstrapTemplate.build(clusterSpec, computeService,
        statementBuilder, entry.getKey());
View Full Code Here

        .put("hadoop-datanode", handler)
        .put("hadoop-tasktracker", handler).build());

    Function<ClusterSpec, ComputeServiceContext> getCompute = mock(Function.class);
    ComputeServiceContext serviceContext = mock(ComputeServiceContext.class);
    ComputeService computeService = mock(ComputeService.class);
    TemplateBuilder templateBuilder = mock(TemplateBuilder.class);
    Template template = mock(Template.class);

    when(getCompute.apply(clusterSpec)).thenReturn(serviceContext);
    when(serviceContext.getComputeService()).thenReturn(computeService);
    when(computeService.getContext()).thenReturn(serviceContext);
    when(serviceContext.getBackendType()).thenReturn(TypeToken.class.cast(TypeToken.of(Context.class)));
    when(computeService.templateBuilder()).thenReturn(templateBuilder);
    when(templateBuilder.from((TemplateBuilderSpec) any())).thenReturn(templateBuilder);
    when(templateBuilder.options((TemplateOptions) any())).thenReturn(templateBuilder);
    when(templateBuilder.build()).thenReturn(template);
   
    // here is a scenario when jt+nn fails once, then the retry is successful
View Full Code Here

        .put("hadoop-datanode", handler)
        .put("hadoop-tasktracker", handler).build());

    Function<ClusterSpec, ComputeServiceContext> getCompute = mock(Function.class);
    ComputeServiceContext serviceContext = mock(ComputeServiceContext.class);
    ComputeService computeService = mock(ComputeService.class);
    TemplateBuilder templateBuilder = mock(TemplateBuilder.class);
    Template template = mock(Template.class);

    when(getCompute.apply(clusterSpec)).thenReturn(serviceContext);
    when(serviceContext.getComputeService()).thenReturn(computeService);
    when(computeService.getContext()).thenReturn(serviceContext);
    when(serviceContext.getBackendType()).thenReturn(TypeToken.class.cast(TypeToken.of(Context.class)));
    when(computeService.templateBuilder()).thenReturn(templateBuilder);
    when(templateBuilder.from((TemplateBuilderSpec) any())).thenReturn(templateBuilder);
    when(templateBuilder.options((TemplateOptions) any())).thenReturn(templateBuilder);
    when(templateBuilder.build()).thenReturn(template);
   
    // here is a scenario when jt+nn does not fail
View Full Code Here

    LoadingCache<String, ClusterActionHandler> handlerMap = new HandlerMapFactory().create(ImmutableSet.of(puppetHandlerFactory),
          ImmutableSet.of(handler));

    Function<ClusterSpec, ComputeServiceContext> getCompute = mock(Function.class);
    ComputeServiceContext serviceContext = mock(ComputeServiceContext.class);
    ComputeService computeService = mock(ComputeService.class);
    TemplateBuilder templateBuilder = mock(TemplateBuilder.class);
    Template template = mock(Template.class);

    when(getCompute.apply(clusterSpec)).thenReturn(serviceContext);
    when(serviceContext.getComputeService()).thenReturn(computeService);
    when(computeService.getContext()).thenReturn(serviceContext);
    when(serviceContext.getBackendType()).thenReturn(TypeToken.class.cast(TypeToken.of(Context.class)));
    when(computeService.templateBuilder()).thenReturn(templateBuilder);
    when(templateBuilder.from((TemplateBuilderSpec) any())).thenReturn(templateBuilder);
    when(templateBuilder.options((TemplateOptions) any())).thenReturn(templateBuilder);
    when(templateBuilder.build()).thenReturn(template);
   
    Map<Set<String>, Stack<Integer>> reaction = Maps.newHashMap();
View Full Code Here

    LoadingCache<String, ClusterActionHandler> handlerMap = new HandlerMapFactory().create(
      ImmutableSet.of(puppetHandlerFactory), ImmutableSet.of(handler));

    Function<ClusterSpec, ComputeServiceContext> getCompute = mock(Function.class);
    ComputeServiceContext serviceContext = mock(ComputeServiceContext.class);
    ComputeService computeService = mock(ComputeService.class);
    TemplateBuilder templateBuilder = mock(TemplateBuilder.class);
    Template template = mock(Template.class);


    when(getCompute.apply(clusterSpec)).thenReturn(serviceContext);
    when(serviceContext.getComputeService()).thenReturn(computeService);
    when(computeService.templateBuilder()).thenReturn(templateBuilder);
    when(templateBuilder.from((TemplateBuilderSpec) any())).thenReturn(templateBuilder);
    when(templateBuilder.options((TemplateOptions) any())).thenReturn(templateBuilder);
    when(templateBuilder.build()).thenReturn(template);
   
    Map<Set<String>, Stack<Integer>> reaction = Maps.newHashMap();
View Full Code Here

                if (subjectedSerCtxt != null && subjectedSerCtxt.getCartridge() != null) {
                    List<IaasProvider> iaases = subjectedSerCtxt.getCartridge().getIaases();

                    for (IaasProvider iaas : iaases) {

                        ComputeService computeService = iaas.getComputeService();
                       
                        if(computeService == null){
                            continue;
                        }
                       
                        IaasContext ctxt = null;
                        if((ctxt = subjectedSerCtxt.getIaasContext(iaas.getType())) == null){
                          ctxt = subjectedSerCtxt.addIaasContext(iaas.getType());
                        }

                        // get list of node Ids
                        List<String> nodeIds = ctxt.getAllNodeIds();

                        if (nodeIds.isEmpty()) {
                           
                            continue;
                        }
                       
                        try {

                            // get all the nodes spawned by this IaasContext
                            Set<? extends ComputeMetadata> set = computeService.listNodes();

                            Iterator<? extends ComputeMetadata> iterator = set.iterator();

                            // traverse through all nodes of this ComputeService object
                            while (iterator.hasNext()) {
View Full Code Here

  }

  @Override
  public String startInstance(String domainName, String subDomainName) {

    ComputeService computeService;
    Template template;
    String ip = "";
    final Lock lock = new ReentrantLock();

    // check for sub domain
    subDomainName = checkSubDomain(subDomainName);

    log.info("Starting new instance of domain : " + domainName
        + " and sub domain : " + subDomainName);

    // get the subjected ServiceContext
    ServiceContext serviceCtxt = dataHolder
        .getServiceContext(domainName, subDomainName);

    if (serviceCtxt == null) {
      String msg = "Not a registered service: domain - " + domainName
          + ", sub domain - " + subDomainName;
      log.fatal(msg);
      throw new CloudControllerException(msg);
    }

    // load Cartridge
    serviceCtxt.setCartridge(loadCartridge(serviceCtxt.getCartridgeType(),
        serviceCtxt.getPayload(), dataHolder
            .getCartridges()));

    if (serviceCtxt.getCartridge() == null) {
      String msg = "There's no registered Cartridge found. Domain - "
          + domainName + ", sub domain - " + subDomainName;
      log.fatal(msg);
      throw new CloudControllerException(msg);
    }

    if (serviceCtxt.getCartridge().getIaases().isEmpty()) {
      String msg = "There's no registered IaaSes found for Cartridge type: "
          + serviceCtxt.getCartridge().getType();
      log.fatal(msg);
      throw new CloudControllerException(msg);
    }

    // sort the IaasProviders according to scale up order
    Collections.sort(serviceCtxt.getCartridge().getIaases(),
        IaasProviderComparator.ascending(IaasProviderComparator
            .getComparator(IaasProviderComparator.SCALE_UP_SORT)));

    for (IaasProvider iaas : serviceCtxt.getCartridge().getIaases()) {

      IaasContext ctxt = null;
      if ((ctxt = serviceCtxt.getIaasContext(iaas.getType())) == null) {
        ctxt = serviceCtxt.addIaasContext(iaas.getType());
      }

      if (iaas.getMaxInstanceLimit() > dataHolder.getActiveInstanceCount(iaas.getType())) {
        try {

          iaas.getIaas().setDynamicPayload(iaas);

          // get the ComputeService
          computeService = iaas.getComputeService();

          // corresponding Template
          template = iaas.getTemplate();

          if (template == null) {
            String msg = "Failed to start an instance in "
                + iaas.getType()
                + ". Reason : Template is null. You have not specify a matching service "
                + "element in the configuration file of Autoscaler.\n Hence, will try to "
                + "start in another IaaS if available.";
            log.error(msg);
            continue;
          }

          // set instance name as the host name
          // template.getOptions().userMetadata("Name",
          // serviceCtxt.getHostName());
          // template.getOptions().as(TemplateOptions.class).userMetadata("Name",
          // serviceCtxt.getHostName());

          // generate the group id from domain name and sub domain
          // name.
          // Should have lower-case ASCII letters, numbers, or dashes.
          // Should have a length between 3-15
          String str = domainName.concat("-" + subDomainName)
              .substring(0, 10);
          String group = str.replaceAll("[^a-z0-9-]", "");

          NodeMetadata node;

          // create and start a node
          Set<? extends NodeMetadata> nodes = computeService
              .createNodesInGroup(group, 1, template);

          node = nodes.iterator().next();

          String autoAssignIpProp = iaas
View Full Code Here

      List<IaasProvider> iaases = subjectedSerCtxt.getCartridge()
          .getIaases();

      for (IaasProvider iaas : iaases) {

        ComputeService computeService = iaas.getComputeService();

        IaasContext ctxt = null;
        if ((ctxt = subjectedSerCtxt.getIaasContext(iaas.getType())) == null) {
          ctxt = subjectedSerCtxt.addIaasContext(iaas.getType());
        }

        // get list of node Ids which are belong to this domain- sub
        // domain
        List<String> nodeIds = ctxt.getNodeIds();

        if (nodeIds.isEmpty()) {
          log.debug("Zero nodes spawned in the IaaS "
              + iaas.getType() + " of domain: " + domainName
              + " and sub domain: " + subDomainName);
          continue;
        }

        // get all the nodes spawned by this IaasContext
        Set<? extends ComputeMetadata> set = computeService.listNodes();

        Iterator<? extends ComputeMetadata> iterator = set.iterator();

        // traverse through all nodes of this ComputeService object
        while (iterator.hasNext()) {
View Full Code Here

TOP

Related Classes of org.jclouds.compute.ComputeService

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.