自制yum源離線安裝ansible


適應場景

在實際生產環境中,服務器往往是不能訪問互聯網,如果簡單的下載ansible源碼安裝,會碰到缺少各種依賴包的問題,因此,推薦制作yum源,然后使用yum安裝ansible。

實驗環境

  • 模擬可以通互聯網的主機A
    • hostname:zabbix
    • IP:192.168.101.201
    • OS:CentOS 7.5
    • 下載包目錄:/data/ansible_packages
  • 模擬生產環境不通互聯網的主機B
    • hostname:kvm
    • IP:192.168.101.222
    • OS:CentOS 7.5
    • 存放包目錄:/data/ansible_packages

關鍵工具(命令)

  • yumdownloader:只下載指定軟件的所有依賴包和安裝包到指定目錄,不安裝
  • createrepo:用於創建repodata

主機zabbix的操作

在主機zabbix上安裝yumdownloader

yumdownloader命令在yum-utils軟件包中,首先安裝yum-utils

yum -y install yum-utils

獲取ansible依賴包和安裝包

  • 安裝epel源
    對於CentOS的官方yum源中沒有ansible安裝包,這就需要先安裝支持第三方的yum倉庫組件,這里選擇安裝epel源;執行下邊命令從互聯網安裝epel源:
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  • 獲取ansible依賴包和安裝包
yumdownloader --resolve --destdir /data/ansible_packages ansible

獲取createrepo的依賴包和安裝包

yumdownloader --resolve --destdir /data/ansible_packages createrepo

成功執行上邊幾條命令后,查看/data/ansible_packages下文件列表如下:

打包/data/ansible_packages目錄下的所有包並上傳到主機kvm

cd /data/ansible_packages/
tar -zcvf ansible.tar.gz ./*
scp ./ansible.tar.gz root@192.168.101.222:/data/ansible_packages/

注意:主機kvm上的/data/ansible_packages/要存在!

主機kvm上的操作

解壓壓縮包

cd /data/ansible_packages
tar -zxvf ansible.tar.gz

安裝createrepo

cd /data/ansible_packages
rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm 
rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm
rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm 

制作離線源

createrepo /data/ansible_packages

成功執行后能在/data/ansible_packages看到新增了一個repodata目錄:

新增yum文件/etc/yum.repos.d/ansible.repo

[ansible]
name=ansible
baseurl=file:///data/ansible_packages
gpgcheck=0
enabled=1

測試安裝ansible

yum install ansible

驗證

ansible --version


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM