监控 OCI 费用与资源使用
配置 OCI Budget、成本分析和实例指标,并用真实负载观察闲置回收、异常流量和资源瓶颈。
#type / howto
#status / growing
#tech / ops
#resource / oracle-cloud
#platform / server
[!abstract] 监控目标 同时回答三个问题:有没有花钱、服务器是否健康、资源使用是否符合真实业务。单纯烧 CPU 只能伪造活动,不能解决备份、安全和费用风险。
监控 OCI 费用与资源使用
1. 创建 Budget
在 Cost Management -> Budgets 中对根 compartment 或服务器所在 compartment 创建预算:
- 低额度月度预算;
- Actual Spend 达到多个阈值时告警;
- Forecast Spend 告警;
- 至少一个可靠邮箱收件人。
Budget 是软限制,通常按周期评估。不能阻止已经泄露的密钥继续创建资源。
2. 每周查看 Cost Analysis
按 Service、Region、Compartment 和 SKU 分组,回答:
- 是否出现未知服务;
- 是否在非 Home Region 有资源;
- 块存储、备份或网络费用是否增长;
- 费用出现前发生了什么变更;
- 试用金是否掩盖了本应付费的使用。
把异常截图和时间保存到私有事件记录,不公开租户 OCID。
3. 观察 OCI 指标
实例至少关注:
- CPU utilization;
- Memory utilization(需要对应 agent/指标支持);
- Network bytes/packets;
- 磁盘容量和 I/O;
- Instance accessibility;
- Oracle Cloud Agent 插件状态。
为持续高 CPU、磁盘接近满、实例不可达和异常网络建立告警。
4. 主机侧快速检查
uptime
free -h
df -hT
df -ih
ip -s link
sudo ss -s
sudo systemctl --failed
sudo journalctl --disk-usage
docker stats --no-stream 2>/dev/null || true
寻找:
- load average 长期超过可用 CPU;
- swap 持续增长;
- 磁盘或 inode 超过 80%;
- 网络 RX/TX 与业务不符;
- 容器重复重启;
- 日志无限增长。
5. 理解闲置回收
Oracle 官方当前说明:Always Free 实例若在连续 7 天内 CPU 95 分位、网络利用率均低于 20%,A1 内存利用率也低于 20%,可能被判定为空闲并回收。
这不是要求三个指标都必须人为维持在 20% 以上。正确做法:
- 运行真实服务或学习任务;
- 把可重建配置和重要数据备份;
- 对回收通知和实例状态设告警;
- 接受免费资源没有付费 SLA;
- 不运行无限循环、挖矿或垃圾流量脚本“保活”。
6. 流量和攻击面监控
sudo journalctl -u ssh --since '24 hours ago' --no-pager | tail -n 200
sudo fail2ban-client status sshd
sudo ufw status verbose
sudo ss -lntup
若流量突然增加,先看监听端口、容器、登录记录和 OCI 指标。不要只重启机器清除现象。进入 OCI 异常费用与流量激增处置。
7. 月度核对
- 账号类型和试用金状态
- A1 OCPU-hours、GB-hours
- 引导卷、块卷、备份总量
- 非 Home Region 资源
- 公网 IP、负载均衡和其他附带资源
- Cost Analysis 中所有服务都能解释
- Budget 收件测试有效
- 备份和恢复演练状态
Related notes
- 所属 MOC:甲骨文云服务器 MOC
- 计费模型:OCI 免费额度与计费边界
- 维护:维护与备份 OCI 服务器
- 负载:OCI 免费服务器负载选择