实施Lambda函数以通过SSM运行命令

时间:2018-11-23 05:03:22

标签: amazon-web-services aws-lambda ssm

我在ssm中有一个运行文档,用于在服务器上安装一些代理。 现在,我想通过在启动新实例时运行这些文档来自动执行此任务。 我想通过aws lambda(在启动新实例时执行运行命令的脚本)来实现此目的 任何帮助将不胜感激!!!

2 个答案:

答案 0 :(得分:0)

不幸的是,这是一个非常广泛的问题,不可能简单地回答。

我首先建议您确定当前要使用哪种语言编写Lambda函数,包括.NET,python,Node.js,Java和Go。

Node.js是一种非常容易上手的语言,因为它受到了很好的支持,您可以在嵌入式AWS代码编辑器中编写它。

我建议您在控制台中创建新的lambda函数时,看看aws提供的模板Node.js lambda函数。这将帮助您了解如何将它们组合在一起以及可以使用的各种方式。如果您掌握了这些知识并且发现它们很容易理解,那么您可以查看Node.js SSM api(默认在lambda运行时中应该可用),并尝试运行一些命令。

当然,如果您不具备Node.js的能力并且主要使用另一种语言,那将是一个完全不同的问题。

可以很容易地找到许多在线的关于编写lambda的资源和示例。

答案 1 :(得分:0)

为此使用cloudwatch规则。

EC2 Instance State-change Notificationrunning状态创建一个云监视规则。将lambda用作目标,并在实例上通过lambda调用SSM命令(通过API)。该事件将包含您需要的详细信息,例如实例ID。希望您熟悉AWS API以及如何使用它。您需要为Lambda提供适当的IAM角色,才能正常工作。另外,请记住,Cloudwatch事件是特定于区域的,并且只能在同一区域中调用lambda。

enter image description here