1. 程式人生 > 其它 >OpenStack離線安裝系列-0製作yum源

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

同步到本地

# 建立同步yum儲存資料夾
mkdir -p /var/www/html/yumrepository

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

同步完成後,會出現如圖所示資料夾

2. 本地製作

建立yum倉庫

# 進入每一個倉庫
cd /var/www/html/yumrepository

cd ./base
# 利用createrepo工具製作yum映象
yum -y install createrepo
createrepo .

createrepo執行結束後,會在相應路徑下出現repodata檔案

注意:在同步下來的每一個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

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

參考文件