Search in sources :

Example 1 with YARNRunner

use of org.apache.hadoop.mapred.YARNRunner in project hadoop by apache.

the class TestYarnClientProtocolProvider method testClusterGetDelegationToken.

@Test
public void testClusterGetDelegationToken() throws Exception {
    Configuration conf = new Configuration(false);
    Cluster cluster = null;
    try {
        conf = new Configuration();
        conf.set(MRConfig.FRAMEWORK_NAME, MRConfig.YARN_FRAMEWORK_NAME);
        cluster = new Cluster(conf);
        YARNRunner yrunner = (YARNRunner) cluster.getClient();
        GetDelegationTokenResponse getDTResponse = recordFactory.newRecordInstance(GetDelegationTokenResponse.class);
        org.apache.hadoop.yarn.api.records.Token rmDTToken = recordFactory.newRecordInstance(org.apache.hadoop.yarn.api.records.Token.class);
        rmDTToken.setIdentifier(ByteBuffer.wrap(new byte[2]));
        rmDTToken.setKind("Testclusterkind");
        rmDTToken.setPassword(ByteBuffer.wrap("testcluster".getBytes()));
        rmDTToken.setService("0.0.0.0:8032");
        getDTResponse.setRMDelegationToken(rmDTToken);
        final ApplicationClientProtocol cRMProtocol = mock(ApplicationClientProtocol.class);
        when(cRMProtocol.getDelegationToken(any(GetDelegationTokenRequest.class))).thenReturn(getDTResponse);
        ResourceMgrDelegate rmgrDelegate = new ResourceMgrDelegate(new YarnConfiguration(conf)) {

            @Override
            protected void serviceStart() throws Exception {
                assertTrue(this.client instanceof YarnClientImpl);
                this.client = spy(this.client);
                doNothing().when(this.client).close();
                ((YarnClientImpl) this.client).setRMClient(cRMProtocol);
            }
        };
        yrunner.setResourceMgrDelegate(rmgrDelegate);
        Token t = cluster.getDelegationToken(new Text(" "));
        assertTrue("Token kind is instead " + t.getKind().toString(), "Testclusterkind".equals(t.getKind().toString()));
    } finally {
        if (cluster != null) {
            cluster.close();
        }
    }
}
Also used : YarnConfiguration(org.apache.hadoop.yarn.conf.YarnConfiguration) Configuration(org.apache.hadoop.conf.Configuration) GetDelegationTokenResponse(org.apache.hadoop.yarn.api.protocolrecords.GetDelegationTokenResponse) Token(org.apache.hadoop.security.token.Token) Text(org.apache.hadoop.io.Text) YarnClientImpl(org.apache.hadoop.yarn.client.api.impl.YarnClientImpl) ApplicationClientProtocol(org.apache.hadoop.yarn.api.ApplicationClientProtocol) GetDelegationTokenRequest(org.apache.hadoop.yarn.api.protocolrecords.GetDelegationTokenRequest) ResourceMgrDelegate(org.apache.hadoop.mapred.ResourceMgrDelegate) YARNRunner(org.apache.hadoop.mapred.YARNRunner) YarnConfiguration(org.apache.hadoop.yarn.conf.YarnConfiguration) Test(org.junit.Test)

Example 2 with YARNRunner

use of org.apache.hadoop.mapred.YARNRunner in project hadoop by apache.

the class TestClientProtocolProviderImpls method testClusterWithYarnClientProvider.

@Test
public void testClusterWithYarnClientProvider() throws Exception {
    Configuration conf = new Configuration();
    conf.set(MRConfig.FRAMEWORK_NAME, "yarn");
    Cluster cluster = new Cluster(conf);
    assertTrue(cluster.getClient() instanceof YARNRunner);
    cluster.close();
}
Also used : Configuration(org.apache.hadoop.conf.Configuration) YARNRunner(org.apache.hadoop.mapred.YARNRunner) Test(org.junit.Test)

Example 3 with YARNRunner

use of org.apache.hadoop.mapred.YARNRunner in project hadoop by apache.

the class TestYarnClientProtocolProvider method testClusterWithYarnClientProtocolProvider.

@Test
public void testClusterWithYarnClientProtocolProvider() throws Exception {
    Configuration conf = new Configuration(false);
    Cluster cluster = null;
    try {
        cluster = new Cluster(conf);
    } catch (Exception e) {
        throw new Exception("Failed to initialize a local runner w/o a cluster framework key", e);
    }
    try {
        assertTrue("client is not a LocalJobRunner", cluster.getClient() instanceof LocalJobRunner);
    } finally {
        if (cluster != null) {
            cluster.close();
        }
    }
    try {
        conf = new Configuration();
        conf.set(MRConfig.FRAMEWORK_NAME, MRConfig.YARN_FRAMEWORK_NAME);
        cluster = new Cluster(conf);
        ClientProtocol client = cluster.getClient();
        assertTrue("client is a YARNRunner", client instanceof YARNRunner);
    } catch (IOException e) {
    } finally {
        if (cluster != null) {
            cluster.close();
        }
    }
}
Also used : YarnConfiguration(org.apache.hadoop.yarn.conf.YarnConfiguration) Configuration(org.apache.hadoop.conf.Configuration) YARNRunner(org.apache.hadoop.mapred.YARNRunner) IOException(java.io.IOException) ApplicationClientProtocol(org.apache.hadoop.yarn.api.ApplicationClientProtocol) ClientProtocol(org.apache.hadoop.mapreduce.protocol.ClientProtocol) IOException(java.io.IOException) LocalJobRunner(org.apache.hadoop.mapred.LocalJobRunner) Test(org.junit.Test)

Aggregations

Configuration (org.apache.hadoop.conf.Configuration)3 YARNRunner (org.apache.hadoop.mapred.YARNRunner)3 Test (org.junit.Test)3 ApplicationClientProtocol (org.apache.hadoop.yarn.api.ApplicationClientProtocol)2 YarnConfiguration (org.apache.hadoop.yarn.conf.YarnConfiguration)2 IOException (java.io.IOException)1 Text (org.apache.hadoop.io.Text)1 LocalJobRunner (org.apache.hadoop.mapred.LocalJobRunner)1 ResourceMgrDelegate (org.apache.hadoop.mapred.ResourceMgrDelegate)1 ClientProtocol (org.apache.hadoop.mapreduce.protocol.ClientProtocol)1 Token (org.apache.hadoop.security.token.Token)1 GetDelegationTokenRequest (org.apache.hadoop.yarn.api.protocolrecords.GetDelegationTokenRequest)1 GetDelegationTokenResponse (org.apache.hadoop.yarn.api.protocolrecords.GetDelegationTokenResponse)1 YarnClientImpl (org.apache.hadoop.yarn.client.api.impl.YarnClientImpl)1