Cobbler?定义仓库
Cobbler会将指定的repo仓库里的.rpm包下载到本地,通过Cobbler安装的系统会在本地生成对应的.repo文件,里面的地址内容指向Cobbler的IP地址
实现该功能需要在:/etc/cobbler/settings下的参数为yum_post_install_mirror: 1 但是cobbler默认开启
1.添加 repo
这里以zabbix-3.4来演示
[[email protected] ~]# cobbler repo add --name=zabbix-3.4_CentOS7 --mirror=https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/ --arch=x86_64 --breed=yum
#或者同步本地仓库
[[email protected] ~]# cobbler repo add --name=local-ftp-base \ --mirror=ftp://10.0.0.202/centos7/base/
2.同步 repo
#Cobbler自动将*.rpm包下载到本地/var/www/cobbler/repo_mirror/
[[email protected] ~]# cobbler reposync
[[email protected] ~]# ll /var/www/cobbler/repo_mirror/
drwxr-xr-x 5 root apache 4096 Jan 7 11:03 zabbix-3.4
3.添加 repo 到对应的 profile
#查看repo列表(已添加)
[[email protected] ~]# cobbler repo list
zabbix-3.4_CentOS7
#http协议
[[email protected] ~]# cobbler profile edit --name=CentOS-7-x86_64 --repos=zabbix-3.4_CentOS7
#本地ftp
[[email protected] ~]# cobbler profile edit --name=CentOS-7-x86_64 --repos=local-ftp-base
#注意:如果存在多个repo,需要在多个repo包名之间空格分割,
cobbler profile edit --name=CentOS-7-x86_64 --repos="zabbix-3.4 saltstack-2018.3"
4.修改 kickstart ?件 (添加到 %post %end 中间)
%post
systemctl disable postfix.service
$yum_config_stanza #在安装系统就会调用该变量为系统添加repo
%end
5.添加定时任务, 定期同步repo
echo "00 3 * * * /usr/bin/cobbler reposync --tries=3 --no-fail" >> /var/spool/cron/root
# --tries repo同步失败的尝试次数
# --no-fail 当前repo同步失败也不会影响到其它repo同步
可以将同步的结果重定向到一个log文件中便于查看:
00 3 * /usr/bin/cobbler reposync --tries=3 --no-fail" &>/var/log/cobbler_sync.log
- 在自动化装机的时候,cobbler会在新装的机器上添加一个新的repo源会指向cobbler的地址
原文地址:http://blog.51cto.com/12643266/2344658
时间: 2024-11-13 06:52:45