搭建内网Yum源

时间:2022-09-23 14:00:43

搭建内网yum源

阅读(2,238)

一:因内网服务器 众多,当统一安装一些比较大的rpm的时候全部从外网下载就比较慢,而且还占用了一定的出口流量,因此在内网部署了一台yum服务器,将阿里云的epel源、zabbix、Base等定时镜像到一台单独的内网服务器,然后将其他内网服务器的yum地址全部指向此服务器以加快内网安装rpm包的速度,具体如下:

1.1:以镜像阿里云的zabbix 3.0 rhel7的yum源为例,先安装cobbler命令,然后添加repo源:

[root@aqdl repo_mirror]# cobbler  repo add  --name=zabbix --mirror=http://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/ --arch=x86_64  --breed=yum #添加repo文件
[root@aqdl repo_mirror]# cobbler reposync #执行同步
task started: 2017-02-14_044922_reposync
task started (id=Reposync, time=Tue Feb 14 04:49:22 2017)
hello, reposync
run, reposync, run!
creating: /var/www/cobbler/repo_mirror/zabbix/config.repo
creating: /var/www/cobbler/repo_mirror/zabbix/.origin/zabbix.repo #其实就是通过命令/usr/bin/reporsync 进行的同步
running: /usr/bin/reposync -l -n -d --config=/var/www/cobbler/repo_mirror/zabbix/.origin/zabbix.repo --repoid=zabbix --download_path=/var/www/cobbler/repo_mirror -a x86_64
received on stdout: Repository zabbix is listed more than once in the configuration
951 B 00:00
15 kB 00:02
229 kB 00:02
329 kB 00:02
712 kB 00:00
611 kB 00:00
597 kB 00:00
11 kB 00:00
240 kB 00:00
611 kB 00:01
1.7 MB 00:02
1.7 MB 00:03
4.8 kB 00:00
4.3 kB 00:00
4.3 kB 00:00
3.5 MB 00:04 received on stderr:
running: createrepo -c cache -s sha /var/www/cobbler/repo_mirror/zabbix
received on stdout: Spawning worker 0 with 7 pkgs
Spawning worker 1 with 7 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete received on stderr:
running: chown -R root:apache /var/www/cobbler/repo_mirror/zabbix
received on stdout:
received on stderr:
running: chmod -R 755 /var/www/cobbler/repo_mirror/zabbix
received on stdout:
received on stderr:
*** TASK COMPLETE ***

1.2:查看同步后的目录:

[root@aqdl ~]# ls /var/www/cobbler/repo_mirror/zabbix/
cache
config.repo
repodata
zabbix-agent-3.0.7-1.el7.x86_64.rpm
zabbix-get-3.0.7-1.el7.x86_64.rpm
zabbix-java-gateway-3.0.7-1.el7.x86_64.rpm
zabbix-proxy-mysql-3.0.7-1.el7.x86_64.rpm
zabbix-proxy-pgsql-3.0.7-1.el7.x86_64.rpm
zabbix-proxy-sqlite3-3.0.7-1.el7.x86_64.rpm
zabbix-release-3.0-1.el7.noarch.rpm
zabbix-sender-3.0.7-1.el7.x86_64.rpm
zabbix-server-mysql-3.0.7-1.el7.x86_64.rpm
zabbix-server-pgsql-3.0.7-1.el7.x86_64.rpm
zabbix-web-3.0.7-1.el7.noarch.rpm
zabbix-web-japanese-3.0.7-1.el7.noarch.rpm
zabbix-web-mysql-3.0.7-1.el7.noarch.rpm
zabbix-web-pgsql-3.0.7-1.el7.noarch.rpm

1.3:使用一台内网服务器配置yum源进行测试:

[root@bogon ~]# vim /etc/yum.repos.d/zabbix.repo
[local-zabbix]
name=local zabbix
baseurl=http://192.168.10.100/cobbler/repo_mirror/zabbix/ #cobbler服务器的地址,zabbix目录为镜像的阿里的zabbix源
enabled=1
gpgcheck=0

1.4:验证安装zabbix 客户端:

[root@bogon ~]# yum install zabbix-agent
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package zabbix-agent.x86_64 0:3.0.7-1.el7 will be installed
--> Finished Dependency Resolution Dependencies Resolved ====================================================================================
 Package              Arch           Version             Repository            Size
====================================================================================
Installing:
 zabbix-agent         x86_64         3.0.7-1.el7         local-zabbix         329 k Transaction Summary
====================================================================================
Install  1 Package Total download size: 329 k
Installed size: 1.1 M
Is this ok [y/d/N]: y
Downloading packages:
zabbix-agent-3.0.7-1.el7.x86_64.rpm                                                                                     | 329 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : zabbix-agent-3.0.7-1.el7.x86_64                                                                                             1/1
  Verifying  : zabbix-agent-3.0.7-1.el7.x86_64                                                                                             1/1

