samsungsamsung 发表于 2019-1-24 08:15:47

Centos下搭建zabbix监控服务

Zabbix服务搭建配置
  环境:
  System: centos6.5
  Zabbix : zabbix-2.0.15
  配置之前先关闭iptables/selinux
  service iptablesstop或者生产环境中如果启用iptables后,不建议直接关闭
  
  配置防火墙,开启10050、10051的TCP和UDP端口
  vi /etc/sysconfig/iptables #编辑防火墙配置文件
  -A INPUT -s 192.168.21.127 -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCEPT
  -A INPUT -s 192.168.21.127 -m state --state NEW -m udp -p udp --dport 10050:10051 -j ACCEPT
  :wq! #保存退出
  service iptables restart #重启防火墙使配置生效
  注:192.168.21.127是Zabbix服务端的IP地址,表示端口只对此IP开放,如果要对所有IP开放,规则如下:
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCEPT
  -A INPUT -m state --state NEW -m udp -p udp --dport 10050:10051 -j ACCEPT
  关闭SELINUX
  vi /etc/selinux/config
  SELINUX=disabled
  setenforce 0 #使配置立即生效
  一键YUM安装LAMP环境
  yum -y install gcc gcc-c++autoconfhttpd php mysql mysql-serverphp-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xmlphp-mbstring php-ldap php-pear php-xmlrpc php-bcmath mysql-connector-odbcmysql-devel libdbi-dbd-mysql net-snmp-devel curl-devel unixODBC-develOpenIPMI-devel java-devel
  
  配置php 环境,修改php.ini
  vim /etc/php.ini (修改这些参数的目的是zabbix 的web 代码要求要这么配置才能正
  常运行,所以,不修改饿后果就是安装无法获得正常的环境,关于php.ini 这些参数的具体
  意思,请读者自行参考php 相关资料)
  date.timezone = Asia\/Shanghai
  max_execution_time = 300
  post_max_size = 32M
  max_input_time = 300
  memory_limit = 128M
  mbstring.func_overload = 0
  另外直接sed命令更改配置文件也行
  sed -i "s/;date.timezone =/date.timezone = Asia\/Shanghai/g"/etc/php.ini
  sed -i "s#max_execution_time = 30#max_execution_time = 300#g"/etc/php.ini
  sed -i "s#post_max_size = 8M#post_max_size = 32M#g"/etc/php.ini
  sed -i "s#max_input_time = 60#max_input_time = 300#g"/etc/php.ini
  sed -i "s#memory_limit = 128M#memory_limit = 128M#g"/etc/php.ini
  sed -i "/;mbstring.func_overload = 2/ambstring.func_overload = 0\n"/etc/php.ini
  设置httpd,mysqld开机启动并开启服务
  chkconfig mysqld on
  chkconfig httpd on
  service mysqld start
  service httpd start
  安装zabbix服务端,添加zabbix用户及用户组
  groupadd zabbix -g 201
  useradd -g zabbix -u 201 -m zabbix
  解压zabbix安装包
  tar -xzvf zabbix-2.4.7.tar.gz
  安装
  安装依赖包
  yum install php-pecl-ssh2.x86_64libssh2-devel.x86_64 openldap openldap-devel
  
  ./configure--prefix=/usr --sysconfdir=/etc/zabbix --enable-server --enable-proxy--enable-agent --enable-ipv6 --with-mysql=/usr/bin/mysql_config --with-net-snmp--with-libcurl --with-openipmi --with-unixodbc --with-ldap --with-ssh2--enable-java
  (如果你只是想安装一个服务端,只需开启--enable-server即可,其他参数可以不用选,但
  这里是为了后面的各项功能都可以使用,所以开启了非常多的参数)
  (如果缺少相应的依赖包,configure 过程会给出提示)
  make && makeinstall
  导入数据库
  mysqladmin -urootpassword 'mysql_pass'; (设置mysql的root 密码)
  mysql -uroot -p (登陆数据库)
  mysql>createdatabase zabbix character set utf8;
  (注意,此处要特别注意数据库字符集的问题,如果数据库是非utf8 字符,则web 页面改为中文,是会出现乱码的。)
  mysql>grant allprivileges on zabbix.* to zabbix@localhost identified by 'zabbix';
  mysql>flushprivileges;
  确保以上操作都正常,测试下数据库连接是否正常
  mysql -uzabbix-pzabbix zabbix
  导入数据
  cd /zabbix-2.0.15   //切换到zabbix的解压目录
  mysql -uzabbix-pzabbix zabbix < database/mysql/schema.sql
  mysql -uzabbix-pzabbix zabbix < database/mysql/images.sql
  mysql -uzabbix-pzabbix zabbix < database/mysql/data.sql
  导入数据时一定要注意顺序,一定要先schema.sql image.sqldata.sql,不然会报错
  创建zabbix日志目录,并授权给zabbix用户和组
  建立服务日志目录
  mkdir/var/log/zabbix
  chown zabbix:zabbix/var/log/zabbix/
  拷贝zabbix启动脚本
  cpmisc/init.d/fedora/core/zabbix_* /etc/init.d/
  chmod 755 /etc/init.d/zabbix_*
  修改zabbix_server/zabbix_agentd启动脚本参数
  /etc/init.d/zabbix_server
  BASEDIR=/usr/
  /etc/init.d/zabbix_server
  BASEDIR=/usr/
  也可以用sed更改
  sed -i"s#BASEDIR=/usr/local#BASEDIR=/usr/#g" /etc/init.d/zabbix_server
  sed -i"s#BASEDIR=/usr/local#BASEDIR=/usr/#g" /etc/init.d/zabbix_agentd
  配置zabbix_server.conf文件
  sed更改
  sed -i"s/DBUser\=root/DBUser\=zabbix/g"/etc/zabbix/zabbix_server.conf
  sed -i "/#DBPassword=/aDBPassword=zabbix\n"/etc/zabbix/zabbix_server.conf
  sed -i" s#tmp/zabbix_server.log#var/log/zabbix/zabbix_server.log#g"/etc/zabbix/zabbix_server.conf
  主要的4个参数,vim 更改/etc/zabbix_server.conf文件
  LogFile=/tmp/zabbix_server.log
  DBName=zabbix
  DBUser=zabbix
  DBPassword=zabbix
  DBSocket=/var/lib/mysql/mysql.sock
  配置zabbix_agentd.conf文件
  
  Sed配置
  sed -i"s/Server\=127.0.0.1/Server\=127.0.0.1,192.168.1.89/g"
  /etc/zabbix/zabbix_agentd.conf
  sed -i"s/ServerActive\=127.0.0.1/ServerActive\=192.168.1.89:10051/g"
  /etc/zabbix/zabbix_agentd.conf
  sed -i"s#tmp/zabbix_agentd.log#var/log/zabbix/zabbix_agentd.log#g"
  /etc/zabbix/zabbix_agentd.conf
  sed -i"#UnsafeUserParameters=0#aUnsafeUserParameters=1\n"
  /etc/zabbix/zabbix_agentd.conf
  建议的参考配置
  vim /etc/zabbix/zabbix_agentd.conf
  LogFile=/var/log/zabbix/zabbix_agentd.log
  EnableRemoteCommands=0
  Server=127.0.0.1,192.168.1.89
  StartAgents=8
  ServerActive=192.168.1.89:10051
  Hostname=nat.kx1d.com
  Timeout=30
  Include=/etc/zabbix/zabbix_agentd.conf.d/
  UnsafeUserParameters=1
  拷贝网页文件到网站目录
  cp -r */var/www/html/zabbix/
  chown -R apache.apache /var/www/html/zabbix/
  访问http://zabbix_server-ip/zabbix进行配置
  




页: [1]
查看完整版本: Centos下搭建zabbix监控服务