踏雪寻梅 发表于 2019-1-17 14:10:31

源码安装ZABBIX服务

  在安装ZABBIX服务之前,首先我们的搭建好LAMP环境或者LNMP环境,这里我搭建的环境为LAMP环境,具体怎样搭建LAMP环境我之前的文章中有提到过,猛戳此处查看LAMP环境安装,好了,接下来开始准备安装ZABBIX
  

  zabbix服务安装
  

  

  安装好LAMP环境之后需要配置php.ini文件,安装LAMP之后php.ini文件所在目录为/usr/local/php/etc/php.ini
  将其中的一些参数修改为如下:
  max_execution_time = 300
  memory_limit = 128M
  post_max_size = 16M
  upload_max_filesize = 2M
  max_input_time = 300
  date.timezone = PRC
  

  还得安装snmp插件(为编译zabbix报错安装插件)
  yum -y install net-snmp-devel
  

  

  安装zabbix
  下载zabbix
  所有版本下载地址:http://www.zabbix.com/download.php
  这里下载的是2.2.2版本,通过ftp上传到root根目录的
  tar -xzvf zabbix-2.2.2.tar.gz
  cd zabbix-2.2.2
  ./configure --prefix=/usr/local/zabbix-2.2.2/ --enable-server \
  --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2
  

  

  (出现该错误:configure:error: Invalid NET-SNMP directory - unable to find net-snmp-config
  

  编译安装zabbix时,配置时报以上错,导致检测系统环境不成功。提示unableto find net-snmp-config,说明缺少相关的依赖性。
  这是因为,在linux中,大多数软件都是开源的,并且可以自由使用。因此在开发时可以用到其他的软件包时我们直接就拿来了,不用在花功夫去重新编写,这就造成了所谓的依赖性。
  那么怎么解决该问题那?
  解决办法一:
  找出net-snmp-config属于哪个软件包,然后安装即可。
  yum search net-snmp-config,发现net-snmp-config属于软件包net-snmp-devel,yum安装该软件包,解决该问题。
  解决办法二:
  在配置时,我们加上了--with-net-snmp这个选项,因此需要检查系统环境是否有该软件包支持。因此,在配置时,不要加上--with-net-snmp这个选项即不会报如下错误configure:error: Invalid NET-SNMP directory - unable to find net-snmp-config。)
  

  (出现错误configure: error: Curl library not found
  先使用yum -y install *curl*安装需要组建,再重新编译
  )
  

  make
  make install
  

  创建用户
  为了安全考虑zabbix只使用普通用户运行,假如你当前用户叫asd,那么你运行他,他便使用asd身份运行。但是如果你在root环境下运行zabbix,那么zabbix将会主动使用zabbix用户来运行。但是如果你的系统没有名叫zabbix的用户,你需要创建一个用户,如下:
  # groupadd zabbix
  # useradd -g zabbix zabbix
  

  

  初始化数据库
  zabbix server与proxy需要数据库,angent不需要。尤其要注意的是proxy只需要导入一个sql文件,而server一共要导入3个sql文件。我当时在搭建proxy的时候导入了3个sql,导致出现报错。后来才发现proxy只需要导入一个表结构即可。
  

  我假想你安装好了MySQL,用户名为root,密码为xxxxxx
  # mysql -uroot -pxxxxxx
  mysql> create database zabbix default charset utf8;
  mysql> quit;
  在zabbix解压后的根目录下执行
  # mysql -uroot -pxxxxxx zabbix < database/mysql/schema.sql
  # mysql -uroot -pxxxxxx zabbix < database/mysql/images.sql
  # mysql -uroot -pxxxxxx zabbix < database/mysql/data.sql
  

  

  配置zabbix
  配置zabbix_server配置文件,zabbix源码目录下
  # cd /usr/local/zabbix-2.2.2/etc
  #vim zabbix_server.conf
  DBName=zabbix
  DBUser=root
  DBPassword=wdlinux.cn
  DBPort=3306
  # mkdir /etc/zabbix
  # cp zabbix_server.conf /etc/zabbix/
  

  启动zabbix
  /usr/local/zabbix-2.2.2/sbin/zabbix_server
  /usr/local/zabbix-2.2.2/sbin/zabbix_agentd
  

  设置开机自启
  可以使用echo -e "/usr/local/zabbix-2.2.2/sbin/zabbix_server\n/usr/local/zabbix-2.2.2/sbin/zabbix_agentd">>/etc/rc.local
  

  拷贝前端文件
  # mkdir /usr/local/apache2/htdocs/zabbix/
  # cp -a /usr/local/src/zabbix-2.2.2/frontends/php/* /usr/local/apache2/htdocs/zabbix/
  

  

  开始web配置
  http://192.168.1.100/zabbix/
  

  

  一路检查下去,到最后没有问题,登录账号/密码:admin/zabbix
  




页: [1]
查看完整版本: 源码安装ZABBIX服务