Terraform 官方文档配置导致的 DB Proxy 故障案例
起因
在搭建新环境时,我们选择了 OpenTofu——这是在 Terraform 更改了 license 之后从 Terraform 代码库分支并且开放源码的工具——用于构建VPC、RDS、Redis等基础设施。
但当基础设施就位、开始部署应用程序时,问题出现了。每次部署都不成功,查看日志说是 JDBC 相关错误,DB Proxy 的日志中充斥着诸多 “internal error”,却若隐若现关于具体错误原因的描述。尝试直接通过 MySQL 客户端连接 DB Proxy 时,大多数命令执行都引发错误(help 命令除外)提示:
ERROR 1105 (HY000): Unknown error
错误截图参见:
通过实时监控日志里的敏感信息来实现对应用的监控报警
背景
项目有一些非常重要的后台应用是跑在 AWS 的 lambda 上的,老板和产品非常关注这些应用的执行情况,一旦出错,都会是很严重的故障。
方案变迁
前面做过一些基础设施级别的监控报警,如:监控 AWS 的 RDS 并通过企业微信来报警,那个完全是利用基础设施自动打到 CloudWatch 的基础的 metrics 来做的。
于是,我这里下意识的就想利用现有的 CloudWatch 里现成的 Metrics 来做这个事情,于是我就弄了三个(种)监控:
Chromebook 安装 Debian 12 testing
缘起
本来这台 HP Chromebook 11A G6 EE( 加了一张 128G 的 TF 卡 ),我安装好了 Arch Linux(Xfce),都弄好了的,但最近在知乎上老被安利说装 Debian 的 testing 版,于是我又开始折腾,把 Debian 13 testing(trixie) 安装到这台 Chromebook 上。
安装时,使用 lvm 分区不成功,系统报错:
partman-lvm: pvcreate: error while loading shared libraries: libaio.so.1: cannot open shared object file: no such file or directory
现在想想可能还有其他办法,比如想办法把这个需要的包注入进去,但当时选择了先用 ext4 分区安装系统自带的 16G 的卡里,装完以后再想办法转成 lvm 并把 TF 卡的空间加进来。
监控 AWS 的 RDS 并通过企业微信来报警
自动化部署的艺术:用 GitHub Action 部署 Python 编写的 Chalice 应用到 AWS Lambda
用 GitHub CLI 来查看 GitHub Action 执行情况
利用 AWS Session Manager 访问 VPC 内网的资源
Amazon Linux 2023:Bug 还是特性?
背景
在 AWS 的一个 VPC 内部的一台 EC2 上搭了一个 OpenVPN 服务器,对,就是 从 Client VPN endpoint 迁移到 EC2 上的 OpenVPN 提到的这件事。然后我有台 PC 通过 OpenVPN 客户端软件连了过来。以下是基本信息。
NOTE: IP 地址都不是实际真实情况
- EC2(A)
- 公网 IP:
1.1.1.1
(本地并没有,这个是防火墙或其他设备给做的一对一 map) - 私网 IP:
10.0.0.2/24
- 私网网关:
10.0.0.1
- 私网网卡:enX0
- tun 设备名:tun0
- tun 设备 IP:
172.16.0.1/24
- 公网 IP:
- PC(B)
- tun 设备名:tun0
- tun 设备 IP:
172.16.0.2/24