Java 没有根权限的Hadoop字数示例

Java 没有根权限的Hadoop字数示例,java,hadoop,Java,Hadoop,我试图在没有root权限的Linux机器上运行这个hadoop字数计算示例。不过,我一直在犯这个错误 13/08/27 16:00:08 ERROR security.UserGroupInformation: PriviledgedActionException as:priyankara cause:org.apache.hadoop.ipc.RemoteException: org.apache.hadoop.mapred.JobTrackerNotYetInitializedExcept

我试图在没有root权限的Linux机器上运行这个hadoop字数计算示例。不过,我一直在犯这个错误

13/08/27 16:00:08 ERROR security.UserGroupInformation: PriviledgedActionException as:priyankara cause:org.apache.hadoop.ipc.RemoteException: org.apache.hadoop.mapred.JobTrackerNotYetInitializedException: JobTracker is not yet RUNNING
    at org.apache.hadoop.mapred.JobTracker.checkJobTrackerState(JobTracker.java:5199)
    at org.apache.hadoop.mapred.JobTracker.getNewJobId(JobTracker.java:3543)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:587)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1432)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1428)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
    at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1426)

org.apache.hadoop.ipc.RemoteException: org.apache.hadoop.mapred.JobTrackerNotYetInitializedException: JobTracker is not yet RUNNING
    at org.apache.hadoop.mapred.JobTracker.checkJobTrackerState(JobTracker.java:5199)
    at org.apache.hadoop.mapred.JobTracker.getNewJobId(JobTracker.java:3543)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:587)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1432)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1428)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
    at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1426)

    at org.apache.hadoop.ipc.Client.call(Client.java:1113)
    at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:229)
    at org.apache.hadoop.mapred.$Proxy2.getNewJobId(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:85)
    at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:62)
    at org.apache.hadoop.mapred.$Proxy2.getNewJobId(Unknown Source)
    at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:944)
    at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:936)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
    at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:936)
    at org.apache.hadoop.mapreduce.Job.submit(Job.java:550)
    at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:580)
    at org.apache.hadoop.examples.WordCount.main(WordCount.java:82)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
    at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
    at org.apache.hadoop.examples.ExampleDriver.main(ExampleDriver.java:64)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:160)
发生了什么事?我怎样才能解决这个问题


我想问题是我没有那台机器的root权限。是否有办法在没有root权限的情况下运行此示例?

通过编辑etc/hosts文件解决了此问题

我们必须将Ip地址和主机名放在/etc/hosts文件中。 例子, 如果您的Ip为192.255.50.1,则您的用户名为“user”,您必须将它们作为

192.255.50.1 user

通过编辑etc/hosts文件解决了该问题

我们必须将Ip地址和主机名放在/etc/hosts文件中。 例子, 如果您的Ip为192.255.50.1,则您的用户名为“user”,您必须将它们作为

192.255.50.1 user

请检查您的主机名,是“localhost”还是其他名称

您可以尝试将主机名更改为“localhost”,而不是重新启动Hadoop。比如说,

$ hostname localhost

$ $HADOOP_HOME/bin/stop-all.sh

$ $HADOOP_HOME/bin/start-all.sh

这对我的案子有效。为您提供信息,祝您好运

请检查您的主机名,是“localhost”还是其他名称

您可以尝试将主机名更改为“localhost”,而不是重新启动Hadoop。比如说,

$ hostname localhost

$ $HADOOP_HOME/bin/stop-all.sh

$ $HADOOP_HOME/bin/start-all.sh

这对我的案子有效。为您提供信息,祝您好运

我试图在Windows上使用minicluster, 192.255.50.1用户的建议修复了我的问题,我将127.0.0.1 myloginname(用户)放在了上面。它修复了我的Datanode拒绝与namenode通信的问题:
谢谢DilanG我试着在Windows上使用minicluster, 192.255.50.1用户的建议修复了我的问题,我将127.0.0.1 myloginname(用户)放在了上面。它修复了我的Datanode拒绝与namenode通信的问题:
谢谢DilanG

你开始找工作了吗?您可能希望检查作业跟踪器日志(位置因发行版/安装方法而异),以查看上面显示的错误消息<代码>作业跟踪器尚未运行的原因(文件权限错误,HDFS未运行,…)你能告诉我在哪里可以找到我的jobtracker日志以及如何检查这些日志吗..你使用的是hadoop的哪个发行版,你是如何/在哪里安装的?hadoop-1.2.1我已经在home/apps/hadoop-1.2.1登录
/home/apps/hadoop-1.2.1/logs/*-jobtracker-*.log
你启动jobtracker了吗?您可能希望检查作业跟踪器日志(位置因发行版/安装方法而异),以查看上面显示的错误消息<代码>作业跟踪器尚未运行的原因(文件权限错误,HDFS未运行,…)您能告诉我在哪里可以找到我的jobtracker日志以及如何检查这些日志吗..您使用的是hadoop的哪个发行版,您是如何/在哪里安装的?hadoop-1.2.1我已经在home/apps/hadoop-1.2.1登录
/home/apps/hadoop-1.2.1/logs/*-jobtracker-*.log
请描述您是如何编辑的
etc/hosts
;这个答案对其他任何人都没有实际意义。你必须打开你的终端。然后键入[gedit/etc/hosts]命令并按enter键。我已经使用gedit作为文本编辑器,您可以用编辑器(vi/vim…)替换它。请描述您如何编辑
etc/hosts
;这个答案对其他任何人都没有实际意义。你必须打开你的终端。然后键入[gedit/etc/hosts]命令并按enter键。我使用gedit作为文本编辑器,您可以用编辑器(vi/vim…)替换它