小服务器监控:不用 Zabbix,几个脚本也够
只有一两台机器的时候,上一套 Zabbix 或 Prometheus + Grafana 有点重。用几个脚本 + 告警,能覆盖绝大多数「出事前能发现」的需求。 要监控什么 按重要性排: 服务是否活着(HTTP 200) 磁盘使用率 内存和负载 …
只有一两台机器的时候,上一套 Zabbix 或 Prometheus + Grafana 有点重。用几个脚本 + 告警,能覆盖绝大多数「出事前能发现」的需求。 要监控什么 按重要性排: 服务是否活着(HTTP 200) 磁盘使用率 内存和负载 …
服务每隔几小时重启一次,systemctl status 只显示 SIGKILL 或者 code=killed,看不出原因。这类问题要靠 journalctl 和历史记录。 先看 status 的关键行 systemctl status kb-web 重点看: Active: failed (Resul…
K8s 的概念很多,但要让一个服务真正跑起来被人访问,其实只需要四个东西:Deployment、Service、Ingress、ConfigMap。其他的慢慢补。 一、Deployment:保证有 N 个副本在跑 apiVersion: apps/v1 kind: Deployment …
服务器突然写不进文件,数据库报错,网站 500。第一反应是「磁盘满了」,但真正麻烦的是找出谁占的。 先确认 df -h 看 Use% 和 Avail。如果 / 已经 100%,说明确实满了。还要注意 inode 用尽的情况——磁盘还有空间…
宝塔装起来方便,但默认配置是「能用」而不是「安全」。这两年出过几次面板漏洞被批量扫描的事件,该做的加固还是得做。 面板本身 改端口。默认 8888,扫描器第一个试的就是它。改成一个不常用的高位端口。 开面板 …
被入侵过两次之后,整理了一份排查清单。慌乱的时候最怕无从下手,有个顺序至少不会漏。 第一步:保护现场 先别急着删东西。切断可疑的外连,但保留文件用于分析: mkdir -p /root/quarantine cp -a /可疑路径 /roo…
备份这件事,最重要的不是技术方案多先进,而是“真的能恢复”。这套方案我用了两年,一次真故障中救回过数据。 要备份什么 网站代码(其实不重要,能重新拉) 上传的图片和附件(重要,不可再生) 数据库(最重要,…
以前用 nohup 跑服务,重启服务器就没了,进程崩了也没人管。systemd 是 Linux 自带的服务管理器,把这些事一次做完。 写一个 unit 文件 /etc/systemd/system/kb-web.service: [Unit] Description=KB Web Service …
用 Nginx 把内部服务暴露出去,是最常见的部署方式。这篇记一份我反复用、基本不用改的配置模板。 基本转发 upstream app_backend { server 127.0.0.1:8800; keepalive 32; } server { listen 443 ssl…
给老项目配环境是最烦的事:PHP 版本、扩展、MySQL 版本、Nginx 配置,换台电脑就要重来一遍。用 docker-compose 写一次,之后一条命令起全套。 目录结构 project/ ├── docker-compose.yml ├── nginx/ │ └── defa…
最早写 Dockerfile 基本是照着教程抄:FROM python:3.8,COPY . .,RUN pip install -r requirements.txt。结果镜像 1.2G,每次部署推送到仓库都要等好几分钟。 动作一:换基础镜像 python:3.8 是完整版 Debian,带…