2016-02-26 47 views

回答

1

看看这个:register_instance Boto3/OpsWork。在注册实例时有两部分,Boto3只能做第二部分。

我们不建议使用此操作来注册实例。 完整注册操作有两个主要步骤:在该实例上安装AWS OpsWorks代理,并使用 注册堆栈。 RegisterInstance只处理第二步。您应该使用AWS CLI注册命令 ,该命令执行整个 注册操作。欲了解更多信息,请参阅注册的 实例与AWS OpsWorks堆栈

要在lambda函数运行CLI,请确保您的拉姆达Exec的角色具有执行OpsWork CLI并调用一些像这样的事情在特权您的蟒蛇Lambda:

import subprocess 
subprocess.call(["aws", "--region", "us-east-1", "opsworks", "register-instance", "--stack-id", "<stack-id>"]) 

查看OpsWorks CLI了解更多信息。

+0

的确,这就是为什么我需要知道是否可以从Lambda运行CLI – Casper

+0

@Casper我已经更新了我的答案。 – helloV

+0

谢谢,但它甚至工作?我如何传递SSH密钥和配置文件?从python,我已经有ssh密钥和访问键作为变量。另外,我可以检索返回输出吗? – Casper

相关问题