1.1 zabbix機器和其他被監控的機器要安裝的環境
#zabbix 監控准備
zabbix 10.0.0.71 172.16.1.71
web01 10.0.0.7 172.16.1.7
web02 10.0.0.8 172.16.1.8
#所有機器配置
#centos 7的系統
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
#centos 6的系統
yum install -y https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
#zabbix機器 (配置好epel源)!!!!
epel源在這找:
清華,等163網易里搜索epel,打開在里面找到在這命令。
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum install -y iftop iotop nethogs
yum install zabbix-server-mysql zabbix-web-mysql httpd php –y
#zabbix服務端需要使用mysql配合,當然能和其他數據庫配合,mysql在Centos6到7不能直接yum安裝,只能安裝mXDB,所以只能二進制安裝或編譯安裝
yum install -y mariadb-server
yum install -y zabbix-agent
#web01 web02
yum install -y zabbix-agent
#做好快照
1.2 zabbix的服務端與客戶端版本需一致,否則會引起某些故障(服務端3.0)
說明:zabbix服務端3.0的時候,客戶端最好也跟着3.0否則會出錯,或者出現一些其他錯誤。
1.3 zabbix的官方地址(可下載編譯或win版本)
www.zabbix.com
1.4 lamp與lnmp的關系圖
1.5 cobbler防止系統每次啟動重裝的設置
/etc/cobbler/settings
292 pxe_just_once:1
#防止重裝
1.6 【面試題】你們公司監控如何做的?
1、OSI7層模型監控
2、用戶訪問網站流程
大公司一般也會監控:輿情
注意:使用IOS7層模型來分類,比如物理層有電腦、硬件、風扇轉速等,以后面試按照7層模型來想就好,按照這種大綱給面試的去解釋
重點:OSI/ISO7層協議模型圖:
1.7 要使用的監控命令
iftop -nNP
nethogs
1.8 使用nc數據反彈命令進行數據傳輸,形成小型數據聊天工具
1.9 監控全國各地訪問我網站的速度
www.17ce.com
http://ping.chinaz.com
1.10 監控工具總覽
1.11 zabbix-get命令行獲取客戶端數據排查錯誤
命令:
yum install zabbix-get –y #因為沒有這個命令
zabbix_get -s 172.16.1.7 -p10050 -k agent.ping #向客戶端里獲取數據,指定ip指定端口,-k是獲取的數據命令
參數說明:
-s --host: 指定客戶端主機名或者IP
-p --port:客戶端端口,默認10050
-I --source-address:指定源IP,寫上zabbix server的ip地址即可,一般留空,服務器如果有多ip的時候,你指定一個。
-k --key:你想獲取的key
說明:被監控的機器就叫agent目標,服務端叫server,所有被監控的機器都要裝一個agent
1.12 zabbix版本
3.4 最新版
3.0 LTS long timesupport 長時間維護版本 #一般使用這個,因為單獨這個版本,是長時間維護的版本,一直更新的。
1.13 自行找其他zabbix版本的辦法
百度搜索清華 mirrors,搜索到zabbix 點擊進去 zabbix /3.0版本/rhel/Centos7版本/x86_64/zabbix-releas-3.0-1.el6.noarch.rpm
1.14 啟動數據庫並且設置開機自啟動
systemctl start mariadb.service
systemctl enable mariadb.service
1.15 刪除數據庫無用的用戶
mysql #進入mysql,執行如下內容
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
MariaDB [(none)]> select user,host from mysql.user;
+------+------------------+
| user | host |
+------+------------------+
| root | 127.0.0.1 |
| root | ::1 |
| | localhost |
| root | localhost |
| | oldboyedu-zabbix |
| root | oldboyedu-zabbix |
+------+------------------+
6 rows in set (0.00 sec)
MariaDB [(none)]> drop user ''@'localhost';
MariaDB [(none)]> drop user ''@'localhost';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> drop user ''@'oldboyedu-zabbix';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
1.16 創建zabbix相應的數據庫與用戶
#創建數據庫
create database zabbix character set utf8 collate utf8_bin;
#添加用戶
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
1.17 創建zabbix所需要的表內容,使用zcat命令導入
zcat /usr/share/doc/zabbix-server-mysql-3.0.19/create.sql.gz |mysql zabbix
故障:如果沒有zcat /usr/share/doc/zabbix-server-mysql-3.0.19/create.sql.gz |mysql zabbix 這個目錄那就可能是前面的epel源等等沒有配置好,需要多次確認,反復安裝,一個都不能少,中間還有y確認一定要搞好。
1.18 修改zabbix配置文件 訪問本地的數據庫
#修改zabbix配置文件 訪問本地的數據庫
vim /etc/zabbix/zabbix_server.conf
輸入db數據庫名字和賬號和密碼
[root@oldboyedu-zabbix ~]# grep -n ^DB /etc/zabbix/zabbix_server.conf
91:DBName=zabbix
107:DBUser=zabbix
115:DBPassword=zabbix
1.19 配置apache php
sed -i.ori '18a php_value date.timezone Asia/Shanghai' /etc/httpd/conf.d/zabbix.conf
1.20 重啟zabbix
[root@oldboyedu-zabbix ~]# systemctl restart zabbix-server.service httpd.service
1.21 登錄zabbix的web安裝界面
1.22 zabbix的web安裝界面步驟
1、選擇下一步,Check of pre-requisites,如圖所示
2、選擇下一步,配置zabbix server detail,如下圖所示:
說明:檢查所需項是否都成功
3、選擇下一步,配置zabbix 服務端設置,相當於mysql數據信息,如下圖所示:
說明:配置mysql類型,如果是mridb就會有mridb的類型,mysql連接的是本地那就是hostsname,mysql端口是0那就是默認是3306,mysql中管理zabbix的用戶那就是zabbix,zabbix的密碼zabbix
4、輸入zabbix服務端的地址是zabbix服務端的端口,還有zabbix的名字
4、點擊下一步,便完成安裝,安裝完成的界面如下圖所示:
說明:核對全部信息
5、安裝完成,如下圖所示:
10051是服務端的端口
10050是客戶端的端口
1.23 修改zabbix的web管理頁面為中文語言


