机房托管,自建的 k8s ,几台 es 物理机做日志集群。
k8s 里跑的普通业务,没有什么特殊要求。
现在是要求把 k8s 里跑的各种服务打印的日志全部保存到本地磁盘,理由是日志服务器会挂,会丢日志。。。
k8s 里跑的普通业务,没有什么特殊要求。
现在是要求把 k8s 里跑的各种服务打印的日志全部保存到本地磁盘,理由是日志服务器会挂,会丢日志。。。
|
1
根据我的经验,90%不是日志服务器挂了,而是压根没打印。
|
|
nxforceMar 3, 2025
2
对日志服务器做远程备份啊。
打本地快照也行。 |
|
JokesyMar 3, 2025
3
Pod 的日志默认都是在磁盘内部,/var/lib/docker/* 去可以找的到。
|
|
idihsMar 4, 2025
4
bro, try a random LLM(large language model
|
|
birdhkMar 4, 2025
5
fluent-bit 、vector 这些日志收集组件不都可以直接收集 k8s 中的日志吗?收集到了想保存哪里就保存到哪里
|
|
birdhkMar 4, 2025
6
直接 fluent-bit 收集或 vector 收集然后直接写入到 es 不就行了,没啥问题
|
|
runzhliuMar 4, 2025
7
k8s 节点也会挂,磁盘也可能有问题,光存本地肯定不行
|
|
defunct9Mar 4, 2025
8
最近正在搞这个,用 ilogtail 吧,满足你的需求
|
|
dbakMar 4, 2025
9
搞一个 nfs 网盘 挂载到容器/data/logs 下 把应用的日志都保存到这里 定期压缩归档
|
|
cheng6563Mar 4, 2025
10
看你怎么部署的,比如直接用 vector daemonset 把/var/log/pods/全收集就完了。
|
|
yelogMar 4, 2025
11
直接 hostPath 落盘
|
|
kd9yYw2RyhQwAwznMar 4, 2025
12
这种碰到 pod 漂移 日志翻看起来会很痛苦吧
|
|
keenkillerMar 4, 2025
13
容器的 stdout 本来就保存在本地啊……
|
|
oudemenMar 4, 2025
15
存本地的话用 victorialogs 吧,兼容多种协议。也一天一个目录,方便归档和备份
|
|
lff0305Mar 4, 2025
16
用 fluent bit ,protail 之类(一般都是装成 daemon set ),监控/var/lib/docker 下面的日志文件,转发到日志服务器。日志服务器可以用 Loki 或者 ES 或者其它什么现在选择很多;
可以装在本地自己定期备份,或者装在云上,直接用各种高可用的存储。 真要是不差钱可以直接用 datadog 或者 dynatrace 之类的服务,直接把日志发给他们,整个监控+日志查询+归档一条龙,可用性要比开源方案强的多,就是要很多¥¥¥¥ |
|
Bromine0x23Mar 4, 2025
17
那只能用 Filebeat 采集 /var/log/containers ,再同时输出到 ES 和本地文件了
|
|
sampengMar 4, 2025
18
你本来就有个 agent 每台机器上进行采集日志啊。加一个 output 输出到 NFS 的盘上就好了啊。我们是云服务,所以一个 output 是 kafka 。kafka 分两个 output 一个 s3 一个 es 。也做过直接 agent 分两个 output ,一个直接往 nfs 上 backup 一份,一个给 es 。但其实。。99%的原因是压根没打日志。1%的可能是 es 有并发限制丢弃了,加个 kafka 就不会丢了。
|