摘要:由于企业的特殊性,内外网进行了绝对的隔离,内部的服务器集群不能使用外部的源进行软件和依赖的安装部署,非常不方便。本篇博客基于这种环境搭建一个内部的Yum源仓库供内部的开发者和运维人员使用。
目录
一、Yum仓库部署
以下操作是在服务端上的部署操作。首先挂载本地的镜像文件到物理机上。例如,我下载的镜像是CentOS-7的Everything版本,所以我就把这个镜像挂载到物理机并配置YUM文件。
然后通过yum命令下载createrepo这个软件,它会帮我们创建一个资源池来存放依赖包,并且其他客户端可以通过yum命令下载。下载完成后,我们选定一个目录作为资源池,把本地挂载的镜像文件里Packages/目录下的所有包移动到资源池上,然后执行yum仓库的初始化。具体操作如下
#查看未挂载的光驱
fdisk -l
#挂载光驱
mount /dev/sdb1 /mnt/
#配置本地YUM源
vim CentOS7.repo
[CentOS7] //yum的ID,本地唯一,用于区分不同yum源
name=CentOS-server //描述信息
baseurl=file:///mnt //前面的file://是协议,后面的/mnt是光盘挂载点
enabled=1 //1启用yum源,0禁用yum源
gpgcheck=0 //1使用公钥验证rpm包的正确性,0不验证
#更新yum
yum clean all
yum update
#下载createrepo和http
yum install -y createrepo
yum install -y httpd
systemctl enabled httpd
systemctl restart httpd
#进入资源池目录,本次以http的方式挂载
cd /var/www/html/xxx
cp -r /mnt/Packages/* .
#初始化当前目录
createrepo .
二、客户端yum文件配置
对于需要使用的客户端服务器,我们只需要在/etc/yum.repos.d/目录下新创建一个repo文件即可使用远程的挂载资源。
[root@localhost yum.repos.d]# vim /etc/yum.repos.d/http.repo
[http]
name = http
baseurl = http://YUM仓库IP/xxx //此处的地址就是yum仓库暴露出来的http服务地址
gpgcheck=0
enabled=1
#最后在更新以下yum
yum clean all
yum makecache
yum update
三、对Yum仓库简单维护
维护Yum主要的操作就是新增包,毕竟许多包和依赖不一定是完全的,需要我们到外网去下载一些依赖,或者更新我们原有的资源。新增包的操作主要是把包放进资源目录里面,然后执行更新指令。
createrepo --update /var/www/html/xxx
获得依赖包的途径主要是github或者阿里云。