基于cobbler搭建本地的yum仓库源

概述:

前面的文章已经大致描述并配置了通过cobbler服务结合PXE+Kickstart+DHCP+TFTP+HTTP无人值守安装多系统的自动化运维安装系统服务;利用这一特性,cobbler还有一个妙用,用来搭建(同步)本好的yum源仓库;用来统一安装更新本地的(IDC)系统软件与第三方软件仓库;
需要用到的无非还是cobbler rsync httpd,本文是线上部署时的整理笔记,旨在备忘与分享,如有错误和遗漏欢迎指正~

安装配置:
由于基于cobbler所以请参考前前方自动化运维之cobbler安装多版本系统
因此只介绍如何基于httpd服务同步更新源,需要安装的cobbler及配置,httpd安装启动好即可配置成本地的更新源;
添加同步及管理本地yum源主要用到cobbler repo 相关命令
cobbler repo命令说明:

# cobbler repo
cobbler repo add    #添加yum源
cobbler repo copy
cobbler repo edit
cobbler repo find
cobbler repo list       #列出已添加的yum源
cobbler repo remove  #删除已添加的本地yum源
cobbler repo rename  #重命名本地已添加的源
cobbler repo report     #列出全部源的详细信息

添加本地仓库:

cobbler repo add --name=Centos6-UPDATES --mirror=http://mirrors.aliyun.com/centos/6/updates/x86_64/
cobbler repo add --name=Centos6-salt201611 --mirror=https://repo.saltstack.com/yum/redhat/6/x86_64/2016.11/
cobbler repo add --name=Centos7-extras  --mirror=https://mirrors.aliyun.com/centos/7/extras/x86_64/
cobbler repo add --name=epel6-x86_64-testing --mirror=http://mirrors.aliyun.com/epel/testing/6/x86_64/
cobbler repo add --name=Centos7-salt201707  --mirror=https://repo.saltstack.com/yum/redhat/7Server/x86_64/2017.7/
cobbler repo add --name=Centos6-Base --mirror=http://mirrors.aliyun.com/centos/6/os/x86_64/
cobbler repo add --name=epel6-x86_64 --mirror=http://mirrors.aliyun.com/epel/6/x86_64/
cobbler repo add --name=Centos7-epel --mirror=https://mirrors.aliyun.com/epel/7Server/x86_64/
cobbler repo add --name=Centos6-webtatic --mirror=http://sp.repo.webtatic.com/yum/el6/x86_64/
cobbler repo add --name=Centos7-webtatic --mirror=https://sp.repo.webtatic.com/yum/el7/x86_64/
cobbler repo add --name=Centos6-percona  --mirror=http://repo.percona.com/release/6Server/os/x86_64/
cobbler repo add --name=Centos7-salt201611 --mirror=https://repo.saltstack.com/yum/redhat/7/x86_64/2016.11/
cobbler repo add --name=Centos7-zabbix3 --mirror=http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/
cobbler repo add --name=Centos6-extras  --mirror=http://mirrors.aliyun.com/centos/6/extras/x86_64/
cobbler repo add --name=Centos6-zabbix3 --mirror=http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/
cobbler repo add --name=Centos7-percona --mirror=http://repo.percona.com/release/7Server/os/x86_64/

查看已经添加的仓库

[[email protected] repo_mirror]# cobbler repo list
   Centos6-Base
   Centos6-UPDATES
   Centos6-extras
   Centos6-percona
   Centos6-salt201611
   Centos6-webtatic
   Centos6-zabbix3
   Centos7-Base
   Centos7-epel
   Centos7-extras
   Centos7-percona
   Centos7-salt201611
   Centos7-salt201707
   Centos7-webtatic
   Centos7-zabbix3
   epel6-x86_64
   epel6-x86_64-testing

添加好以上各种镜像源后可以通过
#cobbler reposync 命令开始同步所有的镜像源到本地
也可以指定仓库名同步,(cobbler reposync --only=“仓库名”)由于 同步所有需要时间比较长,故这里只指定更新同步一个源做演示,其他的原理一样,以同步Centos7-zabbix3为例

# cobbler reposync --only=Centos7-zabbix3
task started: 2018-06-18_102322_reposync
task started (id=Reposync, time=Mon Jun 18 10:23:22 2018)
hello, reposync
run, reposync, run!
creating: /var/www/cobbler/repo_mirror/Centos7-zabbix3/config.repo
creating: /var/www/cobbler/repo_mirror/Centos7-zabbix3/.origin/Centos7-zabbix3.repo
running: /usr/bin/reposync -l -n -d --config=/var/www/cobbler/repo_mirror/Centos7-zabbix3/.origin/Centos7-zabbix3.repo --repoid=Centos7-zabbix3 --download_path=/var/www/cobbler/repo_mirror -a x86_64
2.9 kB     00:00
3.6 kB     00:00
......以下省略....

由于这个仓库不大同步到本地很快,默认同步到/var/www/cobbler/repo_mirror/下
如图:

此时就可以在浏览器上访问:
http://172.16.0.4/cobbler/repo_mirror/Centos7-zabbix3/ 如图:

制作本地的repo 在其他本地机器上制作
注意:这里的baseurl=http://"ip"/cobbler/repo_mirror/这段是固定的,如果您也是默认安装的httpd,后面的一段指定的方法就是:config.repo所在位置 如zabbix3同步完后config.repo所在目录 Centos7-zabbix3下,因此baseurl=http://172.16.0.4/cobbler/repo_mirror/Centos7-zabbix3/;而同步Centos7-Base时cofig.repo 时所在目录下会有一个Packages用于存放所有的rpm包,baseurl则不应该指到Packages而是:baseurl=http://172.16.0.4/cobbler/repo_mirror/Centos7-Base/

