Here is a very simple implementation of a time-out for a ssh command executed in popen.
#!/usr/bin/python3
import os
def main():
node = 'haspp99'
com = "timeout 3 ssh -x root@%s \"lsb_release -a\"" % (node)
lines = os.popen( com).readlines()
if len( lines) == 0:
print( "bad reply from %s" % node)
else:
print( "reply %s" % repr( lines))
return
if __name__ == "__main__":
main()