2014-10-07 69 views
0

我的工作在以下版本:如何运行的Hadoop节点管理器作为特权帐户的Windows

OS- Windows 8的

Hadoop- 2.3(单节点集群),Pig- 0.12.1,Hive- 0.13

我可以使用Windows命令提示符(无管理员权限)启动Namenode,Datanode,ResourceManager和NodeManager。当我尝试运行mapreduce程序时,映射任务未启动,它始终显示为“映射-0%”。

注: 如果我从Windows启动“节点管理器”命令提示符具有管理员权限,然后MapReduce的程序工作正常。

节点管理器日志:

14/10/07 14:44:18 INFO http.HttpServer2: adding path spec: /node/* 
14/10/07 14:44:18 INFO http.HttpServer2: adding path spec: /ws/* 
14/10/07 14:44:18 INFO http.HttpServer2: Jetty bound to port 8042 
14/10/07 14:44:18 INFO mortbay.log: jetty-6.1.26 
14/10/07 14:44:18 INFO mortbay.log: Extract jar:file:/C:/kaveen/BDSDK/1 
.1.0.8/SDK/Hadoop/share/hadoop/yarn/hadoop-yarn-common-2.3.0.jar!/webapps/node t 
o C:\Users\kaveen\AppData\Local\Temp\Jetty_localhost_8042_node____j463i9\webapp 
14/10/07 14:44:19 INFO mortbay.log: Started [email protected]:804 
2 
14/10/07 14:44:19 INFO webapp.WebApps: Web app /node started at 8042 
14/10/07 14:44:19 INFO webapp.WebApps: Registered webapp guice modules 
14/10/07 14:44:19 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0 
:8031 
14/10/07 14:44:19 INFO nodemanager.NodeStatusUpdaterImpl: Registering with RM us 
ing finished containers :[] 
14/10/07 14:44:19 INFO security.NMContainerTokenSecretManager: Rolling master-ke 
y for container-tokens, got key with id 1336526610 
14/10/07 14:44:19 INFO security.NMTokenSecretManagerInNM: Rolling master-key for 
nm-tokens, got key with id :-93940432 
14/10/07 14:44:19 INFO nodemanager.NodeStatusUpdaterImpl: Registered with Resour 
ceManager as 127.0.0.1:49344 with total resource of <memory:8192, vCores:8> 
14/10/07 14:44:19 INFO nodemanager.NodeStatusUpdaterImpl: Notifying ContainerMan 
ager to unblock new container-requests 

ResourceManager的日志:

14/10/07 14:44:19 INFO util.RackResolver: Resolved 127.0.0.1 to /default-rack 
14/10/07 14:44:19 INFO resourcemanager.ResourceTrackerService: NodeManager from 
node 127.0.0.1(cmPort: 49344 httpPort: 8042) registered with capability: <memory 
:8192, vCores:8>, assigned nodeId 127.0.0.1:49344 
14/10/07 14:44:19 INFO rmnode.RMNodeImpl: 127.0.0.1:49344 Node Transitioned from 
NEW to RUNNING 
14/10/07 14:44:19 INFO capacity.CapacityScheduler: Added node 127.0.0.1:49344 cl 
usterResource: <memory:16384, vCores:16> 
14/10/07 14:44:19 INFO rmnode.RMNodeImpl: Node 127.0.0.1:49344 reported UNHEALTH 
Y with details: 1/1 local-dirs turned bad: /tmp/hadoop-kaveen/nm-local-dir;1/1 l 
og-dirs turned bad: C:/kaveen/BDSDK/1.1.0.8/SDK/Hadoop/logs/userlogs 
14/10/07 14:44:19 INFO rmnode.RMNodeImpl: 127.0.0.1:49344 Node Transitioned from 
RUNNING to UNHEALTHY 
14/10/07 14:44:19 INFO capacity.CapacityScheduler: Removed node 127.0.0.1:49344 
clusterResource: <memory:8192, vCores:8> 

在集群节点"http://localhost:8088/cluster/nodes"看起来像下面sceenshots。

否创建节点。

enter image description here

不要任何人知道如何没有管理员权限在Windows上运行“节点管理器”?

在此先感谢...

+0

我想当我启动nodeManager。 ResourceManager日志更改为“节点从RUNNING转换为UNEALTHY”,这可能是问题所在。如何避免这种情况? – 2014-10-07 09:49:31

回答

0
local-dirs turned bad: /tmp/hadoop-kaveen/nm-local-dir;1/1 
log-dirs turned bad: C:/kaveen/BDSDK/1.1.0.8/SDK/Hadoop/logs/userlogs 

你NM没有一个有效的本地迪尔斯,你已经离开了那个显然不打算在Windows上运行Linux的风格地方迪尔斯。日志文件也是不正确的,NM可能没有所需的权限。

绝对不需要提升NM。相反,固定本地迪尔斯纱线-site.xml中:

<property> 
<name>yarn.nodemanager.local-dirs</name> 
<value>C:/kaveen/BDSDK/1.1.0.8/SDK/Hadoop/local</value> 
</property> 

然后确保显示目录存在并且完全控制授予NM:

c:\>md C:\kaveen\BDSDK\1.1.0.8\SDK\Hadoop\local 
c:\>md C:\kaveen\BDSDK\1.1.0.8\SDK\Hadoop\logs 
c:\>cacls C:\kaveen\BDSDK\1.1.0.8\SDK\Hadoop\local /E /T /G <nm account>:F 
c:\>cacls C:\kaveen\BDSDK\1.1.0.8\SDK\Hadoop\logs/E /T /G <nm account>:F 

替换与相应的帐户。

+0

嗨Remus Rusanu,谢谢你的回复。我改变了上面的步骤,但我得到同样的错误。 “log-dirs变坏:C:/kaveen/BDSDK/1.1.0.8/SDK/Hadoop/logs/userlogs”。如果我以管理员权限启动NodeManager意味着上述错误没有出现。并且我对“C:/kaveen/BDSDK/1.1.0.8/SDK/Hadoop/logs”设置了完全权限。 – 2014-10-07 10:25:56

+0

您拥有解决问题所需的全部信息。 – 2014-10-07 12:07:49

+0

感谢Remus Rusanu,我找到了解决方案它由于权限不适用于我的临时文件夹。 – 2014-10-08 05:09:50

1

快速解决方法是在管理员权限下运行C:hadoop\sbin\start-dfsC:hadoop\sbin\start-yarn

相关问题