linux-yum源构建

一. 背景: 公司内部需要定制自己的rpm包,比较成熟的方案之一就是通过yum仓库的方式管理, 当然,可以自行通过程序来实现, 不过比较费劲。

      环境: 我们环境比较复杂,分别有aws、ali、ten。 对应的系统版本也有6、7两个。 为了完全契合各运营商提供的系统。我们采用了运营商原生的镜像(可以自己制作后上传,但不能保证是否有坑)。 故我们需要针对不同的环境、版本打不同的rpm包。配置对应的yum仓库:

二. 设计结构: 

yum_source]# tree -d
.
├── xiao_7
│   ├── ali
│   │   └── x86_64
│   │       └── repodata
│   ├── aws
│   │   └── x86_64
│   │       └── repodata
│   └── ten
│       └── x86_64
│           └── repodata
└── xiao_8
    ├── ali
    │   └── x86_64
    │       └── repodata
    ├── aws
    │   └── x86_64
    │        └── repodata
    └── ten
    |   └── x86_64
    │        └── repodata

三. 构建方式:

         一个yum仓库的构建方式是很简单的。 通过createrepo工具即可:

#yum -y install createrepo
#createrepo -pdo /data2/yum_source/xiao_7/aws/x86_64/ /data2/yum_source/xiao_7/aws/x86_64/

放入相应的rpm包至/data2/yum_source/xiao_7/aws/x86_64/下

更新yum索引
createrepo --update /data2/yum_source/xiao_7/aws/x86_64/

http站点配置。 这里通过nginx,部署方式略。 配置如下:

server {
    listen       80;
    server_name  yum.int.xiao.com.cn;
    include trace.setting;
    access_log  /var/log/nginx/test.log  main;
    root /data2/yum_source;
}

client配置:

# cat /etc/yum.repos.d/xiao_package.repo 
[xiao-source]      #中间不能有空格
name=xiao package
baseurl=http://yum.int.xiao.com.cn/xiao_7/aws/$basearch/   #aws的$releasever比较变态(值为latest),参考/etc/yum.conf
gpgcheck=0
enabled=1

验证:

       yum clean all && yum search xiao 。。。。。。

与初始化整合:  初始化获取实例环境,版本信息。然后下发对应的repo配置, 进行yum初始化部署。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值