Example usage for com.amazonaws.services.elasticmapreduce.model DescribeClusterRequest DescribeClusterRequest

List of usage examples for com.amazonaws.services.elasticmapreduce.model DescribeClusterRequest DescribeClusterRequest

Introduction

In this page you can find the example usage for com.amazonaws.services.elasticmapreduce.model DescribeClusterRequest DescribeClusterRequest.

Prototype

DescribeClusterRequest

Source Link

Usage

From source file:com.aegeus.aws.ElasticMapReduceService.java

License:Apache License

/**
 * Wait cluster until cluster is ready/*from  w  w  w . j a v  a 2s  . c  o m*/
 */
public void waitCluster() {
    String lastReason = null;
    DescribeClusterRequest request = new DescribeClusterRequest().withClusterId(clusterId);
    DescribeClusterResult result;

    while (true) {
        try {
            result = emr.describeCluster(request);
            String reason = result.getCluster().getStatus().getStateChangeReason().getMessage();

            if (!reason.equals(lastReason)) {
                LOGGER.info("Cluster status changed. New status is " + reason);
                lastReason = reason;
            }

            ClusterState status = ClusterState.fromValue(result.getCluster().getStatus().getState());
            if (status.equals(ClusterState.WAITING)) {
                return;
            }

            Thread.sleep(SLEEP);
        } catch (InterruptedException e) {
            LOGGER.error(e.getMessage(), e);
        }
    }
}

From source file:org.finra.dm.dao.impl.EmrDaoImpl.java

License:Apache License

/**
 * Get EMR cluster by cluster Id./*from  w  ww.  j  av a 2 s . c  o m*/
 *
 * @param clusterId the job Id returned by EMR for the cluster.
 * @param awsParams AWS related parameters for access/secret keys and proxy details.
 *
 * @return the cluster status.
 */
@Override
public Cluster getEmrClusterById(String clusterId, AwsParamsDto awsParams) {
    Cluster cluster = null;
    if (StringUtils.isNotBlank(clusterId)) {
        DescribeClusterResult describeClusterResult = emrOperations.describeClusterRequest(
                getEmrClient(awsParams), new DescribeClusterRequest().withClusterId(clusterId));
        if (describeClusterResult != null && describeClusterResult.getCluster() != null) {
            cluster = describeClusterResult.getCluster();
        }
    }

    return cluster;
}

From source file:org.finra.herd.dao.impl.EmrDaoImpl.java

License:Apache License

@Override
public Cluster getEmrClusterById(String clusterId, AwsParamsDto awsParams) {
    Cluster cluster = null;// w w  w.  jav a 2 s  .  c o  m
    if (StringUtils.isNotBlank(clusterId)) {
        DescribeClusterResult describeClusterResult = emrOperations.describeClusterRequest(
                getEmrClient(awsParams), new DescribeClusterRequest().withClusterId(clusterId));
        if (describeClusterResult != null && describeClusterResult.getCluster() != null) {
            cluster = describeClusterResult.getCluster();
        }
    }

    return cluster;
}

From source file:org.pentaho.amazon.client.impl.EmrClientImpl.java

License:Apache License

private String getActualClusterState() {
    String clusterState = null;/*w  ww. j  a v a  2  s .  c  om*/
    DescribeClusterRequest describeClusterRequest = new DescribeClusterRequest();
    describeClusterRequest.setClusterId(hadoopJobFlowId);
    DescribeClusterResult describeClusterResult = emrClient.describeCluster(describeClusterRequest);

    if (describeClusterResult != null) {
        clusterState = describeClusterResult.getCluster().getStatus().getState();
    }
    return clusterState;
}

From source file:org.pentaho.amazon.client.impl.EmrClientImpl.java

License:Apache License

@Override
public String getJobFlowLogUri() throws URISyntaxException {
    DescribeClusterRequest clusterRequest = new DescribeClusterRequest();
    clusterRequest.setClusterId(hadoopJobFlowId);

    DescribeClusterResult clusterResult = emrClient.describeCluster(clusterRequest);
    String clusterLogUri = clusterResult.getCluster().getLogUri();
    String clusterLogBucket = new URI(clusterLogUri).getHost();
    return clusterLogBucket;
}