监控基础及Zabbix环境部署

系统监控命令
ps aux //查看进程
uptime //CPU负载
free //查看内存
swapon -s //交换分区
df -h //查看硬盘
ifconfig //网卡
netstat或ss //查看端口
ping //测试网络
traceroute //a点到b点之间路由
iostat //硬盘读写
Zabbix环境
部署:LNMP
系统安装:gcc pcre-devel zlib-devel openssl-devel
nginx编译安装:./configure --with-http_ssl_module
安装支持php:php php-mysql php-fpm
数据库:mariadb mariadb-devel mariadb-server

部署:Zabbix
系统安装:net-snmp-devel curl-devel libevent-devel autoconf
编译安装: ./configure --enable-server --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl
--enable-server安装部署zabbix服务器端软件
--enable-agent安装部署zabbix被监控端软件
--enable-proxy安装部署zabbix代理相关软件
--with-mysql指定mysql_config路径
--with-net-snmp允许zabbix通过snmp协议监控其他设备(如交换机、路由等)
--with-libcurl安装相关curl库文件,可以通过curl连接http等服务
make && make install

初始化准备
创建数据库与数据库用户
mysql
create database zabbix character set utf8; //创建支持中文的数据库
grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix'; //授权、创建zabbix用户,对zabbix数据库所有表有所有权限,密码zabbix
导入数据到数据库
zabbix安装包中database/mysql/data.sql、images.sql、schema.sql
mysql -uzabbix -pzabbix zabbix < schema.sql
mysql -uzabbix -pzabbix zabbix < images.sql
mysql -uzabbix -pzabbix zabbix < data.sql

修改zabbix_server配置,启动监控服务,需要顶格
vim /usr/local/etc/zabbix_server.conf
DBHost=localhost
#85行,定义哪台主机为数据库主机,localhost为本机
DBName=zabbix
#95行,设置数据库名称
DBUser=zabbix
#111行,设置数据库账户
DBPassword=zabbix
#119行,设置数据库密码
LogFile=/tmp/zabbix_server.log
#38行,日志的位置,排错使用,该行仅查看即可
useradd -s /sbin/nologin zabbix
#服务不允许以root身份启动,不创建用户无法启动服务(用户不需要登录系统)
#创建zabbix用户才可以以zabbix用户的身份启动服务
#启动服务后可以通过ps aux查看进程是以什么用户的身份启动的

创建service文件管理zabbix服务

vim /usr/lib/systemd/system/zabbix_server.service
[Unit]
Description=zabbix server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/tmp/zabbix_server.pid
ExecStart=/usr/local/sbin/zabbix_server
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target
systemctl enable zabbix_server --now
ss -tunlp | grep zabbix_server   //测试服务是否起来,端口为10051

上线zabbix页面
zabbix安装包中frontends
cp -a * /usr/local/nginx/html/
chmod -R 777 /usr/local/nginx/html/*

安装依赖软件
php-gd php-xml php-ldap php-bcmath php-mbstring
修改php配置文件
vim /etc/php.ini
date.timezone = Asia/Shanghai //878行,设置时区
max_execution_time = 300 //384行,最大执行时间,秒
post_max_size = 32M //672行,POST数据最大容量
max_input_time = 300 //394行,服务器接收数据时间限制
systemctl restart php-fpm