SourceURL:file:///home/student/Documents/zabbix.doc
- zabbix服务器配置
1. 拷贝zabbix软件包到pubserver
#在此之前先从真机拷贝安装包
root@server1 \~# scp /linux-soft/s2/zzg/zabbix_soft/*.rpm 192.168.88.5:/root/
#然后拷贝到pubserver
root@zabbixserver \~# scp /linux-soft/s2/zzg/zabbix_soft/*.rpm 192.168.88.240:/var/ftp/rpms
- 编写剧本,通过 pubserver, 在zabbixserver上安装相应软件包
root@pubserver zabbix# vim 01_zabbixinstall.yml
- name: install zabbix
hosts: zabbix
tasks:
- name: install zabbix # 安装软件包
yum:
name:
-
zabbix-server-mysql
-
zabbix-web-mysql
-
zabbix-nginx-conf
-
zabbix-sql-scripts
-
zabbix-selinux-policy
-
zabbix-agent
-
mysql-server
-
langpacks-zh_CN
state: present
root@pubserver zabbix# ansible-playbook 01_zabbixinstall.yml
3 . 编写剧本, 启动mysqld服务
root@pubserver zabbix# vim 02_start_mysqld.yml
- name: config mysqld
hosts: zabbix
tasks:
- name: start mysqld # 启动mysqld服务
service:
name: mysqld
state: started
enabled: yes
root@pubserver zabbix# ansible-playbook 02-start-mysqld.yml
4 . 在zabbix上创建连接数据库的用户
root@zabbixserver \~# mysql
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
在binlog日志开启的情况下,打开函数生成器
mysql> set global log_bin_trust_function_creators = 1;
mysql> create user zabbix@localhost identified by 'zabbix';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;
5. 验证数据库配置,如果登陆不到数据库表示上一步配置不正确
root@zabbixserver \~# mysql -uzabbix -pzabbix -hlocalhost zabbix
mysql> quit;
6 . 在数据库中创建表并导入数据
root@zabbixserver \~# cp /usr/share/zabbix-sql-scripts/mysql/server.sql.gz .
root@zabbixserver \~# gzip -d server.sql.gz
#比较慢
root@zabbixserver \~# mysql -uzabbix -pzabbix zabbix < server.sql
7 . 修改 zabbix_server 配置文件,设置密码
root@zabbixserver \~# vim +129 /etc/zabbix/zabbix_server.conf
129: DBPassword=zabbix
8 . 配 修改 zabbix_agent 配置文件
root@zabbixserver \~# vim /etc/zabbix/zabbix_agentd.conf
182 Hostname=zabbixserver
9 . 配置nginx展示zabbix
root@zabbixserver \~# vim /etc/nginx/conf.d/zabbix.conf
打开第2、3行的注释,结果如下所示:
server {
listen 8080;
server_name example.com;
...以下省略...
10 . ansible服务器使用剧本 启动相关服务
root@pubserver zabbix# vim 03_start_zabbix.yml
- name: config zabbix
hosts: zabbix
tasks:
- name: start service # 循环启动多个服务
service:
name: "{{item}}"
state: started
enabled: yes
loop:
-
zabbix-server
-
zabbix-agent
-
nginx
-
php-fpm
root@pubserver zabbix# ansible-playbook 03_start_zabbix.yml
- 访问zabbixserver的8080端口,进行初始化
浏览器操作:http://192.168.88.5:8080
Dafault language 选择中文(zh_CN)

------> 下一步

------> 下一步

用户:zabbix
密码:zabbix
------> 下一步

Zabbix主机名称:zabbixserver
Defualt time zone:(UTC+08:00)Asia/Shanghai
------> 下一步

------> 下一步

------> 完成

用户登录
用户名称:Admin
密码:zabbix
看数据操作:
配置-主机
监测-最新数据



四、 配置zabbix监控web1服务器
1、 在web1上安装agent
root@pubserver zabbix# vim 04_inst_agent.yml
- name: install agent
hosts: webservers
tasks:
- name: install agent # 安装agent
yum:
name: zabbix-agent
state: present
root@pubserver zabbix# ansible-playbook 04_inst_agent.yml
2 . 修改web1配置文件
root@web1 \~# vim /etc/zabbix/zabbix_agentd.conf
117 Server=127.0.0.1,192.168.88.5
182 Hostname=web1
3 . 启动 服务
root@pubserver zabbix# vim 05_start_agent.yml
- name: config agent
hosts: web1
tasks:
- name: start agent # 启动服务
service:
name: zabbix-agent
state: started
enabled: yes
root@pubserver zabbix# ansible-playbook 05_start_agent.yml
4、 在web页面中添加对web1的监控
主机:安装了agent,被监控的主机
主机组:根据需求,将多台主机加入到一个主机组中,方便管理。系统默认已经创建了一些主机组。
模板:是监控项的集合。将模板应用到主机,主机就可以直接拥有模板中的所有监控项。系统中默认已经创建了一些模板。
配置------主机------创建主机------添加agent(web1)





常用监控指标
- Space utilization:以百分比显示的磁盘利用率
- Used space:已用磁盘空间
- Available memory:可用内存
- CPU idle time:CPU空闲时间。不宜过低。
- Load average (1m avg)、Load average (5m avg)、Load average (15m avg):CPU1分钟、5分钟、15分钟的平均负载。这个值不应长期大于核心数。
- Interface eth0: Bits received:网卡接收到的数据量
- Interface eth0: Bits sent:网卡发送的数据量
- Number of processes:系统运行的进程数
- Number of logged in users:已登陆的用户数