Zabbix 5.2由淺入深之通過(guò)本地yum倉(cāng)庫(kù)安裝
很多企業(yè)在內(nèi)部分了互聯(lián)網(wǎng)區(qū)域和非互聯(lián)網(wǎng)區(qū)域,導(dǎo)致安裝Zabbix比較麻煩,所以該篇文章教你如何搭建zabbix的私有庫(kù)。
正文
環(huán)境
- 系統(tǒng)版本:CentOS 8.3
- 目標(biāo)庫(kù)Zabbix版本:5.2
- 私有庫(kù)設(shè)備需要能訪問(wèn)外網(wǎng)
前提準(zhǔn)備
- dnf -y install httpd yum-utils createrepo
創(chuàng)建相yum庫(kù)的文件夾
- 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
解析各組件依賴并傳遞到倉(cāng)庫(kù)目錄
- 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/
剩下都是如此
制作鏡像倉(cāng)庫(kù)
- createrepo /var/www/html/zabbix/8/
啟動(dòng)web服務(wù)
- systemctl start httpd && systemctl enable httpd
測(cè)試
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的時(shí)候會(huì)遇到如下情況,缺少perl環(huán)境,此時(shí)需要把阿里的base源給同步過(guò)來(lái)
- 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)境問(wèn)題
弄完之后會(huì)遇到另外一個(gè)問(wèn)題,此時(shí)需要解決元數(shù)據(jù)不可用問(wèn)題
安裝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/
在測(cè)試機(jī)器yum clean all,再進(jìn)行安裝,此時(shí)已經(jīng)正常。
安裝Zabbix其他組件
- dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent -y
此時(shí)會(huì)遇到下面的問(wèn)題,這種再次同步appstream的庫(kù)(約7G大小)
- mkdir /var/www/html/app
- reposync --repoid AppStream -p /var/www/html/app/
- createrepo /var/www/html/app/
創(chuàng)建新repo文件即可
安裝正常
寫(xiě)在最后
其實(shí)這個(gè)過(guò)程還是比較復(fù)雜的,因?yàn)樯婕暗降脑幢容^多,建議還是直接將zabbix、阿里官方的源全部同步下來(lái)最好,如果遇到元數(shù)據(jù)問(wèn)題,就執(zhí)行modular metadata生成,其實(shí)不僅僅是Zabbix的安全,其他的程序也可以這么做,這么做的好處就是避免一些機(jī)器無(wú)法訪問(wèn)外網(wǎng)的情況,如果都能正常訪問(wèn),且訪問(wèn)非國(guó)外的,那么此內(nèi)容的意義就沒(méi)那么大了。