2017-02-03 68 views
0

我們有一個創建我們的MS SQL Server數據庫的cloudfrormation腳本。您可以在使用Lambda的Cloudformation創建的RDS上創建架構嗎?

我們有一個lambda函數,我們運行它從S3加載模式,並在我們新創建的數據庫上運行它。

在運行它之前,我們必須用新的數據庫安全組/ VPC更新Lambda函數。我們正在使用「測試」模式手動運行它。

是否可以從cloudformation腳本自動運行Lambda函數?

似乎最大的問題是將安全組/ VPC添加到Lambda函數,但也許我們可以在cloudformation腳本中創建Lambda函數並同時分配安全性。

回答

0

是的,可以從CloudFormation模板自動調用Lambda函數。完成此操作的最佳方法是創建一個Custom Resource,它在創建/更新/刪除自定義資源時執行Lambda函數。 (爲event.RequestType == 'Create'添加一個條件到您的Lambda函數只執行您想要的邏輯)。

如果使用AWS::Lambda::Function資源創建lambda函數,你可以指定VpcConfig屬性來配置與lambda函數相關的SecurityGroupIdsSubnetIds訪問您的數據庫。

還請注意Configuring a Lambda function for Amazon VPC Access所需的其他注意事項。使用自定義資源還需要外撥Internet Access for Lambda FunctionsVPC Endpoint,允許Lambda功能將回叫響應發送到S3存儲桶。

+0

謝謝你幫我搞定這個工作。我試圖使用預定義的安全資源,以便重用Lambda函數。這篇文章對於實現這個目標也很有用:[我們如何使用用Java編寫的AWS Lambda函數訪問和響應CloudFormation自定義資源?](http://stackoverflow.com/questions/32811947/how-do-we-訪問和響應到cloudformation定製資源,利用-AN-AWS-LAM)。 –

相關問題