如何同步openstack RDO源至本地进行离线安装

原创 2015年11月20日 21:33:19
同步本地源可以采用两种方法:
1.rsync
2.reposync


第一种方案参考如下段程序:
#!/bin/bash
#Script name:rsync_yumrepo.sh
RsyncBin="/usr/bin/rsync"
RsyncPerm='-avrt --delete --no-iconv --bwlimit=1000'


Centos_7_epel='/data/yum_repo/Centos-7/epel/'


LogFile='/data/yum_repo/rsync_yum_log'
Date=`date +%Y-%m-%d`
#check
function check {
if [ $? -eq 0 ];then
    echo -e "\033[1;32mRsync is success!\033[0m" >>$LogFile/$Date.log
else
    echo -e "\033[1;31mRsync is fail!\033[0m" >>$LogFile/$Date.log
fi
}
if [ ! -d "$LogFile" ];then
    mkdir $LogFile
fi
#rsync centos 5 base
#echo 'Now start to rsync centos 5 base!' >>$LogFile/$Date.log
#$RsyncBin $RsyncPerm rsync://mirrors.yun-idc.com/centos/5/os/ $Centos_5_base >>$LogFile/$Date.log
#check
#rsync centos 5 epel
echo 'Now start to rsync centos 5 epel!' >>$LogFile/$Date.log
$RsyncBin $RsyncPerm --exclude=SRPMS/ --exclude=ppc64/ rsync://dl.fedoraproject.org/pub/epel/7/x86_64 $Centos_7_epel >>$LogFile/$Date.log
check




语法为:rsync  [option] resource destination


rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you
are welcome to redistribute it under certain conditions.  See the GNU
General Public Licence for details.


rsync is a file transfer program capable of efficient remote update
via a fast differencing algorithm.


Usage: rsync [OPTION]... SRC [SRC]... DEST
  or   rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST
  or   rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST
  or   rsync [OPTION]... SRC [SRC]... rsync://[USER@]HOST[:PORT]/DEST
  or   rsync [OPTION]... [USER@]HOST:SRC [DEST]
  or   rsync [OPTION]... [USER@]HOST::SRC [DEST]
  or   rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]
The ':' usages connect via remote shell, while '::' & 'rsync://' usages connect
to an rsync daemon, and require SRC or DEST to start with a module name.


rsync将会把resource中的RPM包下载到指定的目录中。




2.reposync
reposync比价简单,其简单用法为rsync -repoid repository-id


可以用yum repolist查看repo的ID
yum repolist 
[root@kilo openstack-common]# yum repolist
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
repo id                                                         repo name                                                                                         status
centos-iso                                                      CentOS-ISO                                                                                        3576
epel                                                            Extra Packages for Enterprise Linux 7 - x86_64                                                    8327
epel-debuginfo                                                  Extra Packages for Enterprise Linux 7 - x86_64 - Debug                                            1919
openstack-kilo                                                  OpenStack Kilo Repository                                                                          280
openstack-kilo-common                                           openstack kilo common                                                                              493
repolist: 14595


如上,同步epel到本地当前目录:
reposync -repoid=epel


reposync的前提是先在系统里面安装repository库,然后到远程repository去下载rpm包。例如可以先安装rdo的openstack-kilo库:
yum insatll  http://rdo.fedorapeople.org/openstack-kilo/rdo-release-kilo.rpm
安装完成之后将会在/etc/yum.repos.d目录下生成openstack-kilo.repo的文件,此时即可yum repolist 查看到。




3.制作本地yum源


简单创建repository的命令如下:
createrepo -update --baseurl=packages_dir packages_dir #packages_dir是包含所有rpm包的绝对路径


此命令将会把package_dir目录下的包生成repository,在该目录下会生成repodata子目录,然后在/etc/yum.repos.d目录下编辑.repo文件
[openstack-kilo]
name=OpenStack Kilo Repository
#baseurl=http://repos.fedorapeople.org/repos/openstack/openstack-kilo/el7/
baseurl=file:///data/yum_repo/rdo-openstack-kilo/openstack-kilo
skip_if_unavailable=0
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-kilo


然后刷新:yum clean all;yum makecache即可。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

ubuntu 16.04 上安装OpenStack Mitaka (all-in-one):环境准备

ubuntu 16.04上安装openstack mitaka版本

Mirantis OpenStack Fuel9.0离线安装(MOS9.0本地源)

转载请注明:姬子的博客 » Mirantis OpenStack Fuel9.0离线安装(MOS9.0本地源) 千呼万唤始出来! 搭载openstack-M版的MOS9.0终于在7...

Mirantis OpenStack Fuel8.0离线安装(MOS8.0本地源)

转载请注明:姬子的博客 目前mos已经更新到了8.0,集成了openstack的L版。搭载迄今为止最成熟的M版的9.0也是指日可待了。 openstack愈趋成熟,我们愈是按耐不住内心的狂...
  • gzhouc
  • gzhouc
  • 2016年12月11日 15:19
  • 856

Mirantis OpenStack Fuel9.0离线安装(MOS9.0本地源)

转载请注明:姬子的博客 » Mirantis OpenStack Fuel9.0离线安装(MOS9.0本地源) 千呼万唤始出来! 搭载openstack-M版的MOS9.0终于在7...
  • gzhouc
  • gzhouc
  • 2016年12月14日 20:17
  • 1166

Mirantis OpenStack Fuel8.0离线安装(MOS8.0本地源)

目前mos已经更新到了8.0,集成了openstack的L版。搭载迄今为止最成熟的M版的9.0也是指日可待了。 openstack愈趋成熟,我们愈是按耐不住内心的狂热。于是乎小伙伴们纷纷爆发了自己的...

通过RDO安装Openstack ICE House版本的问题及解决

openstack rdo 安装

RDO单机安装Openstack以及lvm卷存储与Vxlan网络配置

from:   http://blog.csdn.net/qinscx/article/details/42065267 2014-12-21 21:55 87人阅读 评论(0) 收藏 举报...

RedHat6.5 安装OpenStack all in one-RDO方式

OpenStack是一个开源的云平台,由各个组件协同工作,安装非常复杂。RedHat有个关于Openstack的项目RDO,可以简化安装过程,但是如果真按RDO所说的三步去安装,发现安装过程中还是有很...

RDO的openstack中安装savanna 0.3 --by Ethan_lynn

前提: 通过packstack --allinone部署好了openstack环境。 1. 安装savanna的包 # yum install -y openstack-savanna pytho...

RDO单机安装Openstack以及lvm卷存储与Vxlan网络配置

最近在搞cf,全称cloudfoundry,vmware推的一个pass平台,底层需要依赖于一个iass。当前比较火的Iass,无非就三个,vmware的vsphere+vcenter, openst...
  • qinscx
  • qinscx
  • 2014年12月21日 21:55
  • 1308
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何同步openstack RDO源至本地进行离线安装
举报原因:
原因补充:

(最多只允许输入30个字)