源码编译安装zabbix server端和agent端
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | [root@localhost ~] # yum -y install net-snmp net-snmp-devel libxml2 libxml2-devel libcurl-devel libevent libevent libevent-devel curl curl-devel mysql-devel snmp perl-DBI php-xml php-bcmath php-mbstring php-ldap php-xmlrpc httpd php php-mysql php-common php-gd php-odbc php-pear gcc* net-snmp libssh2 libssh2-devel mariadb-server mariadb mariadb-devel ntpdate ##安装依赖 [root@localhost ~] # ntpdate ntp1.aliyun.com ##配置时间同步 [root@localhost ~] # echo "ntpdate ntp1.aliyun.com" >> /etc/rc.local [root@localhost ~] # tar -xf zabbix-3.4.2.tar.gz [root@localhost ~] # cd zabbix-3.4.2 [root@localhost zabbix-3.4.2] # ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --enable-java ##如果出现报错"error: Unable to use libevent (libevent check failed)"这是因为libevent-devel没有安装,由于这个包本地yum源没有,我们可以用阿里源安装; 如果出现报错"error: Unable to find "javac" executable in path" 则安装Java-devel, [root@localhost zabbix-3.4.2] # cd [root@localhost ~] # cat /etc/yum.repos.d/aliyun.repo ##配置阿里源 [aliyun] name=aliyun baseurl=https: //mirrors .aliyun.com /centos/7/os/x86_64/ enabled=1 gpgcheck=1 gpgkey=https: //mirrors .aliyun.com /centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7 keepcache=1 ##将yum安装的rpm包下载到本地.保存路径为/var/cache/yum/x86_64/7/aliyun/packages/ [root@localhost ~] # yum install java-devel libevent-devel [root@localhost zabbix-3.4.2] # ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --enable-java ##重新配置 [root@localhost zabbix-3.4.2] # make && make install ##编译安装 [root@localhost ~] # systemctl start mariadb && systemctl enable mariadb [root@localhost ~] # systemctl start httpd && systemctl enable httpd [root@localhost ~] # mysqladmin password root ##修改mysql密码 [root@localhost ~] # mysql -uroot -proot MariaDB [(none)]> create database if not exists zabbix default character set utf8 collate utf8_general_ci; MariaDB [(none)]> use zabbix; MariaDB [zabbix]> source /root/zabbix-3 .4.2 /database/mysql/schema .sql; MariaDB [zabbix]> source /root/zabbix-3 .4.2 /database/mysql/images .sql; MariaDB [zabbix]> source /root/zabbix-3 .4.2 /database/mysql/data .sql; ##脚本创建zabbix数据库 MariaDB [zabbix]> grant all on zabbix.* to zabbix@ '192.168.0.101' identified by 'zabbix' ; ##创建数据库用户zabbix 密码zabbix 在192.168.0.101这个地址上对zabbix数据库拥有所有权限 MariaDB [zabbix]> flush privileges; ##刷新,保存修改 MariaDB [zabbix]> show grants for zabbix@ '192.168.0.101' ; ##查看权限 [root@localhost ~] # mkdir /usr/local/zabbix/logs ##创建zabbix日志目录 [root@localhost ~] # chown zabbix:zabbix /usr/local/zabbix/logs/ -R ##赋权 [root@localhost ~] # sed -i 's/LogFile=\/tmp\/zabbix_server.log/LogFile=\/usr\/local\/zabbix\/logs\/zabbix_server.log/g' /usr/local/zabbix/etc/zabbix_server.conf ##修改zabbix的日志文件目录 [root@localhost ~] # sed -i 's/# PidFile=\/tmp\/zabbix_server.pid/PidFile=\/tmp\/zabbix_server.pid/g' /usr/local/zabbix/etc/zabbix_server.conf ##打开zabbix_server pid文件的注释 [root@localhost ~] # sed -i 's/# DBHost=localhost/DBHost=192.168.0.101/g' /usr/local/zabbix/etc/zabbix_server.conf ##配置数据库的IP地址 [root@localhost ~] # sed -i 's/# DBPassword=/DBPassword=zabbix/g' /usr/local/zabbix/etc/zabbix_server.conf ##配置数据库用户zabbix的密码 [root@localhost ~] # sed -i 's/# DBSocket=\/tmp\/mysql.sock/DBSocket=\/var\/lib\/mysql\/mysql.sock/g' /usr/local/zabbix/etc/zabbix_server.conf ##配置数据库用户zabbix的密码 [root@localhost ~] # sed -i 's/# Include=\/usr\/local\/etc\/zabbix_server.conf.d\/\*.conf/Include=\/usr\/local\/zabbix\/etc\/zabbix_server.conf.d\/\*.conf/g' /usr/local/zabbix/etc/zabbix_server.conf ##配置zabbix所有辅助配置文件的路径和格式 [root@localhost ~] # sed -i 's/# PidFile=\/tmp\/zabbix_agentd.pid/PidFile=\/tmp\/zabbix_agentd.pid/g' /usr/local/zabbix/etc/zabbix_agentd.conf ##打开zabbix_agentd pid文件的注释 [root@localhost ~] # cp /usr/local/zabbix/etc/zabbix_agentd.conf{,_$(date +%F)} ##以当前日期格式将zabbix_agentd.conf文件备份 [root@localhost ~] # cat <<END > /usr/local/zabbix/etc/zabbix_agentd.conf PidFile=/tmp/zabbix_agentd.pid Server=127.0.0.1,192.168.100.101 ServerActive=192.168.100.101 Hostname=server.zabbix.com Timeout=30 LogFile=/usr/local/zabbix/logs/zabbix_agentd.log Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf END ##重新编写zabbix_agetd.conf文件 [root@localhost ~] # /usr/local/zabbix/sbin/zabbix_server ##开启zabbix服务端 [root@localhost ~] # netstat -utpln|grep 10051 ##查看端口是否监听 tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 51360 /zabbix_server [root@localhost ~] # /usr/local/zabbix/sbin/zabbix_agentd ##开启zabbix客户端 [root@localhost ~] # netstat -utpln|grep 10050 ##查看端口是否监听 tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 51427 /zabbix_agentd [root@localhost ~] # mv /root/zabbix-3.4.2/frontends/php/ /var/www/html/zabbix ##复制程序包 [root@localhost ~] # chown -R apache:apache /var/www/html/zabbix/ ##赋权 [root@server ~] # vi /etc/php.ini ##修改关于php的一些参数 878 date .timezone = Asia /Shanghai 384 max_execution_time = 300 394 max_input_time = 300 672 post_max_size = 32M 405 memory_limit = 128M 854 extension=bcmath.so :wq [root@localhost ~] # systemctl restart httpd ##重启httpd服务 [root@localhost ~] # mv /var/www/html/zabbix/fonts/DejaVuSans.ttf{,_$(date +%F)} [root@localhost ~] # mv simkai.ttf /var/www/html/zabbix/fonts/DejaVuSans.ttf ##设置zabbix web页面上的图片的中文字符 |
然后浏览器访问, http://IP/zabbix 默认管理员账号密码: admin/zabbix
最后配置主机 监控项 图表
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话