IT基建与 AI
最近计划重构博客。之前那个博客的模板fuwari有一些问题,因为不支持友链(导致没有办法与别人博客做DR),作者也长年不更新了。所以这次迁移到 Innei 的 Mix Space 机制。因为内容与代码分离,所以 follow 上流更新也更容易了。
对于今天开始薅 Oracle Cloud 的服务器,没有想到一次就拿下 4C24G 的 ARM 机子,而没有被 ABC,也是运气好。
我现在已经有好几台服务器了,如果再加一台 Oracle Cloud 在过去运维起来很麻烦,但是好在我构建了一个很好的 AI Native 的 IT Infra,今天非常轻松就把服务器并入管理并配置上面的应用。下面简单介绍一下我家的IT基建与拓扑。
原则: 通过声明式、GitOps让整个 IT 基建能被 AI 理解、管理、迭代。
系统层 NixOS
网络层 Tailscale
应用层 K3s + ArgoCD
网络
网络主要需要解决几个问题,一个家里设备无缝上网与翻墙。另一个是安全的内网访问。构建以下网络拓扑。
// SVG图,
应用
应用主要是通过内网提供服务,特意避开了公网。因为主要是出于安全考虑。现在AI时代安全漏洞越来截止容易被发现与利用。被1day漏洞是防不胜防。所以最好的方案只能是所有的服务都放在内网。依靠带隔离提供安全性。
然后通过tailscale提供https服务功能。通过服务名.域名来访问。
我的应用
Uptime、Grafana。前者监控所有的其中后者用于做 PG、各种线上服务的监测。
备份
应用有两种,一种是stateless,无PVC持久化的。状态保存在Postgre与有PVC的。前者的Postgres使用PGBackRest。后者使用k8up来统一备份到一个目标。
然后通过该目标再备份到隔地Nas与R2 来实现3-2-1的备份。
自动修复问题
配置了Uptime,监控所有的应用,然后当有服务出现意外在重试之后依然不行的就自动通过web触发 AI Agent进行自动修复。