阿里云ilogtail收集自建Kubernetes容器日志文件
背景
1,k8s属于自建。
2,需要收集应用服务容器里面指定目录的日志。
3,计划收集所有私有云php和nginx日志。
4,日志格式化处理。
思考
1,一个私有云一个Project,还是统一放入一个Project。
2,logstore 是一个日志类型一个还是一个私有云一个。
3,logtail配置多个在一个logstore,还是在一个logstore。
注:因为alibaba-log-controller 安装使用的是helm,所以集群需要有helm命令。helm就类似于yum apt。
传送门:helm安装
一、介绍
- 阿里云的日志服务SLS:https://sls.console.aliyun.com/lognext/profile
- 阿里云官方文档:https://help.aliyun.com/document_detail/48869.html
- 日志服务SLS是云原生观测与分析平台,为Log、Metric、Trace等数据提供大规模、低成本、实时的平台化服务。
- 日志服务一站式提供数据采集、加工、查询与分析、可视化、告警、消费与投递等功能,全面提升您在研发、运维、运营、安全等场景的数字化能力。
- 日志服务提供50多种数据接入方案。
- 一句话就是很牛逼。
我今天要说的是,我公司的一个实际的需求:
- 利用阿里云的ilogtail采集工具。
- 收集我们本地idc机房。
- 自建k8s集群。
- 多个日志文件。
再说一点为啥要用阿里云的ilogtail:
- ilogtail可以收集容器里面指定目录下的文件。
- 我们的日志文件没有挂载到宿主机。filebeat就做不到收集容器里面的日志。
- 我们需要收集的文件有nginx的access error。php的info,error.
- 日志分类。
二、安装阿里alibaba-log-controller
2.1 新建Project
- 登录阿里云日志服务控制台https://sls.console.aliyun.com/lognext/profile
- 创建一个以
k8s-log-custom-开头的Project。k8s-log-custom-all-pcloud - k8s-log-custom- 这个是固定开头,但是我看阿里云的安装脚本,这个可以改一下试试。

2.2 安装logtail组件
安装脚本:点击下载脚本
# 这个脚本是被我稍微改了一下,可以定义机器组,传入的最后一个参数就是定义机器组。
bash ./alicloud-log-k8s-custom-install.sh all-pcloud cn-beijing 1234567890 ak sk pcloud-hkgc
参数说明:
| 参数 | 说明 |
| all-pcloud |
创建的Project的名称中的自定义部分。k8s-log-custom-all-pcloud,则此处填写all-pcloud |
|
cn-beijing |
Project所在的地域ID,传送门:点击 |
| 1234567890 |
阿里云账号ID,传送门:点击 |
| ak | ak |
| sk | sk |
|
pcloud-hkgc |
Project的机器组名称,不同的私有云用不同的机器组区分,这个是我加的,方便区别机器组 |
验证:
helm status alibaba-log-controller

查看机器组:
- 然后去阿里云SLS服务上面的Project里面看机器组。
- 这个机器组就是pcloud-hkgc。
- 可以看到这个机器组下面的机器都是在线的。

2.3 收集日志
ilogtail采集器安装完毕了之后就要配置规则去收集日志了。
创建logstore:
- logstore其实就是一个各种日志的集合。
- 其实就是给你想要的日志分个组。
- 很灵活,我就是按照一个私有云集群来分的。
- 一个私有云一个logstore

创建logtail配置:
- logtail其实就是一组收集日志的规则。
- 收集哪个目录 文件的日志,格式化日志。
- 并且可以设置白名单,只收集哪个容器的,或者只收集那个namespaces的。官方文档:https://help.aliyun.com/document_detail/66655.html
说一下我工作中实际的用法:
- nginx access error文件各创建一个logtail配置
- php info error文件各创建一个logtail配置
- 因为我只收集zhumeng命名空间下的,所以我加上了io.kubernetes.pod.namespace:zhumeng 白名单。
- 并且日志路径匹配那每次都会收集/var/www/html/storage/logs/schedule*.log,所以这里的需要过滤掉。采集黑名单文件路径。
- config-operation-log logstore不能删除。这个是logtail容器插件自己的心跳。



下面再贴一个我收集php日志的截图


三、展示
- 我用机器组区分不同的k8s集群
- 用logstore把集群的不同日志放到一个日志库里
- 用logtail挂载到不同的机器组

