背景:
?因內(nèi)網(wǎng)環(huán)境無法從外網(wǎng)獲取安裝包诅炉,所以需要搭建內(nèi)網(wǎng)YUM源同步阿里YUM源環(huán)境:
?內(nèi)網(wǎng)YUM源服務(wù)器:192.168.33.129
??CentOS7:3.10.0-1160.el7.x86_64
??yumsync版本:1.3.0
??Python版本:2.7
??nginx版本:1.20.1?客服端(測試YUM源):192.168.33.128
??CentOS7:3.10.0-1160.el7.x86_64
內(nèi)網(wǎng)YUM源服務(wù)器配置
安裝yumsync
1桦沉、獲取yumsync安裝包
# Github地址:https://github.com/cea-hpc/yumsync/tags
wget https://github.com/cea-hpc/yumsync/archive/refs/tags/v1.3.0.tar.gz
tar -zxvf yumsync-1.3.0.tar.gz
2、安裝yumsync
# 安裝yumsync所依賴的模塊/包
pip install blessings PyYAML==5.4.1 pyliblzma
yum -y install createrepo dnf
# 安裝yumsync
cd yumsync
python setup.py install
# 查看版本
yumsync -v
同步阿里YUM源鏡像
以zabbix的yum源為例
1浩蓉、創(chuàng)建存儲(chǔ)yum源的目錄
mkdir /data
2、創(chuàng)建需要同步的yum源列表寨腔,格式如下所示
vim /root/repos.yml
---
zabbix/zabbix/4.0/rhel/7/x86_64:
baseurl: 'https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/'
gpgkey: 'https://mirrors.aliyun.com/RPM-GPG-KEY-ZABBIX-A14FE591'
3毅哗、同步阿里yum源到本地
# -o:指定存儲(chǔ)目錄;
# -c:指定配置文件职烧;
# 其他相關(guān)參數(shù)詳見yumsync -h
# 命令執(zhí)行之后會(huì)同步到/data扁誓,并在/data自動(dòng)創(chuàng)建/public,用于暴露YUM源
yumsync -o /data/ -c /root/repos.yml
4蚀之、定時(shí)任務(wù)同步
# 編寫同步腳本
vim /root/yumsync/yumsync.sh
yumsync -o /data/ -c /root/repos.yml
# 設(shè)置定時(shí)任務(wù)
crontab -e
10 * * * 6 sh /root/yumsync/yumsync.sh > /dev/null 2>&1
Nginx暴露YUM源
如果有其他需要自行設(shè)定蝗敢,此處只設(shè)置暴露yum源的基礎(chǔ)設(shè)置
1、安裝nginx
yum -y install nginx
2足删、配置nginx暴露yum源
cd /etc/nginx
# 配置nginx
vim nginx.conf
http{
...
sendfile on; # 開啟高效文件傳輸模式
server{
...
location / {
autoindex on; # 開啟目錄瀏覽模式
root /data/public;
index index.html index.htm;
}
...
}
...
}
# 重啟nginx
systemctl restart nginx
3前普、在/data/public下創(chuàng)建index.hmtl(套用別人的,有需要自行修改)
vim /data/public/index.html(內(nèi)容詳見:)
mkdir /data/public/.media
vim /data/public/.media/mirror.css(內(nèi)容詳見:)
4壹堰、訪問網(wǎng)頁測試
image.png
客戶端測試
1、備份原有yum源
mkdir /etc/yum.repo.d/backup
mv /etc/yum.repo.d/* /etc/yum.repo.d/backup
2骡湖、配置內(nèi)網(wǎng)Yum源
如CentOS-Base等源需要key的話贱纠,gpgcheck=1,并將gpgkey=配置為內(nèi)網(wǎng)YUM源的正確地址
vim /etc/yum.repo.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=http://192.168.33.129/zabbix/5.0/rhel/6/x86_64/
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
3响蕴、更新yum緩存
yum clean all
yum makecache