阿里云边缘容器服务ACK@Edge集成了日志服务,您可以在创建边缘容器集群时启用日志服务,快速采集边缘容器集群的容器日志,包括容器的标准输出以及容器内的文本文件。本文介绍如何使用日志服务采集边缘容器的日志信息。

步骤一:启用日志服务组件Logtail

您可以在创建边缘容器集群时选中使用日志服务,启用Logtail组件;也可以为已有边缘容器集群启用Logtail组件。

创建集群时启用Logtail

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击页面右上角的创建集群
    以下仅介绍开启日志服务的关键步骤。关于创建集群的具体操作,请参见创建边缘托管版集群
  4. 组件配置配置向导中,选中使用日志服务,表示在新建的集群中安装日志插件。

    当选中使用日志服务后,会出现创建项目(Project)的提示。关于日志服务管理日志的组织结构,请参见项目(Project))。有以下两种创建Project方式。

    • 单击使用已有Project,选择一个现有的Project来管理采集的日志。 使用已有Project
    • 单击创建新Project,自动创建一个新的Project来管理采集的日志,Project会自动命名为k8s-log-{ClusterID},ClusterID是您新建的边缘容器集群的唯一标识。 创建新Project
  5. 配置完成后,单击右下角创建集群,在弹出的窗口中单击确定,完成创建。
    完成创建后,您可在集群列表页面看到开启了Logtail的边缘容器集群。

为已有集群启用Logtail

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  4. 在集群管理页左侧导航栏中,选择运维管理 > 组件管理,并在日志与监控区域找到日志logtail-ds。
    说明
    • 在边缘托管集群高于1.18.8-aliyunedge.1的版本中,日志组件统一合并为logtail-ds。
    • 在边缘托管集群小于或等于1.18.8-aliyunedge.1版本中,日志组件包含两个: alibaba-log-controller和logtail-ds-docker。
  5. 在相关日志组件右侧,单击确认
  6. 安装组件对话框中单击确认
    如果您已安装旧版本的日志服务组件,可以在相关组件右侧,单击升级

步骤二:创建应用时配置日志服务

您可以在创建应用的同时配置日志服务,从而对边缘容器集群的日志进行采集。

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  4. 在集群管理页左侧导航栏中,选择工作负载 > 无状态
  5. 无状态页面上方的命名空间下拉框中设置命名空间,然后单击页面右上角的使用镜像创建
  6. 应用基本信息页签,设置应用名称副本数量类型,单击下一步,进入容器配置页面。
    以下仅介绍日志服务相关的配置,其他的应用配置,可参见创建无状态工作负载Deployment
  7. 进行日志配置。单击+图标创建新的采集配置,每个采集配置由日志库容器内日志路径两项构成。
    • 日志库:配置Logstore名称,您可以使用它来指定所采集日志存储于该Logstore,如果该Logstore不存在的话,我们会自动为您在集群关联的日志服务Project下创建相应的Logstore。
      说明 名称中不能包含下划线(_),可以使用-来代替。
    • 容器内日志路径:您可以用它来指定希望采集的日志所在的路径,如使用/usr/local/tomcat/logs/catalina.*.log来采集tomcat的文本日志。
      说明 如果指定为stdout则表示采集容器的标准输出和标准错误输出。

      每一项采集配置都会被自动创建为对应Logstore的一个采集配置,默认采用极简模式(按行)进行采集,如果您需要更丰富的采集方式,可以前往日志服务控制台,进入相应的Project(默认是k8s-log前缀)和Logstore对配置进行修改。

    采集配置
  8. 设置自定义Tag
    单击+图标创建新的自定义Tag,每一个自定义Tag都是一个键值对,会拼接到所采集到的日志中,您可以使用它来为容器的日志数据进行标记,例如版本号。 自定义tag
  9. 当完成所有配置后,可单击右上角的下一步进入后续流程。后续操作,可参见创建无状态工作负载Deployment

步骤三:查看日志

本例中查看通过控制台向导创建的tomcat应用的日志。完成配置后,tomcat应用的日志已被采集并存储到日志服务中,您可以在日志服务控制台查看容器日志。操作步骤如下:

  1. 安装成功后,进入日志服务控制台
  2. 在进入控制台后,在Project列表区域选择Kubernetes集群对应的Project(默认为k8s-log-{Kubernetes集群ID}),进入日志库列表页签。
  3. 在列表中找到相应的Logstore(采集配置中指定),将鼠标悬浮在相应的Logstore名称的右侧,单击button图标,并单击查询分析
  4. 本例中,在日志查询页面,您可查看tomcat应用的标准输出日志和容器内文本日志,并可发现自定义tag附加到日志字段中。
    日志字段

更多信息

  1. 默认情况下,日志服务会使用极简模式来采集您的数据(按行采集、不解析)。如果您需要更复杂的配置,可以参见以下日志服务文档并前往日志服务控制台进行配置修改。
  2. 除了通过控制台配置采集以外,您还可以直接通过CRD配置来对Kubernetes集群进行日志采集。
  3. 关于如何进行异常排查,请参见Logtail采集日志失败的排查思路