centralized logging 2 using promtail, loki
背景介绍
之前用 rsyslogd 做过一个集中的 log server,主要是收集服务器系统和审计日志。最近要做的这个集中的 log server,则是专注于收集、展示应用日志的。我现在的服务器,操作系统有两种:Debian 12(bookworm) 和 Ubuntu 24.04,准确的说:应用服务器都是 Ubuntu 24.04,只有运维专用的两台(含要做的这个 log server)是 Debian 12。
因为是小厂,所以就摒弃掉大而重的 elasicsearch 系的方案,直接用 grafana 同源的 loki 来做服务端,客户端收集日志也是 grafana 同源的 promtail,技术方案选型就这么愉快得决定了。
禅道(zentao)被入侵的相关信息
发现时间
最早发现是 2025-05-06 下午,发现 PVE 的香港出口带宽异常,接着发现跟 176.32.35.190 的 tcp 端口 8024 有大量的数据交互
然后在 2025-05-07 上午,用 docker exec -it zentao /bin/bash 进入容器,apt install psmisc,然后 pstree -a 才确认被入侵的。
zentao 容器内执行 pstree -a 输出:
1 | s6-svscan /etc/s6/s6-enable |
something about healthech for docker container
在 Docker compose 文件里使用健康检查的方案变迁。
背景:小厂,用不起 kubernetes,只能自己生写 docker compose 来部署 Docker 容器。以下以一个在容器里监听 tcp 端口 8090 的服务为例来描述一下我用到过的健康检查的方案的变迁。
WireGuard 源 IP 地址"漂移"问题的前因后果
在现代网络架构中,VPN(虚拟专用网络)技术的应用越来越广泛。本文将探讨在我司 IDC 中,使用 WireGuard 实现的 VPN 连接中遇到的一个有趣现象。
AWS cloudfront 的一个小 bug
缘起
我厂有一个网站(域名 a.b.com 和 a1.b.com),原来是跑在自己 IDC 里的机器上的,用 Docker 容器跑的,容器里就一个 nginx,放了一堆的静态资源。
为了“用户体验”,这两个域名都上了 CDN(AWS 的 cloudfront),源站分别是:
a.ori.b.coma1.ori.b.com
最近做了一次架构调整,把这个服务迁移到了 AWS 的 EC2 上,而且将这个服务放在了一个 ALB 的后面,这个 ALB 是启用了 cloudfront 集成的,所以,我在 route 53 上就把这两个域名都解析到了 ALB 集成的这个 cloudfront distribution 的域名上了。
Prometheus 官方 Docker image 的一个 bug
800 块钱的办公电脑
centralized logging on Amazon Linux 2023
背景介绍
最近要做个 log server,把所有服务器的系统日志都收上来。我现在的服务器,操作系统有两种:Amazon Linux 2023 和 Ubuntu,但其实 Ubuntu 又有 22.04 和 24.04 两种,所以,其实是一共有三种操作系统。
好在这三种系统,其缺省跑的日志应用,Amazon Linux 2023 是 systemd-journald,而 Ubuntu(22.04 和 24.04) 都是既跑有 systemd-journald,又跑的有 rsyslogd。这两种日志应用,都是支持集中的日志服务器的,或者很容易支持。但是为什么不就用一套 rsyslogd 的日志服务器呢?毕竟大家都支持 rsyslogd 的。主要是因为 systemd-journald 相对于 rsyslogd 是很新的东西,所以这里也拿出来练练手。
AWS 官方的部署 Python 代码到 Lambda function 上去的两种方法
简介
要把 Python 项目部署到 AWS 的 Lambda function,AWS 官方提供了两种方法:Chalice 和 SAM(AWS Serverless Application Model),当然,其实比较常用的还有第三方的 serverless。