groups: - name: system_alerts interval: 30s rules: - alert: HighCPUUsage expr: 100 - (avg by(instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100) > 80 for: 5m labels: severity: warning annotations: summary: "Instance {{ $labels.instance }} 高CPU使用率" description: "CPU使用率超过80% (当前: {{ $value | humanizePercentage }})" - alert: HighMemoryUsage expr: 100 - ((node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes) * 100) > 85 for: 5m labels: severity: warning annotations: summary: "Instance {{ $labels.instance }} 高内存使用率" description: "内存使用率超过85% (当前: {{ $value | humanizePercentage }})" - alert: HighDiskUsage expr: 100 - ((node_filesystem_avail_bytes{mountpoint="/",fstype!="rootfs"} / node_filesystem_size_bytes{mountpoint="/",fstype!="rootfs"}) * 100) > 90 for: 5m labels: severity: critical annotations: summary: "Instance {{ $labels.instance }} 高磁盘使用率" description: "磁盘使用率超过90% (当前: {{ $value | humanizePercentage }})" - alert: HostUnreachable expr: up == 0 for: 1m labels: severity: critical annotations: summary: "实例 {{ $labels.instance }} 不可达" description: "实例 {{ $labels.instance }} 已超过1分钟不可用" - alert: DiskSpaceLow expr: (node_filesystem_avail_bytes{fstype!="tmpfs",fstype!="rootfs"} / node_filesystem_size_bytes{fstype!="tmpfs",fstype!="rootfs"}) < 0.1 for: 2m labels: severity: warning annotations: summary: "实例 {{ $labels.instance }} 磁盘空间不足" description: "挂载点 {{ $labels.mountpoint }} 磁盘使用率超过90%"