目錄
- 一、zabbix是什么??
- 二、zabbix的主要特點
- 三、zabbix的主要功能
- 四、基于LNMP環境搭建Zabbix監控
- 1、安裝nginx
- 2、安裝mysql
- 3、安裝PHP
- 4、修改php-fpm組態檔,把apache改為nginx
- 5、修改nginx組態檔支持PHP并修改php組態檔
- 6、開啟服務
- 7、測驗網頁
- 8、測驗連接資料庫
- 9、建立資料庫及用戶并且授權
- 10、測驗連接zabbix資料庫
- 11、zabbix server部署
- 12、zabbix-agent端
- 13、監控驗證
一、zabbix是什么??
zabbix是一個基于web界面提供分布式系統鍵是以及網路監視功能的企業級開源解決方案,
zabbix是由2部分構成,分別是zabbix server與zabbix agent
zabbix server可以通過SNMP,zabbix agent,ping,埠監視等方法提供對遠程服務器/網路狀態的監視,資料收集等功能,它可以運行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平臺上,
二、zabbix的主要特點
- 安裝與配置簡單,學習成本低
- 支持多語言(包括中文)
- 免費開源
- 自動發現服務器與網路設備
- 分布式監視以及WEB集中管理功能
- 可以無agent監視
- 用戶安全認證和柔軟的授權方式
- 通過WEB界面設定或查看監視結果
- email等通知功能
三、zabbix的主要功能
- CPU負荷
- 記憶體使用
- 磁盤使用
- 網路狀況
- 埠監視
- 日志監視
四、基于LNMP環境搭建Zabbix監控
老規矩先關閉防火墻及核心防護
systemctl stop firewalld
setennfore 0
1、安裝nginx
1)創建nginx的yum倉庫
vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

2)安裝并啟動
yum list
yum -y install nginx
systemctl start nginx
systemctl enable nginx
netstat -natp | grep 80

2、安裝mysql
1)安裝mariadb
yum -y install mariadb-server mariadb
systemctl start mariadb.service
systemctl enable mariadb.service
netstat -natp | grep 3306

2)初始化
mysql_secure_installation
Enter current password for root (enter for none): #回車
Set root password? [Y/n] #y
New password: #123123
Re-enter new password: #123123
Remove anonymous users? #n
Disallow root login remotely? #n
Remove test database and access to it? #n
Reload privilege tables now? #y
3)登錄驗證
mysql -u root -p123123
3、安裝PHP
yum -y install epel-release #安裝PHP
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm #yum源的建立
yum install -y php72w php72w-devel php72w-fpm php72w-gd php72w-mbstring php72w-mysql #安裝環境依賴包
php -v #查看版本

4、修改php-fpm組態檔,把apache改為nginx
vim /etc/php-fpm.d/www.conf
user = nginx #第8行將apache改為nginx
group = nginx #第10行將apache改為nginx

5、修改nginx組態檔支持PHP并修改php組態檔
vim /etc/nginx/conf.d/default.conf
index index.php index.html index.htm; #第10行添加index.php
配置php模塊,去掉注釋
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

vim /etc/php.ini
expose_php = Off #359行:隱藏php版本
short_open_tag = On #202行:支持php短標簽
#為PHP兼容zabbix進行修改,優化配置要求
max_execution_time = 300 #368行:執行時間
max_input_time = 300 #378行:接收資料等待時向
memory_limit = 128M #389行:每個腳本占用記憶體
post_max_size = 16M #656行:POST資料大小
upload_max_filesize = 2M #799行:下載檔案大小
always_populate_raw_post_data = -1 #800行:可以用$HTTP_RAW_POST DATA
date.timezone = Asia/Shanghai #877行:時區
6、開啟服務
systemctl start php-fpm
systemctl enable php-fpm
netstat -natp | grep 9000
systemctl restart nginx

7、測驗網頁
vim /usr/share/nginx/html/test.php
<?php
phpinfo();
?>

PHP首頁

8、測驗連接資料庫
vim /usr/share/nginx/html/test.php
<?php
$link=mysqli_connect('127.0.0.1','root' ,'123123' );
if ($link) echo "連接成功 !";
else echo "連接失敗 !";
?>


9、建立資料庫及用戶并且授權
mysql -u root -p123123
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
GRANT all privileges ON *.* TO 'zabbix'@'%' IDENTIFIED BY 'admin123';
flush privileges;

10、測驗連接zabbix資料庫
vim /usr/share/nginx/html/test.php
<?php
$link=mysqli_connect('127.0.0.1','zabbix' ,'admin123' );
if ($link) echo "zabbix資料庫連接成功 !";
else echo "zabbix資料庫連接失敗 !";
?>


這里顯示連接失敗了,原因是因為被空用戶占用資源了
解決方法:洗掉空用戶就可以解決問題了
mysql -u root -p123123
select user,host from mysql.user;

drop user ''@hzh;
drop user ''@localhost;


11、zabbix server部署
1)下載zabbix源并安裝
rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
2)匯入資料庫腳本并驗證
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -padmin123 zabbix
mysql -u zabbix -padmin123
use zabbix;
show tables;

3)修改zabbix組態檔
vim /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=admin123 #注釋去掉,zabbix的密碼
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
4)授權
cp -r /usr/share/zabbix/ /usr/share/nginx/html/
chown -R zabbix:zabbix /etc/zabbix/
chown -R zabbix:zabbix /usr/share/nginx/
chown -R zabbix:zabbix /usr/lib/zabbix/
chmod -R 755 /etc/zabbix/web/
chmod -R 777 /var/lib/php/session/

5)開啟服務
systemctl start zabbix-server
systemctl enable zabbix-server
systemctl start zabbix-agent.service
systemctl enable zabbix-agent.service
netstat -ntap | grep 10051
systemctl restart php-fpm.service
systemctl restart nginx

6)web頁面安裝






檔案下好了 就是這樣的頁面,,默認用戶名:Admin,密碼:zabbix




12、zabbix-agent端
老規矩,關閉防火墻和核心防護
systemctl stop firewalld
setenforce 0
1、部署zabbix-agent
rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
yum install -y zabbix-agent
2、修改組態檔
vim /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.241.3 # 指向監控服務器
ServerActive=192.168.241.3 # 指問監控服務器
Hostname=test1 #指定名稱
Include=/etc/zabbix/zabbix_agentd.d/*.conf
3、開啟服務并檢查埠
systemctl start zabbix-agent
systemctl enable zabbix-agent
netstat -natp | grep zabbix #查看10050埠
13、監控驗證
1、添加被監控的主機
在zabbix圖形頁面——配置——主機——創建主機(定義主機名稱、添加群組、填寫主機IP地址)——模板——選定要監控的模板(httpd sshd服務)——選擇——添加(添加連接模板)——添加(添加主機)



轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/271495.html
標籤:其他
上一篇:lvs負載均衡之nfs檔案地共享
