我想用php而不是终端启动hadoop守护进程。
当我启动dfs.sh时,它运行得很好。
我使用的php代码是
<?php
echo shell_exec('/usr/local/hadoop3/sbin/stop-dfs.sh');
?>
以上代码的输出是
在[localhost]上启动namenodes启动datanodes。正在启动辅助名称节点[chbpc virtualbox]。
但是当我输入网址时 http://localhost:9870/dfshealth.html#tab-overview
在浏览器中(检查hadoop的状态),它实际上没有启动,尽管有上面的输出。
1条答案
按热度按时间ne5o7dgx1#
回答
描述
当您使用shell\u exec运行守护进程时,您应该从这个进程中分离shell\u exec命令,但是您应该保持守护进程处于progress状态。
&
-提供这样做。另外,您可能正在使用自定义日志文件/dev/null,stop-dfs.sh中的所有信息都将重定向到此文件。
我对这个解决方案的测试
将此代码段复制到bash控制台:
ps公司
你在用什么
stop-dfs.sh
启动hadoop的脚本名,也可能是将脚本名与start.sh
?