1.5:设置定时任务计划,每天晚上2点定时更新:

0 2  * * * cobbler reposync &> /dev/null

1.6:epel源及base源等配置方法同上,如下:

[root@aqdl ~]# cobbler repo add  --name=epel --mirror=https://mirrors.aliyun.com/epel/7/x86_64/   --arch=x86_64  --breed=yum
[root@aqdl ~]# cobbler repo add  --name=saltstack --mirror=http://repo.saltstack.com/yum/redhat/latest/x86_64/latest/  --arch=x86_64  --breed=yum
[root@aqdl ~]# cobbler  repo add  --name=openstack-mitaka  --mirror=https://mirrors.aliyun.com/centos/7/cloud/x86_64/openstack-mitaka/  --arch=x86_64  --breed=yum
[root@aqdl ~]# cobbler  repo add  --name=updates  --mirror=https://mirrors.aliyun.com/centos/7/updates/x86_64/   --arch=x86_64  --breed=yum
[root@aqdl ~]# cobbler  repo add  --name=extras   --mirror=https://mirrors.aliyun.com/centos/7/extras/x86_64/  --arch=x86_64  --breed=yum
[root@aqdl ~]# cobbler  repo add  --name=os   --mirror=https://mirrors.aliyun.com/centos/7/os/x86_64/  --arch=x86_64  --breed=yum
[root@aqdl ~]# cobbler reposync #在夜深人静的时候同步效果显著!

1.7:验证最同步后的仓库大小并通过浏览器访问方库:

1.7.1:最终同步后的大小:

[root@aqdl ~]# cd /var/www/cobbler/repo_mirror/
[root@aqdl repo_mirror]# du -sh ./* #以下只包含centos 7的yum仓库
12G ./epel
527M ./extras
583M ./openstack-mitaka
7.4G ./os
27M ./saltstack
1.3G ./updates
11M ./zabbix

1.7.2:通过浏览器验证效果:

搭建内网Yum源

1.8:在内网服务器使用内网的yum源安装openstack进行测试能否正常安装:

1.8.1:内网yum源配置:

