Centos7.2學習記錄(3)——搭建本地yum倉庫

入職以來,由於公司雲主機運行在內網環境下,在搭建kubernetes和openshift集羣時都需要進行離線安裝,這裏粗略記錄一下本地yum倉庫的搭建過程。

httpd配置

安裝httpd

在目標服務器上安裝httpd。

# yum install -y httpd

修改httpd端口號

我的80端口已被佔用,故這裏修改httpd的端口號。
修改/etc/httpd/conf/httpd.conf。
將Listen 80改爲Listen 8180。

創建發佈yum源的httpd配置文件

# vim /etc/httpd/conf.d/yum.conf

內容如下:

Alias /repo "/var/www/html/yum"

防火牆設置

這裏有兩種操作。

  • 禁用防火牆
# systemctl disable firewalld
# systemctl stop firewalld
  • 修改iptables並增加selinux中http的端口

由於我的yum倉庫部署在openshift集羣的master節點上,故這裏採用修改iptables並增加selinux中http的端口的方式。
修改/etc/sysconfig/iptables。添加如下規則:

-A OS_FIREWALL_ALLOW -p tcp -m state --state NEW -m tcp --dport 8180 -j ACCEPT

重啓iptables服務。

# systemctl restart iptables

增加selinux中http的端口。

# semanage port -a -t http_port_t -p tcp 8180

重啓Httpd,使修改的配置生效

# systemctl enable httpd
# systemctl restart httpd

配置yum源目錄

RPM包的準備

可通過yum install --downloadonly --downloaddir=temp packageName的指令下載RPM包,也可以通過reposync同步目標源到本地,這裏可以自行選擇適合的方式。

上傳所有RPM包到目標服務器/var/www/html/yum目錄下

我採用ftp的方式將所有RPM包傳到了目標服務器上,目錄可以自定義(修改目錄的話,可能需要對httpd的配置文件做修改,不然可能會出現403 - Forbidden等錯誤,我沒深入研究)。這裏採用的目錄是/var/www/html/yum。
上傳成功後在目標服務器上執行:

# createrepo /var/www/html/yum

這裏寫圖片描述

yum服務器節點創建 /etc/yum.repos.d/local.repo文件

內容如下:

[local]
name = local
baseurl = file:///var/www/html/yum
gpgcheck = 0
enabled = 1

驗證

yum服務器節點驗證

# yum clean all 
# yum repolist

這裏寫圖片描述
可以看出已經加載了上文建立的名爲local的yum源。

其他節點驗證

創建/etc/yum.repos.d/local.repo文件,指向上文創建的yum源。
內容如下:

[local]
name = local
baseurl = http://10.126.3.207:8180/repo/
gpgcheck = 0
enabled = 1
# yum clean all 
# yum repolist

這裏寫圖片描述

可以看出已經加載了上文建立的名爲local的yum源。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章