写点什么

宣布推出 Firelens – 管理容器日志的新方法

  • 2019-11-27
  • 本文字数:1923 字

    阅读完需:约 6 分钟

宣布推出 Firelens – 管理容器日志的新方法

今天,负责在 AWS 上构建我们的容器服务的卓越团队推出了一款出色的新工具 AWS FireLens,该工具可让您更轻松地处理日志。


利用 FireLens,客户可以将容器日志定向到存储和分析工具,而无需修改部署脚本、手动安装额外软件或编写其他代码。通过有关 Amazon ECSAWS Fargate 的一些配置更新,您可以选择目标或选择定义筛选条件,以指示 FireLens 将容器日志发送到需要容器日志的位置。


FireLens 可以与 Fluent BitFluentd 搭配使用,这意味着您可以将日志发送到这些开源项目中的任意一个项目所支持的任何目标位置。我们维护着一个网页,您可以在该网页上查看 AWS 解决方案架构师已审核的 AWS 合作伙伴网络产品列表。您可以使用 FireLens 将日志数据或事件发送给任何这些产品。


我发现了解 FireLens 的最简单方法就是使用它,因此在本博文的其余部分,我将演示如何在 Amazon ECS 中将 FireLens 和容器搭配使用,并将容器日志转发到 Amazon CloudWatch


首先,我需要配置任务定义,我从 GitHub 上的 Amazon ECS FireLens 示例中得到一个示例定义。


我将 AWS Identity and Access Management (IAM) 角色替换为我自己的 taskRoleArnexecutionRoleArn IAM 角色,我还添加了端口映射,以便通过浏览器访问 NGINX 容器。


Json


{  "family": "firelens-example-cloudwatch",  "taskRoleArn": "arn:aws:iam::365489000573:role/ecsInstanceRole",  "executionRoleArn": "arn:aws:iam::365489300073:role/ecsTaskExecutionRole",  "containerDefinitions": [    {      "essential": true,      "image": "906394416424.dkr.ecr.us-east-1.amazonaws.com/aws-for-fluent-bit:latest",      "name": "log_router",      "firelensConfiguration": {        "type": "fluentbit"      },      "logConfiguration": {        "logDriver": "awslogs",        "options": {          "awslogs-group": "firelens-container",          "awslogs-region": "us-west-2",          "awslogs-create-group": "true",          "awslogs-stream-prefix": "firelens"        }      },      "memoryReservation": 50     },     {       "essential": true,       "image": "nginx",       "name": "app",       "portMappings": [        {          "containerPort": 80,          "hostPort": 80        }        ],       "logConfiguration": {         "logDriver":"awsfirelens",         "options": {          "Name": "cloudwatch",          "region": "us-west-2",          "log_group_name": "firelens-fluent-bit",          "auto_create_group": "true",          "log_stream_prefix": "from-fluent-bit"        }      },      "memoryReservation": 100    }  ]}
复制代码


我将任务定义保存到本地文件夹,然后使用 AWS 命令行界面 (CLI) 注册了任务定义。


aws ecs register-task-definition --cli-input-json file://cloudwatch_task_definition.json


我已经设置了 ECS 集群,但如果您未设置,您可以参阅 ECS 文档了解如何设置。以下命令使用我新注册的任务定义在我的 ECS 集群上创建服务。


Bash


aws ecs create-service --cluster demo-cluster --service-name demo-service --task-definition firelens-example-cloudwatch --desired-count 1 --launch-type "EC2"
复制代码


登录 Amazon ECS 控制台并深入研究我的服务和任务后,我发现了显示外部链接的容器定义。我让容器将容器端口 80 映射到任务定义内的主机端口 80 后,系统显示了此 IP 地址。



如果我在浏览器中转到该 IP 地址,则我用作我的应用程序的 NGINX 容器将提供其默认页面。NGINX 容器会将其收到的所有请求记录到 Stdout,因此 FireLens 现在会将这些日志转发到 CloudWatch。我在 URL 上添加了一条短消息,以便在查看日志时能够从所有其他请求中快速识别该请求。



