1、zabbix server安裝
阿新 • • 發佈:2021-11-01
1、配置yum源
vim /etc/yum.repos.d/zabbix.repo [zabbix] name=zabbix baseurl=https://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/ gpgcheck=0 enabled=1
2、
yum install zabbix-server-mysql zabbix-get # 若報以下錯誤 Error: Package: zabbix-server-mysql-3.0.32-1.el7.x86_64 (zabbix) Requires: libiksemel.so.3()(64bit) You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest # Requires: libiksemel.so.3()(64bit)依賴錯誤的解決 wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64//iksemel-1.4-6.sdl7.x86_64.rpm yum install iksemel-1.4-6.sdl7.x86_64.rpm
3、安裝mysql
# wget命令獲得壓縮包 wget https://mirrors.cloud.tencent.com/mysql/downloads/MySQL-5.7/mysql-5.7.34-el7-x86_64.tar.gz # 建立使用者 groupadd mysql useradd -g mysql mysql -d /home/mysqlpasswd mysql # 解壓mysql安裝包,位置/opt/app tar -xf mysql-5.7.34-el7-x86_64.tar.gz mv mysql-5.7.34-el7-x86_64 mysql chown -R mysql:mysql mysql/ # 建立資料及log存放目錄 mkdir -p /opt/app/MYINSTANCES/3306/{logs,data} # /opt/app/MYINSTANCES目錄下可以放多個例項目錄 # 例項子目錄以例項啟用埠做區別 # logs目錄存放例項相關日誌 # data目錄存放例項資料檔案 # 建立存放mysql.sock的目錄,這個其實也可以建立在/opt/app/MYINSTANCES/3306目錄下,只不過在部署好zabbix server後,頁面配置資料庫時mysql.sock不在此位置出現了報錯 mkdir /var/lib/mysql # 授權 chown -R mysql:mysql /opt/app/MYINSTANCES chown -R mysql:mysql/var/lib/mysql # 初始化例項 mysqld --initialize-insecure \ # 非安全初始化, 初始化後MySQL的root可無密碼登入, 之後需求手動修改 --datadir=/opt/app/MYINSTANCES/3306/data # 例項資料目錄 --basedir=/opt/app/mysql # mysql軟體目錄 --user=mysql # 執行例項賬戶 # 配置例項 vi /opt/app/MYINSTANCES/3306/my.cnf [client] port = 3306 #socket = /opt/app/MYINSTANCES/3306/tmp/mysql.sock socket=/var/lib/mysql/mysql.sock [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8' basedir=/opt/app/mysql datadir=/opt/app/MYINSTANCES/3306/data #socket=/opt/app/MYINSTANCES/3306/tmp/mysql.sock socket=/var/lib/mysql/mysql.sock log-error=/opt/app/MYINSTANCES/3306/logs/mysqld.log pid-file=/opt/app/MYINSTANCES/3306/tmp/mysqld.pid # 不區分大小寫 lower_case_table_names = 1 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION max_connections=5000 default-time_zone = '+8:00' # 啟動例項 mysqld_safe --defaults-file=/opt/app/MYINSTANCES/3306/my.cnf > /opt/app/MYINSTANCES/3306/logs/sys.log 2>&1 & # 修改root密碼 mysql -S /var/lib/mysql/mysql.sock -uroot mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'XXXX'; # 建立zabbix庫 create database zabbix;
4、初始化sql指令碼
安裝zabbix--server-mysql zabbix-get後輸命令rpm -qlzabbix--server-mysql,可以找到sql指令碼存放位置/usr/share/doc/zabbix-server-mysql-3.0.32,解壓獲取
執行命令
mysql-S /var/lib/mysql/mysql.sock -uroot -p -Dzabbix < /usr/share/doc/zabbix-server-mysql-3.0.32/create.sql
登入mysql檢視
mysql -uroot -p
use zabbix;
show tables;
5、配置zabbix server端並啟動
vim /etc/zabbix/zabbix_server.conf 此處列出我們可能會經常修改的引數,如下: ListenPort=10051 #服務端監聽的埠,保持預設即可 SourceIP= #通過SourceIP引數可以指定服務端的源IP,當server端有多個IP地址時,我們可以指定服務端使用固定的IP與agent端進行通訊,為了安全起見,agent端會基於IP進行一定的訪問控制,也就是說agent端只允許指定的IP以server端的身份採集被監控主機的資料,如果IP不對應,則不允許採集被監控主機的資料,所以,當server端有多個IP時,我們可以通過SourceIP引數,指定server端通過哪個IP採集被監控主機的資料。 LogType=file #通過LogType引數,可以指定通過哪種方式記錄日誌,此引數可以設定為三種值,system、file、console,system表示將日誌發往syslog,file表示使用指定的檔案作為日誌檔案,console表示將日誌發往控制檯,預設為file。 LogFile=/var/log/zabbix/zabbix_server.log #當LogType設定為file時,通過LogFile引數設定日誌檔案位置。 LogFileSize=0 #指明日誌檔案達到多大時自動滾動,單位為MB,如果設定LogFileSize為50,表示日誌大小達到50MB滾動一次,設定為0表示日誌檔案不會滾動,所有日誌儲存在一個檔案中。 DebugLevel=3 #通過DebugLevel引數可以定義日誌的詳細程度,即為日誌級別。 DBHost=localhost #通過DBHost引數設定zabbix資料庫所在的伺服器IP,由於此處zabbix與mysql安裝在同一伺服器上,所以此處設定為localhost DBName=zabbix #通過DBName指定zabbix資料庫對應的名稱 DBUser=root #通過DBUser指定zabbix資料庫使用者名稱 DBPassword=123456 #通過DBPassword指定zabbix資料庫使用者的密碼 DBPort=3306 #通過DBPort指定zabbix所在資料庫服務監聽的埠號 DBSocket=/var/lib/mysql/mysql.sock #如果資料庫服務與server端在同一臺伺服器上,可以通過DBSocket指定資料庫本地套接字檔案位置,但是需要注意,即使設定了mysql套接字檔案的位置,還是需要配合DBHost引數,否則在登入zabbix控制檯時,可能會出現警告,在zabbix server的log中,也可能會出現無法連線到資料庫的提示。 # 啟動 systemctl start zabbix-server.service
6、安裝zabbix web
yum install zabbix-web zabbix-web-mysql # zabbix web可以安裝在單獨的主機上,只要能連線到zabbix database所在的資料庫即可,但是此處為了方便,我們將zabbix web與 mysql以及 zabbix server安裝在同一臺伺服器上。因為zabbix web需要lamp環境,所以,此處我們將會依賴到的環境先安裝好。 yum install zabbix-web zabbix-web-mysql # zabbix還是比較貼心的,針對httpd,zabbix-web包中已經包含了對應zabbix文件路徑的配置檔案。針對zabbix web的文件路徑,此檔案中已經為我們準備好了預設配置,如果不使用httpd的虛擬主機,只要將時區稍加改動即可直接使用。 <VirtualHost *:80> DocumentRoot /usr/share/zabbix Alias /zabbix /usr/share/zabbix <Directory "/usr/share/zabbix"> Options FollowSymLinks AllowOverride None Require all granted <IfModule mod_php5.c> php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value max_input_vars 10000 php_value always_populate_raw_post_data -1 php_value date.timezone Asia/Shanghai </IfModule> </Directory> <Directory "/usr/share/zabbix/conf"> Require all denied </Directory> <Directory "/usr/share/zabbix/app"> Require all denied </Directory> <Directory "/usr/share/zabbix/include"> Require all denied </Directory> <Directory "/usr/share/zabbix/local"> Require all denied </Directory> </VirtualHost> # 啟動httpd systemctl start httpd
訪問http://ip:80/zabbix
點選Next step要配置下mysql,server。。。配置完成後沒問題則會到這個頁面
接下來配置mysql,配置server都沒問題後跳轉到下面的介面
點選Finsh轉到登入頁面,預設賬號Admin,密碼zabbix,成功後進入zabbix首頁
更改成中文顯示
【參考:https://www.zsythink.net/archives/500】