是否可以在AWS EC2中从python运行java命令行应用程序?

时间:2015-04-11 00:22:21

标签: java python amazon-web-services amazon-ec2

我正在为python中的化学建模进行一些机器学习。我需要运行一个java应用程序(从命令行到python subprocess.call)和一个python webserver。这是否可以在AWS EC2上使用?

我目前在Mac上运行此设置,但我很好奇如何在aws上设置它。

提前致谢!

1 个答案:

答案 0 :(得分:0)

由于您只是对Java应用程序进行命令行调用,因此阻力最小的路径就是使用ssh从另一台服务器进行调用。您可以使用subprocess.call轻松调整您一直使用的命令,以使用ssh - 或多或少,subprocess.call(['ssh', '{user}@{server}', command])(虽然可以很方便地找出引号)。顺便说一下,我通常会发现使用'-o StrictHostKeyChecking = no -o UserKnownHostsFile = / dev / null'可以稳定我环境中的脚本化SSH调用。

更复杂的是设置环境以正确运行所需的组件。您需要设置ssh配置,以便您的django应用程序可以进行ssh over和设置 - 可能使用私钥验证。然后,您需要确保设置EC2安全组以允许ssh访问端口22上的Java服务器,默认情况下sshd监听。

这些都不是那么毛茸茸,但同样的,将Java服务包装在您的Django应用程序可以访问的HTTP服务器中可能更稳定。无论如何,希望这是有帮助的。