自動化監控系統
cacti : 基於snmp(簡單的網絡管理協議)協議的監控軟件,強大的繪圖軟件 缺點: 自帶的監控模板比較少,不能默認 自帶監控報警功能(只能本身去官網下載模板)
Nagios: 插件極多,本身寫監控腳本潛入到ngagios很是方便
基於agent監控(在被監控的機器上必須有agent服務),默認本身支持報警機制,缺點不能繪圖
zabbix: 是以上兩種的綜合體 基於多種監控機制,支持分佈式php
zabbix軟件介紹:html
1. zabbix是一個高度集成的監控解決方案前端
2. 能夠時間企業級的開源分佈式監控mysql
3. zabbix經過C/S模式採集監控數據 C/S client/server linux
4. zabbix經過B/S模式實現web管理 B/S 瀏覽器/服務器ios
監控服務器 Snginx
-- 監控服務器能夠用過snmp或agent採集數據web
-- 數據能夠寫入MYSQL ORACLE等數據庫中sql
-- 服務器使用LNMP時間web前端的管理數據庫
被監控主機 C
-- 被監控主機須要安裝Agent
-- 常見的網絡設備通常支持snmp
部署LNMP環境
安裝前準備:
監控服務器:
-- 設置主機名(zabbix )
-- 設置IP地址(192.168.1.164)
-- 關閉防火牆 selinux
監控客戶端:
-- 主機web1(192.168.1.162)
-- 關閉防火牆 selinux
[root@zabbix ~]# yum -y install gcc pcre-devel openssl-devel zlib-devel #編譯安裝神器
[root@zabbix ~]# tar -xf nginx-1.12.2.tar.gz #解包
[root@zabbix ~]# cd nginx-1.12.2/ #進入目錄
[root@zabbix ~]# ./configure --with-http_ssl_module
[root@zabbix ~]# make && make install #編譯安裝nginx
[root@zabbix ~]# yum -y install php php-mysql mariadb mariadb-devel mariadb-server #安裝mariadb
[root@zabbix ~]# yum -y install php-fpm-5.4.16-42.el7.x86_64.rpm
修改nginx配置文件使之能夠支持php服務
[root@zabbix tts]# vim /usr/local/nginx/conf/nginx.conf
默認是在65-71行左右 模式人註釋掉的 打開註釋並改爲如下模樣
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf; #打開註釋只要改這一行就好了
}
啓動服務
[root@zabbix tts]# systemctl restart php-fpm.service #啓動php-fpm服務
[root@zabbix tts]# ss -natulp| grep 9000 #php服務默認端口是9000 使用ss查看
[root@zabbix tts]# /usr/local/nginx/sbin/nginx #啓動nginx服務
[root@zabbix tts]# ss -natulp|grep 80 #ngnx默認端口80 能查看到就是成功了
[root@zabbix tts]# systemctl restart mariadb.service #啓動數據庫服務
[root@zabbix tts]# ss -natulp | grep 3306 #查看數據庫端口 3306
測試配置
[root@zabbix tts]# vim /usr/local/nginx/html/ce.php
<?php
$i=33;
echo $i;
?>
:x
[root@zabbix tts]# curl http://127.0.0.1/test.php
33 #看到33纔算成功
部署zabbix服務
(1) 修改nginx配置文件設置服務運行,知足服務的運行需求
vim /usr/local/nginx/conf/nginx.conf
http { #寫在http裏面
include mime.types;
default_type application/octet-stream;
fastcgi_buffers 8 16k; #緩存php生成的頁面內容, 8個16k
fastcgi_buffer_size 32k; #緩存php生成的頭部信息
fastcgi_connect_timeout 300; #鏈接php的超時時間
fastcgi_send_timeout 300; #發送請求的超時時間
fastcgi_read_timeout 300; #讀取請求的超時時間
:x
[root@zabbix tts]# /usr/local/nginx/sbin/nginx -s reload #重啓nginx服務 沒報錯就是成功了
(2) 編譯安裝zabbix服務
[root@zabbix ~]# yum -y install libevent-devel-2.0.21-4.el7.x86_64.rpm net-snmp-devel curl--devel
[root@zabbix zabbix-3.4.4]# ./configure --prefix=/usr/local/zabbix \ #指定安裝位置
--enable-server \ #enable-server提供監控服務
--enable-proxy --enable-agent \ #提供代理服務 提供客戶端服務
--with-mysql=/usr/bin/mysql_config \ ##使用的數據庫服務及路徑
--with-net-snmp \ #讓本身支持snmp服務
--with-libcurl #能夠經過web頁面查看監控信息
[root@zabbix zabbix-3.4.4]# make && make install
(3) 初始化zabbix
[root@zabbix ~]# systemctl restart mariadb #啓動mariadb
[root@zabbix ~]# mysql #進入數據庫
MariaDB [(none)]> create database zabbix charseter set utf8; #建立庫 並設置字符集
MariaDB [(none)]> grant all on zabbix.* to zabbix@"localhost" identified by "zabbix"; #受權用戶
建立表
在zabbix源碼包的目錄下有一個database目錄裏面有須要導入的文件 從右向左開始導入
[root@zabbix ~]# cd /root/zabbix-3.4.4/database/mysql/
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < schema.sql
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < images.sql
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < data.sql
建立web頁面
在zabbix源碼包的目錄下有一個[root@zabbix zabbix-3.4.4]# ls /root/zabbix-3.4.4/frontends/php/把裏面的內容全拷貝到html目錄下
[root@zabbix zabbix-3.4.4]# cp -r /root/zabbix-3.4.4/frontends/php /usr/local/nginx/html/zabbix
使用谷歌瀏覽器訪問zabbix服務器的ip地址 http://192.168.1.164/zabbix/index.php
能看到這個圖以上的操做就算成功了
點那個藍色的下一步會獲得如下圖
看到紅色說明環境尚未準備好
根據檢查的報警提示,修改系統環境
[root@zabbix ~]# yum -y install php-gd php-xml
[root@zabbix ~]# yum -y install php-gd php-xml
[root@zabbix ~]# yum install php-bcmath-5.4.16-42.el7.x86_64.rpm
[root@zabbix ~]# yum install php-mbstring-5.4.16-42.el7.x86_64.rpm
[root@zabbix ~]# vim /etc/php.ini
date.timezone = Asia/Shanghai //設置時區
max_execution_time = 300 //最大執行時間,秒
post_max_size = 32M //POST數據最大容量
max_input_time = 300 //服務器接收數據的時間限制
memory_limit = 128M //內存容量限制
[root@zabbixserver ~]# systemctl restart php-fpm
注意: php LDAP 警告狀態是沒有問題的
而後點擊下一步會調到一下頁面 ↓
點下一步以後會有如下報錯信息:
這是由於沒有權限寫入 只要加個權限就好了
chmod o+x /usr/local/nginx/html/zabbix/conf
在登錄頁面,使用用戶(admin)和密碼(zabbix)登錄,登錄後設置語言環境爲中文,以下所示。
當下面顯示黃色字條的時候 表明zabbix沒有運行 注意:無論有沒有黃條都不妨礙你訪問zabbixweb頁面
啓動zabbix_server服務
(1) 修改配置文件
[root@zabbix ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
:set nu 打開行號
85 DBHost=localhost #指定數據庫主機,由於是本機因此寫localhost就好了
95 DBName=zabbix #指定鏈接庫名,默認就是zabbix
111 DBUser=zabbix #指定受權用戶,默認zabbix
119 DBPassword=zabbix #指定受權用戶的密碼
38 LogFile=/tmp/zabbix_server.log #用來幫你排錯的日誌文件路徑
:wq
(2) 建立服務啓動腳本
[root@zabbix ~]# cd zabbix-3.4.4/ #使用包裏自帶的腳本
[root@zabbix zabbix-3.4.4]# cp misc/init.d/fedora/core/zabbix_server /etc/init.d/ #把他拷貝到啓動目錄下
[root@zabbix zabbix-3.4.4]# chmod +x /etc/init.d/zabbix_server #給執行權限
[root@zabbix zabbix-3.4.4]# sed -i "22s;/usr/local;/usr/local/zabbix;" /etc/init.d/zabbix_server #啓動索引默認是在/usr/local裏去找,由於咱們是指定目錄了 全部要修改文件
[root@zabbix zabbix-3.4.4]# useradd zabbix #注意注意!! 必需要建立一個zabbix用戶 不然程序啓動確定報錯
(3) 啓動服務
[root@zabbix zabbix-3.4.4]# /etc/init.d/zabbix_server start #啓動zabbixserver
[root@zabbix zabbix-3.4.4]# /etc/init.d/zabbix_server stop #中止命令
(4) 查看服務信息
[root@zabbix zabbix-3.4.4]# /etc/init.d/zabbix_server status #查看狀態
未完待續!!!!!!