1.24 如果zabbix與數據庫分離那就修改數據庫配置文件
[root@oldboyedu-zabbix doc]# grep DB /etc/zabbix/zabbix_server.conf
### Option: DBHost
# DBHost=localhost #vim進去,修改此處mysql的數據庫地址,類似於nginx與mysql分離的操作
### Option: DBName
# For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.
# DBName=
DBName=zabbix
### Option: DBSchema
# Schema name. Used for IBM DB2 and PostgreSQL.
# DBSchema=
### Option: DBUser
# DBUser=
DBUser=zabbix
### Option: DBPassword
DBPassword=zabbix
### Option: DBSocket
# DBSocket=/tmp/mysql.sock
### Option: DBPort
# DBPort=3306
### Option: StartDBSyncers
# Number of pre-forked instances of DB Syncers.
# StartDBSyncers=4
1.25 修改客戶端的zabbix配置文件,設置zabbix服務端地址
vim /etc/zabbix/zabbix_agentd.conf
Server=172.16.1.71 #server地址是zabbix服務端的地址,這里寫172內網,此處在95行
1.26 重啟客戶端zabbix服務,生效配置文件
systemctl restart zabbix-agent.service
1.27 服務端從客戶端獲取監控數據的命令(問客戶端是否健在)
yum install zabbix-get –y #在服務端安裝獲取數據的命令 zabbix-get
zabbix_get -s 172.16.1.71 -p10050 -k agent.ping #監控172.16.1.71獲取數據,問問他是否健在,出現1說明現在健在
1.28 在web界面里配置客戶端的IP地址,並且啟用監控


說明:如果要控制其他客戶端那就添加新的主機,就要在右上角里點擊“創建主機”


1.29 等待服務變成綠色
1.30 讓zabbix服務立馬變綠色的辦法
[root@oldboyedu-zabbix zabbix]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.1.71 oldboyedu-zabbix #做域名解析,刷新立馬就綠了。
1.31 zabbix排錯方法
#查日志看看出錯的提示
查文件 /etc/zabbix/zabbix-server.conf 看看賬號密碼是否填錯,或者沒有去掉注釋
zabbix本地數據庫能否正常登錄成功
查看zabbix服務端端口,客戶端端口 10051/10050是否啟動
最后在重啟
並且在zabbix綠色和紅色處可以直接查看出問題出在哪里
1.32 下節課需要學到的內容
監控多台服務器配置
自定義監控
自定義監控服務器登錄用戶數量
自定義監控nginx狀態 (狀態模塊)
自定義監控tcp連接狀態(狀態模塊)
1.33 作業:監控7和8測試
說明:了解原理就可以,比如每個被監控客戶端,都要安裝 zabbix-agent 安裝完成后,需要修改每個客戶端里的/etc/zabbix/zabbix_agentd.conf配置文件,指定zabbix服務端(控制台)的IP,然后重啟一下zabbix-agent服務,在zabbix控制台里的web頁面里創建一台主機,隨后添加Template OS Linux模板,注意是先選擇模板后,再點擊添加,在點擊更新(小細節)然后就好了。直接等待綠色就好了。
1、安裝客戶端yum install –y zabbix-agent
2、配置文件/etc/zabbix/zabbix_agentd.conf,里的server選項= 控制台主機 172.16.1.71
3、重啟服務 systemctl restart zabbix-agent
4、查看網絡端口是否打開 ss –lntup|grep 10050 ##客戶端沒有netstat命令所以只能使用ss命令查看網絡端口。
5、如果有錯誤也直接查看tail /var/log/zabbix/zabbix_agentd.log日志查看錯誤
6、在控制台里添加主機,添加被控制的客戶端IP,添加模板然后刷新等綠色就好了。
1.34 查看一個配置文件有用的信息的技巧
grep –v “#” /etc/zabbix/zabbix-agetn.conf
說明:每次查找配置文件里面的參數時,可以直接匹配去除井號#的每一行,只看生效的那些參數