CentOS 6搭建yum仓库用来安装SaltStack(2021.01.27)
说明:懂得分享,心存感恩!
一、背景介绍及实验环境
(1)背景介绍
实际企业中,大多数服务器不能连接外网,需要安装软件只能通过本地yum仓库(本次实验FTP服务器IP地址:10.0.0.61)。
yum仓库原理图
(2)实验环境
[oldboy@m01 ~]$ cat /etc/redhat-release CentOS release 6.7 (Final) [oldboy@m01 ~]$ uname -r 2.6.32-573.el6.x86_64 [oldboy@m01 ~]$ uname -m x86_64
二、服务端配置
准备工作:虚拟机加载ISO文件,确保连接。
请到下面网站中下载最完整安装包作为base库(本文以CentOS-6.7为例)
https://mirrors.aliyun.com/centos-vault/6.7/isos/x86_64/CentOS-6.7-x86_64-bin-DVD1.iso
(1)配置三个repo文件
1)配置CentOS-Base.repo文件
wget -O /etc/yum.repos.d/CentOS-Base.repo https://static.lty.fun/%E5%85%B6%E4%BB%96%E8%B5%84%E6%BA%90/SourcesList/Centos-6-Vault-Aliyun.repo
2)配置epel.repo
wget -O /etc/yum.repos.d/epel.repo http://file.kangle.odata.cc/repo/epel-6.repo
3)配置saltstack.repo
cat > /etc/yum.repos.d/saltstack.repo <<EOF [saltstack-repo] name=SaltStack repo for RHEL/CentOS $releasever baseurl=http://archive.repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest enabled=1 gpgcheck=1 gpgkey=http://archive.repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest/SALTSTACK-GPG-KEY.pub EOF
说明:由于CentOS 6停更,所以需要将上面三个repo文件的路径改为上述的备用路径(千辛万苦才找到)!
(2)清空原有元数据,建立新的元数据
yum clean all
yum makecache
(3)安装vsftpd和createrepo,启动vsftpd
yum install vsftpd createrepo -y
/etc/init.d/vsftpd start
说明:必要的时候检查一下vsftpd服务是否已经启动,即netstat -lntup|grep vsftpd(CentOS7无此命令,可以使用ps -ef |grep vsftpd)。
(4)在ftp站点目录下新建三个目录
mkdir /var/ftp/{base,update,salt} -p
(5)从光盘拷贝base库(自带软件包和repodata数据)
mount /dev/cdrom /mnt cp -fr /mnt/* /var/ftp/base
(6)下载update库(仅软件包)
yum update -y --downloadonly --downloaddir /var/ftp/update
(7)生成update的repodata数据
createrepo /var/ftp/update
(8)仅下载salt-master和salt-minion所需要的软件以及依赖包
yum install salt-minion salt-master -y --downloadonly --downloaddir /var/ftp/salt
(9)生成salt的repodata数据
createrepo /var/ftp/salt
备注:复制下面的结果一步完成
wget -O /etc/yum.repos.d/CentOS-Base.repo https://static.lty.fun/%E5%85%B6%E4%BB%96%E8%B5%84%E6%BA%90/SourcesList/Centos-6-Vault-Aliyun.repo wget -O /etc/yum.repos.d/epel.repo http://file.kangle.odata.cc/repo/epel-6.repo cat > /etc/yum.repos.d/saltstack.repo <<EOF [saltstack-repo] name=SaltStack repo for RHEL/CentOS $releasever baseurl=http://archive.repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest enabled=1 gpgcheck=1 gpgkey=http://archive.repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest/SALTSTACK-GPG-KEY.pub EOF yum clean all yum makecache yum install vsftpd createrepo -y /etc/init.d/vsftpd start mkdir /var/ftp/{base,update,salt} -p mount /dev/cdrom /mnt cp -fr /mnt/* /var/ftp/base yum update -y --downloadonly --downloaddir /var/ftp/update createrepo /var/ftp/update yum install salt-minion salt-master -y --downloadonly --downloaddir /var/ftp/salt createrepo /var/ftp/salt
三、客户端配置
(1)备份所有repo文件
mkdir /etc/yum.repos.d/repobackup mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repobackup/
(2)创建三个文件(base、update、salt)
1)创建base文件(仓库)
cat > /etc/yum.repos.d/base.repo<<EOF [base] name=base repo baseurl=ftp://10.0.0.61/base gpgcheck=0 enabled=1 EOF
2)创建update文件
cat > /etc/yum.repos.d/update.repo<<EOF [update] name=update repo baseurl=ftp://10.0.0.61/update gpgcheck=0 enabled=1 EOF
3)创建salt文件
cat > /etc/yum.repos.d/salt.repo<<EOF [salt] name=salt repo baseurl=ftp://10.0.0.61/salt gpgcheck=0 enabled=1 EOF
(3)清空原有元数据,建立新的元数据
yum clean all
yum makecache
(4)安装salt-minion
yum install -y salt-minion
备注:复制下面的结果一步完成
mkdir /etc/yum.repos.d/repobackup mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repobackup/ cat > /etc/yum.repos.d/base.repo<<EOF [base] name=base repo baseurl=ftp://10.0.0.61/base gpgcheck=0 enabled=1 EOF cat > /etc/yum.repos.d/update.repo<<EOF [update] name=update repo baseurl=ftp://10.0.0.61/update gpgcheck=0 enabled=1 EOF cat > /etc/yum.repos.d/salt.repo<<EOF [salt] name=salt repo baseurl=ftp://10.0.0.61/salt gpgcheck=0 enabled=1 EOF yum clean all yum makecache yum install -y salt-minion