我正在尝试获取服务的状态,即在本地虚拟机上运行的Spark(独立)服务上运行的spark-master和spark-slaves
但是,sudo service spark-master status
无法正常运行。
有人可以提供一些关于如何检查Spark服务状态的提示吗?
答案 0 :(得分:3)
我使用jps -lm
作为获取盒子上任何JVM状态的工具,包括Spark。有关-lm
命令行选项旁边的更多详细信息,请参阅jps documentation。
如果你想过滤掉真正属于Spark的JVM进程,你应该管道它并使用特定于操作系统的工具,如grep
。
➜ spark git:(master) ✗ jps -lm
999 org.apache.spark.deploy.master.Master --ip japila.local --port 7077 --webui-port 8080
397
669 org.jetbrains.idea.maven.server.RemoteMavenServer
1198 sun.tools.jps.Jps -lm
➜ spark git:(master) ✗ jps -lm | grep -i spark
999 org.apache.spark.deploy.master.Master --ip japila.local --port 7077 --webui-port 8080
您也可以查看./sbin/spark-daemon.sh status
,但我对该工具的了解有限并不适合推荐。
使用sbin
下的脚本启动Spark Standalone时,默认情况下PID存储在/tmp
目录中。 ./sbin/spark-daemon.sh status
可以读取它们并为你做“样板”,即状态为PID。
➜ spark git:(master) ✗ jps -lm | grep -i spark
999 org.apache.spark.deploy.master.Master --ip japila.local --port 7077 --webui-port 8080
➜ spark git:(master) ✗ ls /tmp/spark-*.pid
/tmp/spark-jacek-org.apache.spark.deploy.master.Master-1.pid
➜ spark git:(master) ✗ ./sbin/spark-daemon.sh status org.apache.spark.deploy.master.Master 1
org.apache.spark.deploy.master.Master is running.
答案 1 :(得分:1)
ps -ef | grep spark
适用于所有pid的详细信息