2016-02-26 52 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

相關問題