복붙노트

[HADOOP] oozie에 Sqoop을 조치를 실행

HADOOP

oozie에 Sqoop을 조치를 실행

이 오류를 받고 있어요; oozie에 Sqoop을 조치를 실행하는 경우

2016-06-07 18:30:44,318  INFO ActionStartXCommand:539 - USER[hadoop] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[0000000-160607182749891-oozie-hado-W@:start:] Start action [0000000-160607182749891-oozie-hado-W@:start:] with user-retry state : userRetryCount [0], userRetryMax [0], userRetryInterval [10]
2016-06-07 18:30:44,329  WARN ActionStartXCommand:542 - USER[hadoop] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[0000000-160607182749891-oozie-hado-W@:start:] [***0000000-160607182749891-oozie-hado-W@:start:***]Action status=DONE
2016-06-07 18:30:44,334  WARN ActionStartXCommand:542 - USER[hadoop] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[0000000-160607182749891-oozie-hado-W@:start:] [***0000000-160607182749891-oozie-hado-W@:start:***]Action updated in DB!
2016-06-07 18:30:44,571  INFO ActionStartXCommand:539 - USER[hadoop] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[0000000-160607182749891-oozie-hado-W@sqoop-node] Start action [0000000-160607182749891-oozie-hado-W@sqoop-node] with user-retry state : userRetryCount [0], userRetryMax [0], userRetryInterval [10]
2016-06-07 18:30:47,119  WARN SqoopActionExecutor:542 - USER[hadoop] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[0000000-160607182749891-oozie-hado-W@sqoop-node] credentials is null for the action
2016-06-07 18:30:53,372  INFO SqoopActionExecutor:539 - USER[hadoop] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[0000000-160607182749891-oozie-hado-W@sqoop-node] checking action, external ID [job_1465303982073_0001] status [RUNNING]
2016-06-07 18:30:53,375  WARN ActionStartXCommand:542 - USER[hadoop] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[0000000-160607182749891-oozie-hado-W@sqoop-node] [***0000000-160607182749891-oozie-hado-W@sqoop-node***]Action status=RUNNING
2016-06-07 18:30:53,375  WARN ActionStartXCommand:542 - USER[hadoop] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[0000000-160607182749891-oozie-hado-W@sqoop-node] [***0000000-160607182749891-oozie-hado-W@sqoop-node***]Action updated in DB!
2016-06-07 18:31:00,150  WARN V2JobServlet:542 - USER[-] GROUP[-] TOKEN[] APP[sqoop-wf] JOB[0000000-160607182749891-oozie-hado-W] ACTION[-] URL[GET http://localhost:11000/oozie/v2/job/0000000-160607182749891-oozie-hado-W?show=graph] error[E0307], E0307: Runtime error [null]
org.apache.oozie.servlet.XServletException: E0307: Runtime error [null]
    at org.apache.oozie.servlet.V1JobServlet.streamJobGraph(V1JobServlet.java:293)
    at org.apache.oozie.servlet.BaseJobServlet.doGet(BaseJobServlet.java:264)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    at org.apache.oozie.servlet.JsonRestServlet.service(JsonRestServlet.java:286)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.oozie.servlet.AuthFilter$2.doFilter(AuthFilter.java:126)
    at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:384)
    at org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:131)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.oozie.servlet.HostnameFilter.doFilter(HostnameFilter.java:84)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
    at javax.swing.MultiUIDefaults.getUIError(MultiUIDefaults.java:130)
    at javax.swing.UIDefaults.getUI(UIDefaults.java:760)
    at javax.swing.UIManager.getUI(UIManager.java:1016)
    at javax.swing.JPanel.updateUI(JPanel.java:126)
    at javax.swing.JPanel.<init>(JPanel.java:86)
    at javax.swing.JPanel.<init>(JPanel.java:109)
    at javax.swing.JPanel.<init>(JPanel.java:117)
    at edu.uci.ics.jung.visualization.BasicVisualizationServer.<init>(BasicVisualizationServer.java:171)
    at edu.uci.ics.jung.visualization.BasicVisualizationServer.<init>(BasicVisualizationServer.java:150)
    at edu.uci.ics.jung.visualization.VisualizationImageServer.<init>(VisualizationImageServer.java:40)
    at org.apache.oozie.util.GraphGenerator$XMLParser.endDocument(GraphGenerator.java:240)
    at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Source)
    at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
    at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
    at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at org.apache.oozie.util.GraphGenerator.write(GraphGenerator.java:103)
    at org.apache.oozie.servlet.V1JobServlet.streamJobGraph(V1JobServlet.java:290)
    ... 24 more

나는 다음 job.properties을 사용하고 있습니다

nameNode=hdfs://localhost:54310
jobTracker=localhost:8032
queueName=default
examplesRoot=firstoozieexample

oozie.use.system.libpath=true
oozie.libpath=${nameNode}/user/${user.name}/share/lib/sqoop

oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/mrsqoopjob

및 workflow.xml 파일;

<?xml version="1.0" encoding="UTF-8"?>
<workflow-app xmlns="uri:oozie:workflow:0.2" name="sqoop-wf">
    <start to="sqoop-node"/>
    <action name="sqoop-node">
        <sqoop xmlns="uri:oozie:sqoop-action:0.2">
            <job-tracker>${jobTracker}</job-tracker>
            <name-node>${nameNode}</name-node>
            <prepare>
                <delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/sqoop"/>
                <mkdir path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data"/>
            </prepare>
            <configuration>
                <property>
                    <name>mapred.job.queue.name</name>
                    <value>${queueName}</value>
                </property>
            </configuration>
            <command>import --connect jdbc:mysql://localhost:3306/employee -username root -password root --table hadoop_employee --target-dir /user/${wf:user()}/${examplesRoot}/output-data/sqoop -m 1</command>
        </sqoop>
        <ok to="end"/>
        <error to="fail"/>
    </action>

    <kill name="fail">
        <message>Sqoop failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
    </kill>
    <end name="end"/>
</workflow-app>

나는 하둡-2.7.3, Sqoop을-1.4.6, oozie-4.0.1를 사용하고, 하나가 저를 도와주세요 하루 이상이와 사투를 벌인거야.

해결법

    from https://stackoverflow.com/questions/37680428/running-sqoop-action-on-oozie by cc-by-sa and MIT license