gpt4 book ai didi

python - 我们可以从 AWS Lambda 访问所有账户堆栈及其信息吗?

转载 作者:行者123 更新时间:2023-12-03 07:37:16 25 4
gpt4 key购买 nike

我的另一个问题previous query ,我们可以从 AWS Lambda 访问所有账户堆栈及其信息吗?

我被要求编写一个脚本来验证所有堆栈集是否已通过将日志放入 splunk 中来在适当的区域中创建/更新。

这是我的方法 - 创建一个简单的 python (AWS Lambda) 脚本来验证其堆栈集的所有区域并将其日志信息更新到 splunk(在每次创建或更新堆栈集时)。

  1. 对 python 脚本中的所有帐户进行硬编码例如。帐户 = [535353...、435...、645542...等]
  2. 使用 python-troposphereboto3 迭代所有帐户及其区域
  3. 对于每个区域运行一个查询来描述堆栈集或描述事件以验证(在创建/更新脚本运行后)堆栈集是否已创建/更新。

代码摘录如下:

client = boto3.client('cloudformation')
description = client.describe_stack_set()
  • 解析描述以验证该帐户区域的特定堆栈集的状态
  • 更新 splunk 日志中所有已解析的描述或(整个描述)。
  • 但我不确定:

    • 如果我能够从某个位置访问所有帐户及其区域 lambda 脚本。
    • 这种方法正确与否

    如果我没有走上正确的道路,请给我建议一个解决方案。

    最佳答案

    按照你说的方法就可以了。但是,在您的 lambda 中,您必须在调用 describe_stack_set 之前在每个帐户中承担一个角色,以获得正确帐户(也可能是正确区域)的信息。为了自动化,您可能必须自动配置信任运行 lambda 的帐户的角色。

    实现此目的的另一种方法是将 Lambda 分发到所有帐户,这样您就可以跳过假设角色部分和帐户 ID 的硬编码。

    我最喜欢的方法是在每个堆栈内创建自定义资源或计划的 lambda 执行,这些堆栈会在 Splunk 中生成可供稍后查询的日志。在 Splunk 中,当该特定日志一段时间没有出现时,您可以触发警报。

    关于python - 我们可以从 AWS Lambda 访问所有账户堆栈及其信息吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48617759/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com