然后,我导航到了 Amazon CloudWatch 控制台,并向下钻取了 firelens-fluent-bit 日志组。您还记得吗?这是我在原始任务定义中设置的日志组名称。下面,您会注意到我的日志流中有多个日志,最后一个日志是我刚刚在浏览器中发送的请求。如果您仔细查看日志,就会发现“IT WORKS”已作为 GET 请求的一部分输入。



这就是整个流程,我成功设置了 FireLens,并利用它将我的容器日志转发到 CloudWatch,我当然可以选择其他目标,例如,第三方提供商(如 Datadog)或 AWS 目标(如 Amazon Kinesis Data Firehose)。


如果您想尝试 FireLens,它现已在支持 Amazon ECSAWS Fargate 的所有区域推出。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/announcing-firelens-a-new-way-to-manage-container-logs/


2019-11-27 08:00683

评论

发布
暂无评论
发现更多内容

Go语言入门04—循环语句

良猿

Go golang 后端 10月月更

一文彻底搞懂前端缓存机制

hellocoder2029

JavaScript

自主创新、领先一代,星环科技成功登陆科创板

星环科技

大数据 开源

途游游戏 DevOps 实践|都说「单元测试」好,「AAAC四步法」少不了

极狐GitLab

DevOps 运维 单元测试 CI/CD 代码安全

为什么vue3要选用proxy,好处是什么?

hellocoder2029

JavaScript

【云舟说直播间】数字可视化专场来袭

云计算

“程”风破浪的开发者|Lombok的使用

楠羽

学习方法 lombok “程”风破浪的开发者

Mysql数据库基础之数据库的安装与配置

渔戈

MySQL 数据库 10月月更

遮罩和蒙版有什么区别,视频遮罩怎么用

懒得勤快

阿里巴巴 Noslate 正式开源 - 面向云原生的 JavaScript 容器方案

阿里巴巴终端技术

JavaScript 开源 云原生 前端 企业号十月PK榜

低代码开发平台盘点,让你的开发告别低效

飞算JavaAI开发助手

Paddlenlp之UIE模型实战实体抽取任务【打车数据、快递单】

汀丶人工智能

nlp

鸿蒙开发入门 | 开发第一个鸿蒙应用+页面跳转

TiAmo

华为 鸿蒙开发 10月月更

“程”风破浪的开发者|OpenHarmony应用开发环境搭建

技能实验室

OpenHarmony “程”风破浪的开发者

BH1750 光照传感器文档详解 及 驱动设计

矜辰所致

传感器 stm32 I2C协议 10月月更 BH1750

golang中的map

六月的

Go map

强烈推荐!腾讯T8架构师手写的SpringBoot分布式架构笔记

小小怪下士

Java 分布式 后端 springboot

Go语言入门03—条件语句

良猿

Go golang 后端 10月月更

uniapp打开地图选择位置

源字节1号

软件开发 前端开发 后端开发 小程序开发

pt尾递归优化

hellocoder2029

JavaScript

数字云栖,邀您共享极致计算与创新进化的科技盛宴

阿里云CloudImagine

阿里云 边缘计算 云栖大会

驾考宝典携手HMS Core统一扫码服务,构建复杂场景中的流畅扫码体验

HarmonyOS SDK

扫码

java线下培训机构哪里比较好

小谷哥

企业级开发平台的演进

世开 Coding

软件开发 低代码 快速开发平台 少代码

常见恶意软件类型及危害

郑州埃文科技

网络安全 恶意软件 办公安全

解决 error: failed to push some refs to 'https://github.com/

timerring

git bug 10月月更

UIE Slim满足工业应用场景,解决推理部署耗时问题,提升效能

汀丶人工智能

【10.14-10.21】写作社区优秀技术博文更新啦!

InfoQ写作社区官方

优质创作周报

原来Vue3的computed属性还能这么用啊🔥

渔戈

Vue 前端 10月月更

前端懒加载和预加载

hellocoder2029

JavaScript

前端培训学习后的就业方向哪个比较好

小谷哥

宣布推出 Firelens – 管理容器日志的新方法_文化 & 方法_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章