Fork me on Gitee

OpenStack离线安装系列-0制作yum源

0.环境说明

系统名称 版本 ip
Cent os7 CentOS-7-x86_64-Minimal-2009 192.168.2.166

由于要存储yum依赖,硬盘容量建议50G+

1. 软件安装

安装之前建议将yum源修改为国内源地址。

国内源地址:

1.1 yum源替换

  • 如果镜像是从国内源地址提供的镜像,可忽略1.1步骤。

备份源

# 备份自带源
cd /etc/yum.repos.d/
# 备份
mkdir repo
mv *.repo repo

下载源文件

cd /etc/yum.repos.d/
# 下载cent os 7 源地址镜像
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

清除缓存

# 清除系统yum缓存
yum clean all
# 生成yum缓存
yum makecache

下载工具

# 同步源工具下载
yum -y install createrepo yum-utils net-tools reposync
# 此处选择安装openstack-train版
yum install centos-release-openstack-train
# 进入repos.d目录查看
ls -1 /etc/yum.repos.d/
yum repolist

image-20220322160547324

同步到本地

# 创建同步yum存储文件夹
mkdir -p /var/www/html/yumrepository

# 同步
reposync -p /var/www/html/yumrepository

同步完成后,会出现如图所示文件夹

image-20220322160745709

2. 本地制作

创建yum仓库

# 进入每一个仓库
cd /var/www/html/yumrepository

cd ./base
# 利用createrepo工具制作yum镜像
yum -y install createrepo
createrepo .

createrepo执行结束后,会在相应路径下出现repodata文件

image-20220322161944797

注意:在同步下来的每一个yum仓库目录都需要执行上述步骤

cd /var/www/html/yumrepository/base/
createrepo
# 后续如果更新了rpm包,需要进入相应的目录,利用createrepo update命令进行同步
reposync -p /var/www/html/yumrepository/
createrepo  --update .

3. 配置httpd服务

# 下载http服务
yum -y install httpd
# 启动服务
systemctl start httpd
# 开机自启动
systemctl enable httpd
# 查看状态
systemctl status httpd

httpd相关配置路径说明

服务目录 /etc/httpd
主配置目录 /etc/httpd/conf/httpd.conf
网站数据目录 /var/www/html (此处和repo存储的目录对应)
访问日志目录 /var/log/httpd/access_log
错误日志 /var/log/httpd/error_log

修改配置文件,关闭防火墙

vi /etc/selinux/config

SELINUX=disabled

关闭防火墙、selinux

systemctl stop firewalld
systemctl dsable firewalld
setenforce 0

测试下httpd暴露的yum源访问连通性

image-20220323092215737

4. 验证

在另一个机器上,新建一个repo文件

# 移除原系统自带的repo。
mkdir ori_repo-config
# 移动之前的repo到备份文件架
mv /etc/yum.repos.d/* ./ori_repo-config/
# 创建新的repo文件
vi /etc/yum.repos.d/CentOS-PrivateLocal.repo
[base]
name=CentOS-$releasever - Base
baseurl=http://192.168.2.166/yumrepository/base/
gpgcheck=0
enabled=1

[updates]
name=CentOS-$releasever - Updates
baseurl=http://192.168.2.166/yumrepository/updates/
gpgcheck=0
enabled=1

[extras]
name=CentOS-$releasever - Extras
baseurl=http://192.168.2.166/yumrepository/extras/
gpgcheck=0
enabled=1

[centos-openstack-train]
name=CentOS-7 - OpenStack train
baseurl=http://192.168.2.166/yumrepository/centos-openstack-train/
gpgcheck=0
enabled=1

[centos-qemu-ev]
name=CentOS-$releasever - QEMU EV
baseurl=http://192.168.2.166/yumrepository/centos-qemu-ev/
gpgcheck=0
enabled=1

[centos-ceph-nautilus]
name=CentOS-7 - Ceph Nautilus
baseurl=http://192.168.2.166/yumrepository/centos-ceph-nautilus/
gpgcheck=0
enabled=1

[centos-nfs-ganesha28]
name=CentOS-7 - NFS Ganesha 2.8
baseurl=http://192.168.2.166/yumrepository/centos-nfs-ganesha28/
gpgcheck=0
enabled=1
  1. ip地址为yumrepository所在主机地址
  2. 为避免冲突,[centos-openstack-stein]和[centos-openstack-train]只保留一个。

配置完成后,清除原有的cache,并重新生成cache。

yum clean all
yum makecache

参考文档

posted @ 2022-03-22 16:53  shine-rainbow  阅读(919)  评论(0编辑  收藏  举报