阿里云ilogtail收集自建Kubernetes容器日志文件的更多相关文章
- 从运维的角度分析使用阿里云数据库RDS的必要性--你不应该在阿里云上使用自建的MySQL/SQL Server/Oracle/PostgreSQL数据库
开宗明义,你不应该在阿里云上使用自建的MySQL or SQL Server数据库,对了,还有Oracle or PostgreSQL数据库. 云数据库 RDS(Relational Database ...
- 一个或多个listeners启动失败,更多详细信息查看对应的容器日志文件
碰到这个问题很多次,每次碰到都是去百度找.但是,不尽人意,好在最后还是解决了,所以写下总结. 报错内容: org.apache.catalina.core.StandardContext.startI ...
- Serverless助力AI计算:阿里云ACK Serverless/ECI发布GPU容器实例
ACK Serverless(Serverless Kubernetes)近期基于ECI(弹性容器实例)正式推出GPU容器实例支持,让用户以serverless的方式快速运行AI计算任务,极大降低AI ...
- 阿里云ECS(Ubuntu)单节点Kubernetes部署
参考资料: kubernetes官网英文版 kubernetes官网中文版 前言 这篇文章是比较久之前写的了,无聊翻了下博客发现好几篇博文排版莫名其妙的变了... 于是修改并完善了下.当初刚玩k8s的 ...
- [Kubernetes]容器日志的收集与管理
在开始这篇文章之前,首先要明确一点: Kubernetes 中对容器日志的处理方式,都叫做 cluster-level-logging ,也就是说,这个日志处理系统,与容器, Pod 以及 Node ...
- Python 调用阿里云 API 收集 ECS 数据
#!/usr/bin/env python # coding: utf-8 # author: Wang XiaoQiang ''' 功能介绍: 1.调用阿里云API,收集所有区域 ECS 信息 2. ...
- Kubernetes容器日志收集
日志采集方式 日志从传统方式演进到容器方式的过程就不详细讲了,可以参考一下这篇文章Docker日志收集最佳实践,由于容器的漂移.自动伸缩等特性,日志收集也就必须使用新的方式来实现,Kubernetes ...
- 自建Kubernetes logtail日志采集客户端安装方式
自建Kubernetes安装方式 前提条件 Kubernetes集群版本1.8及以上. 已经安装Helm命令,版本2.6.4及以上. 安装步骤 在日志服务控制台创建一个Project,Project名 ...
- Delphi阿里云对象存储OSS【支持上传文件、下载文件、删除文件、创建目录、删除目录、Bucket操作等】
作者QQ:(648437169) 点击下载➨Delphi阿里云对象存储OSS 阿里云api文档 [Delphi阿里云对象存储OSS]支持 获取Bucket列表.设置Bucket ...
随机推荐
- java 桥接模式实现代码
写在前面 桥接模式:将抽象与实现分离,使它们可以独立变化.它是用组合/聚合关系代替继承关系来实现,从而降低了抽象和实现这两个可变维度的耦合度. 使用场景1:要绘制矩形.圆形.椭圆.正方形,绘制的图形需 ...
- 进击的 Ansible(二):如何快速搞定生产环境 Ansible 项目布局?
Tips:与前文 <进击的 Ansible(一):Ansible 快速入门> 一样,本文使用的 Ansible 版本 2.5.4,项目演示环境 MacOS.由于 Ansible 项目开发活 ...
- NFLSOJ #10317. -「2020联考北附2」三千世界(找等价表达+树形 dp)
题面传送门 出题人可能原本感觉没啥难度的 T2 竟然变成了防 AK 题,奇迹奇迹( 首先带着这个 \(\max\) 肯定不太好处理,考虑找出 \(f(S)\) 的等价表达.我们考虑以 \(1\) 为根 ...
- 洛谷 P3994 高速公路(斜率优化)
题目链接 题意:给出一棵树,\(1\) 号点为根,边上有边权. 每个点有两个参数 \(p_i,q_i\) 如果你想从 \(i\) 号点到与其距离为 \(d\) 的 \(j\) 号点,那么你需花费 \( ...
- 洛谷 P4931 - [MtOI2018]情侣?给我烧了!(加强版)(组合数学)
洛谷题面传送门 A 了这道题+发这篇题解,就当过了这个七夕节吧 奇怪的过节方式又增加了 首先看到此题第一眼我们可以想到二项式反演,不过这个 \(T\) 组数据加上 \(5\times 10^6\) 的 ...
- Codeforces 1303G - Sum of Prefix Sums(李超线段树+点分治)
Codeforces 题面传送门 & 洛谷题面传送门 个人感觉这题称不上毒瘤. 首先看到选一条路径之类的字眼可以轻松想到点分治,也就是我们每次取原树的重心 \(r\) 并将路径分为经过重心和不 ...
- 洛谷 P4887 -【模板】莫队二次离线(第十四分块(前体))(莫队二次离线)
题面传送门 莫队二次离线 mol ban tea,大概是这道题让我第一次听说有这东西? 首先看到这类数数对的问题可以考虑莫队,记 \(S\) 为二进制下有 \(k\) 个 \(1\) 的数集,我们实时 ...
- 如何根据taxid(或taxname)快速获得taxname(或taxid)?
目录 需求 实现 需求 我有一个物种taxonomy ID的list,想获得相应的物种名,不要一个个去NCBI Taxonomy官网查.反之根据物种名list查询对应的taxid. 实现 因为之前没怎 ...
- 我的分布式微服务框架:YC-Framework
YC-Framework官方文档:http://framework.youcongtech.com/ YC-Framework源代码:https://github.com/developers-you ...
- Hadoop入门 完全分布式运行模式-集群配置
目录 集群配置 集群部署规划 配置文件说明 配置集群 群起集群 1 配置workers 2 启动集群 总结 3 集群基本测试 上传文件到集群 查看数据真实存储路径 下载 执行wordcount程序 配 ...