#cat local.repo
[[email protected] yum.repos.d]# cat local.repo
[zabbix-34]
name=local CentOS7 zabbix34
baseurl=http://172.16.0.4/cobbler/repo_mirror/Centos7-zabbix3/
enable=1
gpgcheck=0

[CentoS7-Base]
name=local Centos7 base
baseurl=http://172.16.0.4/cobbler/repo_mirror/Centos7-Base/
enable=1
gpgcheck=0

查看:
# yum clean all
# yum makecache
# yum repolist

如图:

接下来就可以愉快的把这个local.repo分发到所有内部(能访问这个cobbler服务器)机器上,当作zabbix本地源使用了,这里只添加了zabbix,还可以同步以上添加的镜像库,全部同步到本地后制作针对centos6 centos7的本地理更新源!
添加计划任务每天凌晨1点同步所有源到本地(由于基于rsync,同步时自动保持一致)

# crontab -l
1 1 * * *  /bin/cobbler reposync >/dev/null

至此一个本地的yum源仓库完成;如果觉得不错点个赞啊!

原文地址:http://blog.51cto.com/dyc2005/2130240

时间: 2024-08-28 14:19:06

基于cobbler搭建本地的yum仓库源的相关文章

5、cobbler搭建本地saltstack yum仓库

5.1.安装cobbler: 参考"linux运维_集群_01(35.cobbler自动化安装操作系统:)" 5.2.cobbler yum源常用操作命令: cobbler repo add 添加yum源 cobbler repo copy 复制 cobbler repo edit 修改 cobbler repo find 查找 cobbler repo list 列出已添加的yum源 cobbler repo remove 删除已添加的本地yum源 cobbler repo rena

搭建本地离线yum仓库

环境:VMware-Workstation-12-Pro,Windows-10,CentOS-7.5,Xshell5 前言 我们知道yum工具是基于rpm的,其一个重要的特性就是可以自动解决依赖问题,但是yum的本质依旧是把后缀名.rpm的包下载到本地,然后按次序安装之.但是每次执行yum install xxx,会自动安装并且安装完毕后把rpm包自动删除.当我们下载比较大的服务,比如MySQL大约190M,每次都重新下载比较慢,这时我们就可以考虑,搭建本地离线yum仓库,大致需要如下几个步骤.

搭建基于HTTP协议内网yum仓库

目录 1. 前言 2. 把rpm包下载到本地 3. 配置nginx对外提供服务 4. 配置本地repo文件 5. 生成repodata信息 6. 检查及使用 7. 对管理机器上的仓库进行更新 参考资料 环境:VMware-Workstation-12-Pro,Windows-10,CentOS-7.5,Xshell5 1. 前言 如果我们的yum仓库需要多台机器共同使用,此时把yum仓库做成本地的,然后一台台scp推送过去比较麻烦,此时可以考虑搭建一个基于HTTP协议,供给内网其它机器使用的本地

yum仓库源搭建

本地yum源搭建 cd源 mount /dev/sr0 /mnt vim  /etc/yum.repos.d/base.repo [centos-base]name=centos7#baseurl=file:///var/www/html/centos/baseurl=file:///mntenabled=1gpgcheck=0 yum clean all yum makecache yum repolist iso源 mount -o loop centos7.4.iso /mnt 同上 ht

Linux系统中搭建本地光盘yum源

搭建本地光盘yum源 第一步:放入CentOS安装光盘,并挂载光盘到指定位置:命令如下: [[email protected] ~]#mkdir /mnt/cdrom #创建cdrom目录,作为光盘的挂载点 [[email protected] ~]#mount -t iso9660 /dev/cdrom1 /mnt/cdrom/ mount: block device /dev/sr0 is write-protected mounting read-only #挂载光盘到/mnt/cdrom

搭建内网yum仓库

编译源码,根据自己的需求做成定制RPM包–>搭建内网yum仓库–yum安装. [root@www ~]# uname -aLinux www 2.6.32-642.6.2.el6.x86_64 #1 SMP Wed Oct 26 06:52:09 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux [root@www ~]# cat /etc/redhat-release CentOS release 6.8 (Final) =================定制化R

安装与现在软件的方法:更换yum仓库源、yum下载rpm包、源码包安装

更换yum仓库源 安装扩展源epel yum下载rpm包 源码包安装 原文地址:http://blog.51cto.com/13515599/2059165

搭建企业内部yum仓库(centos6+centos7+epel源)

yum仓库服务端配置 1. 创建yum仓库目录 mkdir -p /data/yum_data/cd /data/yum_data/#可以上传rpm包到此目录,此目录下面还可以包括文件夹 2. 安装createrepo软件[[email protected] yum_data]# yum -y install createrepo 3. 初始化repodata索引文件createrepo -pdo /data/yum_data/ /data/yum_data/ 4. 提供yum服务# 可以用Ap

Linux 搭建YUM仓库源详解

基于ISO镜像构建 YUM 本地源 1.yum install httpd:安装httpd软件包.yum remove httpd:卸载httpd软件包.yum erase httpd:删除httpd程序包. 2.首先将光驱iso镜像加载至虚拟机CD/DVD,创建挂在目录mkdir -p /mnt/cdrom. 3.备份/etc/yum.repos.d/CentOS-Base.repo 文件为 CentOS-Base.bak. 同时在/etc/yum.repos.d目录下修改文件CentOS-M