我想在远程位置使用ssh连接执行一个spark作业。如何从spark-submit获取返回码?
有一些情况下,作业失败,但调度程序将其标记为“成功”,所以我想检查火花提交的返回代码,所以我可以强制失败它。
下面是我使用
def execute_XXXX():
f = open('linux.pem','r')
s = f.read()
keyfile = StringIO.StringIO(s)
mykey = paramiko.RSAKey.from_private_key(keyfile)
sshcon = paramiko.SSHClient()
sshcon.set_missing_host_key_policy(paramiko.AutoAddPolicy())
sshcon.connect('XXX.XXX.XXX.XXX', username='XXX', pkey=mykey)
stdin, stderr, stdout= sshcon.exec_command('spark-submit XXX.py')
logger.info("XXX ------>"+str(stdout.readlines()))
logger.info("Error--------->"+str(stderr.readlines()))
代码如何获得的返回码火花提交的工作,所以我可以有力地失败的任务。 或者你可以建议一个替代解决方案。
感谢,阿赫亚