接上一篇使用 CentOS 搭建内网 YUM 私有源:镜像篇,这次是直接使用 rsync 同步官方源(国内镜像站)。为了保证文章的完整度,假设是新建的服务器,只是 IP 仍然是 10.1.1.42。
准备
因为使用 rsync 同步,所以需要先在外网把安装包下载好,当然也可以顺便把 httpd
一块载好:
- rsync
- httpd 及依赖包
下载完成后,使用 scp 命令把安装包复制到内网服务器安装,而外网除了下载依赖包之外,还需新建几个目录以临时存放 YUM 数据:
外网
等 rsync 安装完成便可以开始同步(建议在凌晨同步),这里使用的是中科大的镜像站,阿里云不支持 rsync 方法同步,下面以 CentOS 7 和 epel 源为例:
内网
在数据同步完成之前,可以先在内网把环境搭建好。
数据盘
为了便于以后扩展,专门划分了一块 500G 的数据盘用于存放数据,因为用的是阿里云的服务器,需要手动手动挂载:
修改 httpd
假设 httpd 已安装完成,然后修改默认路径,及关闭默认页面:
收尾
等第二天同步完成后,便可着手同步至内网 YUM 服务器:
最后
除了使用 rsync
同步之外,用 reposync
同步效果也一样,不过前者要更方便一些,也不需要重新生成 repodata 索引数据。
此外 rsync 有 include
和 exclude
参数可以指定需要同步和排除的目录,但不清楚为什么在本地测试正常,正式使用时数据总是不对,所以最终还是采用比较笨的方法。
使用私有源
前一篇提到可以写一个脚本修改源地址,但其实这并非是最佳方法。在阿里云专有云中,默认的源地址是 yum.tbsite.net
,最佳方法是在 DNS 中修改这个网址为私有源的 IP 地址,这样可以做到用户层面最佳体验,次之是在 DNS 中新增一条映射,把私有源 IP 指向另一个网址,然后让客户把 hosts 指向这个网址即可。
可惜的是上面的两种方案最终都没有采用。
信息
版本
- 系统版本
- CentOS 6.8
- CentOS 7.3