hadoop与python的端口冲突

pvabu6sv  于 2021-05-30  发布在  Hadoop
关注(0)|答案(2)|浏览(662)

我正在ubuntu12.04集群上安装hadoop2.5.0,64位。在指令的末尾我键入 $ jps 在主节点上,不获取namenode。我查看了hadoop日志,发现:
bindexception错误声明:9000已在使用中。 $ netstat -a -t --numeric-ports -p | grep :9000 返回python正在侦听此端口。看来我需要将Python2.7移到另一个端口。如何移动python?
按照下面的命令,pid=2346。
$ps-2346便士
pid tty时间命令
2346 ? 01:28:13Python
第二个命令:
$ps-lp 2346美元
f s uid pid ppid c pri ni addr sz wchan tty time命令
4 s 0 2346 1 0 80 0-332027投票?01:28:30Python
更多细节:
$ps-cp 2346美元
pid tty stat time命令
2346 ? ssl88:34/usr/lib/cmf/agent/build/env/bin/python/usr/lib/cmf/agent/src/cmf/agent.py—包目录/usr/lib/cmf
似乎一个失败的cloudera hadoop发行版安装尚未删除。它自动安装了python2.7。不确定还会自动运行什么。将尝试卸载python 2.7。

j2qf4p5b

j2qf4p5b1#

cloudera似乎安装了python2.7。这已被python3.2删除/替换。hadoop上的$jps命令现在返回包括namenode在内的预期结果。

pbpqsu0x

pbpqsu0x2#

很明显,用python编写的程序使用的是端口9000,而不是python2.7本身。
你需要追踪这个程序,然后找出如何配置它来监听不同的端口。您可以使用此命令获取监听端口9000的进程的完整详细信息

netstat -a -t --numeric-ports -p | grep :9000 | awk '{print $7}' | sed -e 's/\/.*//'  | xargs echo ps -lp

相关问题