Zabbix 5.2由淺入深之通過本地yum倉庫安裝
很多企業(yè)在內(nèi)部分了互聯(lián)網(wǎng)區(qū)域和非互聯(lián)網(wǎng)區(qū)域,導(dǎo)致安裝Zabbix比較麻煩,所以該篇文章教你如何搭建zabbix的私有庫。
正文
環(huán)境
- 系統(tǒng)版本:CentOS 8.3
- 目標(biāo)庫Zabbix版本:5.2
- 私有庫設(shè)備需要能訪問外網(wǎng)
前提準(zhǔn)備
- dnf -y install httpd yum-utils createrepo
創(chuàng)建相yum庫的文件夾
- mkdir -p /var/www/html/zabbix/
安裝Zabbix 5.2官方源
- rpm -Uvh https://repo.zabbix.com/zabbix/5.2/rhel/8/x86_64/zabbix-release-5.2-1.el8.noarch.rpm
解析各組件依賴并傳遞到倉庫目錄
- yumdownloader zabbix-agent --resolve --destdir=/var/www/html/zabbix/8/
- yumdownloader zabbix-server-mysql --resolve --destdir=/var/www/html/zabbix/8/
- yumdownloader mariadb-server --resolve --destdir=/var/www/html/zabbix/8/
- yumdownloader zabbix-web-mysql --resolve --destdir=/var/www/html/zabbix/8/
- yumdownloader zabbix-apache-conf --resolve --destdir=/var/www/html/zabbix/8/
剩下都是如此
制作鏡像倉庫
- createrepo /var/www/html/zabbix/8/
啟動web服務(wù)
- systemctl start httpd && systemctl enable httpd
測試
1.備份原有yum源文件
- cd /etc/yum.repo.d/
- mkdir bak
- mv Cent* bak/
2.創(chuàng)建yum源文件
- vi kasar.repo
- [kasar]
- name=kasar
- baseurl=kasar
- enabled=1
- gpgcheck=0
3.安裝mariadb
- dnf -y install mariadb-server
在安裝mariadb-server的時候會遇到如下情況,缺少perl環(huán)境,此時需要把阿里的base源給同步過來
- mkdir -p /var/www/html/base
- wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
- reposync --rpeoid base -p /var/www/html/base
- creatrepo /var/www/html/base
- vi /etc/yum.repo.d/base.repo
- [base]
- name=base
- baseurl=http://192.168.31.14/base
- enabled=1
- gpgcheck=0
出現(xiàn)perl環(huán)境問題
弄完之后會遇到另外一個問題,此時需要解決元數(shù)據(jù)不可用問題
安裝modular metadata生成工具
- dnf install python3-devel python3 gcc git -y
- dnf install python3-createrepo_c -y
- dnf install python3-libdnf -y
- dnf install python3-libmodulemd -y
- git clone https://github.com/rpm-software-management/modulemd-tools.git
- cd modulemd-tools/repo2module/
- python3 setup.py install --user
創(chuàng)建repodata和modular metadata
- cd /var/www/html/zabbix/8/
- createrepo_c .
- /root/.local/bin/repo2module -s stable . modules.yaml
- modifyrepo_c --mdtype=modules modules.yaml repodata/
在測試機(jī)器yum clean all,再進(jìn)行安裝,此時已經(jīng)正常。
安裝Zabbix其他組件
- dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent -y
此時會遇到下面的問題,這種再次同步appstream的庫(約7G大小)
- mkdir /var/www/html/app
- reposync --repoid AppStream -p /var/www/html/app/
- createrepo /var/www/html/app/
創(chuàng)建新repo文件即可
安裝正常
寫在最后
其實這個過程還是比較復(fù)雜的,因為涉及到的源比較多,建議還是直接將zabbix、阿里官方的源全部同步下來最好,如果遇到元數(shù)據(jù)問題,就執(zhí)行modular metadata生成,其實不僅僅是Zabbix的安全,其他的程序也可以這么做,這么做的好處就是避免一些機(jī)器無法訪問外網(wǎng)的情況,如果都能正常訪問,且訪問非國外的,那么此內(nèi)容的意義就沒那么大了。