AnsibleTower自建研究8

模擬離線環境安裝,包含離線RPM與離線Collection安裝(沒完成)

ZONGRU Li
9 min readJul 4, 2023

1.建立機台並先執行update

2.設置防火牆

3.做ssh sync設置(以Controller機當建置主控機)

4.解壓安裝包並編輯安裝檔”inventory

5.執行建置

先準備(LINK):

看到過期:

可以到RH首頁上的:

上面是顯示舊的失效的60天,這邊就先按提交

然後收到信:

信件內容看起來是要等待訂閱團隊審核並通知我的帳號組織

1.建立機台並先執行update:

Controller : 挑選t3.xlarge(4c16g)

Controller-DB : 挑選t3.xlarge(4c16g)

hub(含hub-DB) : 挑選t2.large(2c8g)

放好iso檔:

Hub防火

進:

出:

DB防火

進:

出:

Controller防火

進:

出(簡單點全開給三台):

搬好iso到/tmp目錄:

三台都是

然後三台Mount DVD:

#先切到root:
sudo su

#Mount Linux 8.x Binary DVD ISO
mkdir /mnt/disc
mount -r -o loop /tmp/rhel-8.7-x86_64-dvd.iso /mnt/disc/

#Copy example repo file from ISO file
cp /mnt/disc/media.repo /etc/yum.repos.d/rhel8disc.repo
chmod 644 /etc/yum.repos.d/rhel8disc.repo

#編輯repo file來設定本地repository:
vi /etc/yum.repos.d/rhel8disc.repo

#內容如下:
[RHEL8-Server-DVD-Appstream]
name=Red Hat Enterprise Linux 8.7.0 (DVD) Appstream
mediaid=None
metadata_expire=-1
gpgcheck=1
cost=500
baseurl=file:///mnt/disc/AppStream
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[RHEL8-Server-DVD-BaseOS]
name=Red Hat Enterprise Linux 8.7.0 (DVD) BaseOS
mediaid=None
metadata_expire=-1
gpgcheck=1
cost=500
baseurl=file:///mnt/disc/BaseOS
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release


#確認:
dnf repolist
vi /etc/yum.repos.d/rhel8disc.repo
#只留下兩個DVD掛上去的,其餘關閉:
yum-config-manager --disable ansible-2-for-rhel-8-rhui-rpms
yum-config-manager --disable rhel-8-appstream-rhui-rpms
yum-config-manager --disable rhel-8-baseos-rhui-rpms
yum-config-manager --disable rhui-client-config-server-8

#Check
dnf repolist
三台都是

在這環境下執行update

#三台嘗試執行update:
sudo yum update -y

最後三台都:

在Controller機台上建立連線金鑰

#Controller上建立(過程三次enter):
sudo ssh-keygen -t rsa -b 2048
sudo chmod 400 ~/.ssh/id_rsa
(此時~/.ssh/目錄出現id_rsa與id_rsa.pub)

#轉移公鑰id_rsa.pub到遠端Server的/tmp下,然後把內容整併到被連帳號(像root)的authorized_keys
sudo cat /tmp/id_rsa.pub >> /root/.ssh/authorized_keys

Controller自己:

其他台:

測試Controller連線各台:

Controller連自己:

其他同理也都可以連,並把第一次的yes打完

#在root身分下:
tar zxf ansible-automation-platform-setup-bundle-2.2.1-1.1.tar.gz

編輯inventory檔案,可參考之前三台

跑安裝./setup.sh

過程訂閱註冊忽略:

也有其他的錯可以忽略:

最後跑了快一小時...

準備離線加裝Ansible Collections

參考(LINK)

2023/07/07補充說明:

2023/07/07補充說明,只有Hub才有裝ansible-galaxy工具,後來我發現還有執行安裝bundle包的機台也是,Controller預設不會裝

我下面Controller會有ansible-galaxy工具是因為同時也是建置機

原本:

改成:

或是Web改:

然後用指令安裝來自這邊下載的模組(LINK)

#用ansible-galaxy指令安裝(這邊下載的LINK)
ansible-galaxy collection install /opt/collections/community-general-6.3.0.tar.gz -p /opt/collections/

剛剛會報錯的指令

#查看有哪些collection指令,現在跑就不會錯了:
ansible-galaxy collection list

上面這段可以參考(LINK):

hub機:

--

--

ZONGRU Li
ZONGRU Li

Written by ZONGRU Li

2022/11/17 開源部分個人筆記給LINE "Java程式語言討論區"社群,希望能對社群的技術學習做一點點貢獻.(掩面....記得退訂閱!

No responses yet