使用 Cloudflare 加速博客海外访问速度

390 字
2 分钟
...阅读
...评论

这几天对 hadb.me 博客又做了一次迁移和优化。

原先 hadb.me 是直接部署在阿里云的 k8s 上的,但为了统一博客的数据备份,决定迁移到 HomeLab ,数据存到 NAS 上,容器部署到 NUC 的 docker 中。这样数据可以跟着整个 NAS 的备份策略一起。所以这次架构调整的主要目的是为了方便博客数据的统一备份。

但是由于 HomeLab 无法直接暴露 443 端口,所以域名不能直接解析到家里的 IP。

一开始尝试了下直接接入 Cloudflare,发现境外访问速度很快,但境内直接访问的话,速度堪忧。于是研究了一下,最终根据访问者的位置使用不同的解析方式实现境内外的同时加速的目标。

最终的架构是这样:

hadb.me 博客网络架构

在境内,直接解析到阿里云的 SLB 上,阿里云上我是有一套 k8s 集群,里面起了个 nginx 容器,反向代理到 HomeLab 的非标端口上,HomeLab 的域名解析通过阿里云解析的 API 动态更新。

在境外,通过 CNAME 解析到 Cloudflare 上绑定一个其他域名 xxx.com,这个域名通过 Cloudflare 的 API 会动态更新解析到 HomeLab 的外网 IP 上。在这个域名的 Origin Rules 里面设置主机名为 xxx.comhadb.me 的时候都重写端口到 HomeLab 的非标端口上。

至此,完成架构迁移。既满足了备份需求,海外访问速度上也有提升。

评论区
Copyright © Bean Deng