【问题标题】:How to dockerize the cloudwatch agent and collectd to collect the metrics?如何对 cloudwatch 代理和 collectd 进行 dockerize 以收集指标?
【发布时间】:2020-01-26 23:19:54
【问题描述】:

我需要从 ECS instancesdocumentation 收集自定义指标

这些是我需要遵循的步骤

好像可以

  • 将 cloudwatch 代理 Docker 化(似乎是 already done,但缺少文档)

  • Dockerize collectd 守护进程

为什么要 dockerize 或不使用 awslogs 驱动程序来收集指标?

目前,我们已经有一些services 作为由amazon ecs 管理的docker 实例运行,并配置为使用awslog driver 将日志发送到amazon cloudwatch logs

但为了从服务中收集更多自定义指标,例如 number of requests per particular user from service a,aws 建议的唯一解决方案是使用 colletdcurl plugin 以及 cloud watch agent

由于一些扩展问题,而不是在一个实例中运行 cloudwatch agentcollectd。我想将它们作为容器运行。

问题:

有什么方法可以运行cloudwatch agent in docker container,它可以从collectd daemon 读取指标,它在不同的容器中但在同一台机器上运行?

【问题讨论】:

    标签: amazon-web-services docker amazon-cloudwatch


    【解决方案1】:

    您无需在容器中运行 cloudwatch 代理,不要忘记经验法则,每个容器一个进程。

    您只需将应用程序日志推送到容器的 stdout 或 stderr 即可,docker daemon 会处理它。

    重要配置:

    您只需在任务定义中将日志驱动程序设置为 AWS 日志驱动程序。

    Amazon CloudWatch Logs 日志记录驱动程序

    awslogs 日志记录驱动程序将容器日志发送到 Amazon CloudWatch Logs。可以通过 AWS 管理控制台检索日志条目 或 AWS 开发工具包和命令行工具。

    在任务定义中指定日志配置

    在您的容器可以将日志发送到 CloudWatch 之前,您必须 在任务定义中为容器指定 awslogs 日志驱动程序。 本节介绍容器使用的日志配置 awslogs 日志驱动程序。有关更多信息,请参阅创建任务 定义。

       "logConfiguration": {
                    "logDriver": "awslogs",
                    "options": {
                        "awslogs-group": "awslogs-mysql",
                        "awslogs-region": "us-west-2",
                        "awslogs-stream-prefix": "awslogs-example"
                    }
                }
    

    AmazonECS-using_awslogs

    【讨论】:

    • 我们目前使用与您解释的相同的设置,但我需要从作为 docker 容器运行的其他服务收集自定义指标
    • 最好将自定义指标推送到容器的标准输出,您可以根据标签从 cloudwatch 日志中过滤。我永远不会建议在容器内运行代理。最好在您的应用程序中使用 AWS sdk,并使用 SDK 将自定义指标推送到 cloudwatch。
    • 为什么不在容器中使用 aws cloud watch 代理的任何具体原因,因为 docker hub 似乎有 1M+ 的下载量
    • 由于容器性质,经验法则是每个容器一个进程。容器应该只运行一个进程并且容器应该是轻量级的。因此,为了自定义指标,最好使用 SDK 推送这些指标,而不是在容器内管理代理。您可以根据需要运行代理,但我选择的日志和指标是标准输出
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-14
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多