• 通过sls采集k8s集群上的服务日志


    1. 概述

     

    日志服务SLS是阿里云提供云原生观测与分析平台,供数据采集、加工、查询与分析、可视化、告警、消费与投递等功能。

    sls采集K8S集群的日志,通过安装logtail dameonset,结合sls 控制台方式采集容器文本日志、控制台日志,通过Kubernetes Namespace名称、Pod名称、容器名称指定待采集的容器。

    2. 阿里云ACK接入

    接入流程:

    • 安装Logtail组件
    • 创建Logtail采集配置

    ACK 安装 Logtail 组件可以通过容器服务管理控制台进行安装

    2.1 安装Logtail组件

    步骤:

    • 登录容器服务管理控制台。
    • 在左侧导航栏中,单击集群。
    • 在集群列表页面中,单击目标集群。
    • 在左侧导航栏中,选择运维管理 > 组件管理。
    • 在日志与监控页签中,找到logtail-ds,然后单击安装

    安装完成状态

    并且 SLS 日志服务会自动生成名为 k8s-log -${your_k8s_cluster_id} 的Project,

     

     其中logstore "config-operation-log" 是自动创建的,采集的是logtail controler的操作日志,这里可以看到已可以正常采集k8s集群中的日志了

     

     2.2 创建 Logtail 采集配置

    步骤:

    • 登录日志服务控制台。
    • 在接入数据区域,单击Kubernetes-文件。
    • 选择目标Project和Logstore,单击下一步。
    • 选择您在安装Logtail组件时所使用的Project。Logstore为您自定义创建的Logstore。
    • 单击使用现有机器组。
    • 安装Logtail组件后,日志服务自动创建名为k8s-group-${your_k8s_cluster_id}的机器组,您可以直接使用该机器组。
    • 选中目标机器组(k8s-group-${your_k8s_cluster_id}),将该机器组从源机器组移动到应用机器组,单击下一步
    • 设置Logtail采集配置,单击下一步

    采集配置这里注意:

    • 设置基本信息(例如配置名称、日志路径、模式等)
    • 打开是否部署于K8s开关
    • 根据命名空间,pod label进行过滤

    如采集命名空间:default, lable为:app=nginx-service的服务日志,日志模式为单行(极简模式)

     

     

    完成后即可录入日志在sls进行查询(略)

    3.  自建/其它云 kubernetes集群接入

    前提准备工作:创建子帐号,AliyunLogFullAccess权限,获取accesskey id和accesskey secret

     接入流程:

    • 安装Logtail组件
    • 创建Logtail采集配置

    3.1 安装Logtail组件


    在已安装 kubectl 命令且能管理集群的机器上,执行以下脚本,注意,alibaba-log-controller组件只支持Kubernetes 1.6及以上版本

    1. # 下载安装脚本。
    2. wget http://logtail-release-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/kubernetes/alicloud-log-k8s-custom-install.sh
    3. chmod 744 ./alicloud-log-k8s-custom-install.sh
    4. # 安装Logtail及其他依赖组件。
    5. sh ./alicloud-log-k8s-custom-install.sh your-project-suffix region-id aliuid access-key-id access-key-secret
    6. # 如project为k8s-log-custom-gz-office-log,地域为cn-guangzhou
    7. # your-project-suffix为集群标识 ,名字自定义

     

    安装后可通过命令查看是否安装成功

    1. [root@aws-us-001 ~]# kubectl get deploy alibaba-log-controller -n kube-system
    2. NAME READY UP-TO-DATE AVAILABLE AGE
    3. alibaba-log-controller 1/1 1 1 4d2h
    4. [root@aws-us-001 ~]# kubectl get ds logtail-ds -n kube-system
    5. NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
    6. logtail-ds 2 2 2 2 2 <none> 4d2h

    3.2 创建Logtail采集配置

    参考2.2 这里不再赘述。

    附:

    参考文档:

    如何在Kubernetes集群上安装Logtail组件_日志服务-阿里云帮助中心

     

  • 相关阅读:
    第四课 标识符、关键字、变量、变量的分类和作用域、常量
    阿里巴巴找黄金宝箱(V)--滑动窗口
    MySQL之InnoDB引擎(六)
    iNeuOS工业互联网操作系统,顺利从NetCore3.1升级到Net6的过程汇报
    【重识云原生】第六章容器6.1.5节——Docker核心技术Namespace
    简易数控直流稳压电压
    重温 JavaScript 系列(1):Object.assign、iframe、HashMap、手写 instanceof
    es6运算符
    ImportError: cannot import name ‘Mapping‘ from ‘collections‘
    Thymeleaf小功能总结
  • 原文地址:https://blog.csdn.net/manwufeilong/article/details/127968904