mv /etc/yum.repos.d/*.repo /tmp/
cat  <<  EOF  >  /etc/yum.repos.d/zabbix-local.repo
[zabbix-local]
name=zabbix-local
baseurl=http://192.168.10.100/cobbler/repo_mirror/zabbix/
enabled=1
gpgcheck=0
EOF cat  <<  EOF  >  /etc/yum.repos.d/saltstack-local.repo
[saltstack-local]
name=saltstack-local
baseurl=http://192.168.10.100/cobbler/repo_mirror/saltstack/
enabled=1
gpgcheck=0
EOF cat  <<  EOF  >  /etc/yum.repos.d/epel-local.repo
[epel-local]
name=epel-local
baseurl=http://192.168.10.100/cobbler/repo_mirror/epel/
enabled=1
gpgcheck=0
EOF cat  <<  EOF  >  /etc/yum.repos.d/openstack-mitaka-local.repo
[openstack-mitaka-local]
name=openstack-mitaka-local
baseurl=http://192.168.10.100/cobbler/repo_mirror/openstack-mitaka/
enabled=1
gpgcheck=0
EOF cat  <<  EOF  >  /etc/yum.repos.d/OS-local.repo
[OS-local]
name=BaseOS-local
baseurl=http://192.168.10.100/cobbler/repo_mirror/os/
enabled=1
gpgcheck=0
EOF cat  <<  EOF  >  /etc/yum.repos.d/extras-local.repo
[extras-local]
name=extras-local
baseurl=http://192.168.10.100/cobbler/repo_mirror/extras/
enabled=1
gpgcheck=0
EOF cat  <<  EOF  >  /etc/yum.repos.d/updates-local.repo
[updates-local]
name=updates-local
baseurl=http://192.168.10.100/cobbler/repo_mirror/updates/
enabled=1
gpgcheck=0
EOF

1.8.2:测试yum安装rpm包:

[root@aqdl kickstarts]# yum install bind
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package bind.x86_64 32:9.9.4-38.el7_3.1 will be installed
--> Processing Dependency: bind-libs = 32:9.9.4-38.el7_3.1 for package: 32:bind-9.9.4-38.el7_3.1.x86_64
--> Processing Dependency: liblwres.so.90()(64bit) for package: 32:bind-9.9.4-38.el7_3.1.x86_64
--> Processing Dependency: libisccfg.so.90()(64bit) for package: 32:bind-9.9.4-38.el7_3.1.x86_64
--> Processing Dependency: libisccc.so.90()(64bit) for package: 32:bind-9.9.4-38.el7_3.1.x86_64
--> Processing Dependency: libisc.so.95()(64bit) for package: 32:bind-9.9.4-38.el7_3.1.x86_64
--> Processing Dependency: libdns.so.100()(64bit) for package: 32:bind-9.9.4-38.el7_3.1.x86_64
--> Processing Dependency: libbind9.so.90()(64bit) for package: 32:bind-9.9.4-38.el7_3.1.x86_64
--> Processing Dependency: libGeoIP.so.1()(64bit) for package: 32:bind-9.9.4-38.el7_3.1.x86_64
--> Running transaction check
---> Package GeoIP.x86_64 0:1.5.0-11.el7 will be installed
---> Package bind-libs.x86_64 32:9.9.4-38.el7_3.1 will be installed
--> Processing Dependency: bind-license = 32:9.9.4-38.el7_3.1 for package: 32:bind-libs-9.9.4-38.el7_3.1.x86_64
--> Running transaction check
---> Package bind-license.noarch 32:9.9.4-29.el7 will be updated
--> Processing Dependency: bind-license = 32:9.9.4-29.el7 for package: 32:bind-libs-lite-9.9.4-29.el7.x86_64
---> Package bind-license.noarch 32:9.9.4-38.el7_3.1 will be an update
--> Running transaction check
---> Package bind-libs-lite.x86_64 32:9.9.4-29.el7 will be updated
---> Package bind-libs-lite.x86_64 32:9.9.4-38.el7_3.1 will be an update
--> Finished Dependency Resolution Dependencies Resolved ===============================================================================================================================================
 Package                            Arch                       Version                                 Repository                         Size
===============================================================================================================================================
Installing:
 bind                               x86_64                     32:9.9.4-38.el7_3.1                     updates-local                     1.8 M
Installing for dependencies:
 GeoIP                              x86_64                     1.5.0-11.el7                            OS-local                          1.1 M
 bind-libs                          x86_64                     32:9.9.4-38.el7_3.1                     updates-local                     1.0 M
Updating for dependencies:
 bind-libs-lite                     x86_64                     32:9.9.4-38.el7_3.1                     updates-local                     729 k
 bind-license                       noarch                     32:9.9.4-38.el7_3.1                     updates-local                      83 k Transaction Summary
===============================================================================================================================================
Install  1 Package  (+2 Dependent packages)
Upgrade             ( 2 Dependent packages) Total download size: 4.6 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for updates-local
(1/5): GeoIP-1.5.0-11.el7.x86_64.rpm                                                                                    | 1.1 MB  00:00:00     
(2/5): bind-9.9.4-38.el7_3.1.x86_64.rpm                                                                                 | 1.8 MB  00:00:00     
(3/5): bind-libs-lite-9.9.4-38.el7_3.1.x86_64.rpm                                                                       | 729 kB  00:00:00     
(4/5): bind-libs-9.9.4-38.el7_3.1.x86_64.rpm                                                                            | 1.0 MB  00:00:00     
(5/5): bind-license-9.9.4-38.el7_3.1.noarch.rpm                                                                         |  83 kB  00:00:00     
-----------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                           22 MB/s | 4.6 MB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : GeoIP-1.5.0-11.el7.x86_64                                                                                                   1/7
  Updating   : 32:bind-license-9.9.4-38.el7_3.1.noarch                                                                                     2/7
  Installing : 32:bind-libs-9.9.4-38.el7_3.1.x86_64                                                                                        3/7
  Installing : 32:bind-9.9.4-38.el7_3.1.x86_64                                                                                             4/7
  Updating   : 32:bind-libs-lite-9.9.4-38.el7_3.1.x86_64                                                                                   5/7
  Cleanup    : 32:bind-libs-lite-9.9.4-29.el7.x86_64                                                                                       6/7
  Cleanup    : 32:bind-license-9.9.4-29.el7.noarch                                                                                         7/7
  Verifying  : 32:bind-libs-9.9.4-38.el7_3.1.x86_64                                                                                        1/7
  Verifying  : GeoIP-1.5.0-11.el7.x86_64                                                                                                   2/7
  Verifying  : 32:bind-license-9.9.4-38.el7_3.1.noarch                                                                                     3/7
  Verifying  : 32:bind-9.9.4-38.el7_3.1.x86_64                                                                                             4/7
  Verifying  : 32:bind-libs-lite-9.9.4-38.el7_3.1.x86_64                                                                                   5/7
  Verifying  : 32:bind-license-9.9.4-29.el7.noarch                                                                                         6/7
  Verifying  : 32:bind-libs-lite-9.9.4-29.el7.x86_64                                                                                       7/7 Installed:
  bind.x86_64 32:9.9.4-38.el7_3.1                                                                                                               Dependency Installed:
  GeoIP.x86_64 0:1.5.0-11.el7                                       bind-libs.x86_64 32:9.9.4-38.el7_3.1                                       Dependency Updated:
  bind-libs-lite.x86_64 32:9.9.4-38.el7_3.1                               bind-license.noarch 32:9.9.4-38.el7_3.1                               Complete!