背景
之前每年在云服务器上投入差不多 2-3w ,最近看了下数据其实访问量和稳定性要求没那么高,但存在几个问题一直不好降低配置:
- 服务特别多,一些 ES 、数据库之类的对内存要求高,单机配置不好降下来;
- 存储占比大,非常多的 OSS 文件,且流量大,带宽要求高,遇到过很多次被恶意刷流量;
- 有不少耗 CPU 的转码、计算等任务,收到过很多次轻量云的警告;
- 尝试过 ServerLess ,使用不方便,且附带的数据库、缓存等等一堆东西并不便宜;
在尝试的方案
1. 硬件
- 两台浪潮 5212m5 ,配置拉满 256g 每台内存,不含存储总价 3000 以内每台;
- 6 块 Intel 固态、16 块 希捷银河 x18 16T 拆机 SAS 硬盘(单块 950 左右,在保);
- 2.5g 交换机 / 从家里机柜到地下室正好有个弱电通道,一根网线搞定;
- UPS 之前淘汰的,换了两组电池继续用;
2. 部署调整
- 原家里机柜两台 NAS 、各种智能家居的设备,现在准备把两台 NAS 停掉,也用地下室的服务器承载服务,硬盘全部迁移过去,本身 unraid 虚拟化迁移很方便;
- 两台服务器放在地下室,取电用了充电桩的,原因是电费无阶梯,峰谷电算下来全天不到 5 毛一度;
- 地下室通风条件极好,冬暖夏凉,噪音无感;
3. 几个核心服务
- Minio 替代 OSS ;
- PG 和 MySQL 有专用配置;
- ES 单独搞了个集群;
- K8S 作为其他服务的统一承载;
- 监控和可观测沿用朋友自己搞的开源的那套;
- 环境监测和用电分析继续用了家里在用的 HA ;
- 两张 2080ti ,做本地 AI 推理,其实可以用 P40 的,正好手头有 2080 先做测试了;
4. 最重要的
- 两台 200m 带宽轻量云,每年不到 200 块;
- 家里服务器和轻量云之间延迟 5ms 以内;
- 备案不用动;
- 两个外网 IP ;
- 轻量云和服务器之间用 WG 组网,延迟控制很好,带宽可以拉满家庭网络上行;
- 家庭网络三年没出过任何问题,且仅一次机房维修中断;
- 轻量云目前用的 iptables 直接转发端口(在尝试反向代理模式,容易触发轻量云性能警告);
- 目前总功耗最大还不到 1000w ;
4. 效果
- 省钱
- 合计 512G 内存,四路铂金 CPU ,ESXi 随便开机器,从来没打过这么富裕的仗;
- 网络目前看来完全符合最初设想;
- 容灾方面目前没考虑完善,不过因为服务本身做好了各种备份,不担心中断;
问题
- 抱着省电、减小家里噪音的原则本来想出掉原有的各种设备,但目前遇到一个对外服务和家庭网络隔离的问题;
- 有时候需要完全隔离,避免各种外部入侵导致的家庭网络失效,有时候又需要部分服务能和家里无缝集成;
- 单纯 wg 组网的各种尝试都试过,不够完美;
- 主路由双拨,公网出口和子网划分都做了,但好像仍然存在薄弱点;
有啥好办法或者大家在这个基础上有什么新想法,更靠谱的方案可以讨论讨论!
|