Zabbix 2011

  
  
  
  
  1. http://mndtech.blogspot.com/2011/06/zabbix-185-installation-on-centos-56.html 
  2.  
  3.  
  4. rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt 
  5. wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm 
  6. rpm -K rpmforge-release-0.5.2-2.el6.rf.*.rpm 
  7. rpm -i rpmforge-release-0.5.2-2.el6.rf.*.rpm 
  8. yum -y install iksemel* 
  9. wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/1.8.5/zabbix-1.8.5.tar.gz 
  10. yum -y install php-bcmath php-mbstring  curl-devel net-snmp net-snmp-devel 
  11. yum -y install gcc make patch gcc-c++ gcc-g77 autoconf automake 
  12. groupadd zabbix 
  13. useradd zabbix -g zabbix 
  14. tar xvfz zabbix-1.8.5.tar.gz 
  15. cd zabbix-1.8.5 
  16. ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent \ 
  17. --with-mysql --with-net-snmp --with-curl --with-jabber --with-libcurl 
  18. make && make install 
  19. vi /etc/services 
  20. zabbix-agent 10050/tcp Zabbix Agent   
  21. zabbix-agent 10050/udp Zabbix Agent   
  22. zabbix-trapper 10051/tcp Zabbix Trapper   
  23. zabbix-trapper 10051/udp Zabbix Trapper 
  24.  
  25. mysql -u root -p 
  26. create database zabbix character set utf8; 
  27. quit 
  28. cat create/schema/mysql.sql | mysql -u root -p zabbix 
  29. cat create/data/data.sql | mysql -u root -p zabbix 
  30. cat create/data/images_mysql.sql | mysql -u root -p zabbix 
  31. mkdir /var/www/html/zabbix 
  32. cp -a frontends/php/* /var/www/html/zabbix/ 
  33. vim /etc/php.ini 
  34.     max_execution_time = 600 
  35.     max_input_time = 600 
  36.     memory_limit = 256M 
  37.     post_max_size = 32M 
  38.     upload_max_filesize = 16M 
  39.     date.timezone = Asia/Shanghai 
  40.     
  41. /etc/init.d/httpd restart    
  42. http://ip/zabbix/install.php 
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54. vi /etc/php.ini 
  55. date.timezone = "Asia/Shanghai" 
  56. /etc/init.d/httpd restart 
  57. #!/bin/bash 
  58. # manoot ChangeLog: 
  59. # Ver. 0.6.6 Made changes to the version and added some missing dependencies that were never in the original script. 
  60.  
  61. # ZABBIX INSTALL SCRIPT 
  62. # VER. 0.6.4 - http://blog.brendon.com 
  63. # Copyright (c) 2008-2010 Brendon Baumgartner 
  64. #  
  65. # This program is free software; you can redistribute it and/or modify 
  66. # it under the terms of the GNU General Public License as published by 
  67. # the Free Software Foundation; either version 2 of the License, or 
  68. # (at your option) any later version. 
  69. # This program is distributed in the hope that it will be useful, 
  70. # but WITHOUT ANY WARRANTY; without even the implied warranty of 
  71. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
  72. # GNU General Public License for more details. 
  73. # You should have received a copy of the GNU General Public License 
  74. # along with this program; if not, write to the Free Software 
  75. # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 
  76. #===================================================================== 
  77.  
  78. # If necessary, edit these for your system 
  79. DBUSER='root' 
  80. DBPASS='mysqlpwd' 
  81. DBHOST='localhost' 
  82.  
  83. ZBX_VER='1.8.5' 
  84. #ZBX_VER='1.8' 
  85.  
  86. # DO NOT EDIT BELOW THIS LINE 
  87.  
  88. function checkReturn { 
  89.   if [ $1 -ne 0 ]; then 
  90.      echo "fail: $2" 
  91.      echo "$3" 
  92.      exit 
  93.   else 
  94.      echo "pass: $2" 
  95.   fi 
  96.   sleep 3 
  97.  
  98. cat << "eof" 
  99.  
  100. === RUN AT YOUR OWN RISK === 
  101.  
  102. DO NOT RUN ON EXISTING INSTALLATIONS, YOU *WILL* LOSE DATA 
  103.  
  104. This script: 
  105.  * Installs Zabbix 1.8.x on CentOS / Red Hat 5 
  106.  * Drops an existing database 
  107.  * Does not install MySQL; to install type "yum install mysql-server" 
  108.  * Assums a vanilla OS install, though it tries to work around it 
  109.  * Does not install zabbix packages, it uses source from zabbix.com 
  110.  
  111. Press Ctrl-C now if you want to exit 
  112.  
  113. Wait 5 seconds... 
  114. eof 
  115. sleep 5 
  116.  
  117. # check selinux 
  118. #if [ "`sestatus |grep status|awk '{ print $3 }'`" == "enabled" ]; then 
  119. #   checkReturn 1 "Disable SELinux and then retry" 
  120. #fi 
  121.   
  122. # Start mysql if its on this box 
  123. if [ "`rpm -qa |grep mysql-server`" ]; then 
  124.   chkconfig mysqld on 
  125.   service mysqld restart 
  126. fi 
  127.  
  128. # check mysql 
  129. mysql -h${DBHOST} -u${DBUSER} --password=${DBPASS} > /dev/null << eof 
  130. status 
  131. eof 
  132. RETVAL=$? 
  133. checkReturn $RETVAL "basic mysql access" "Install mysql server packages or fix mysql permissions" 
  134.  
  135.  
  136. if [ ! "`rpm -qa|grep fping`" ]; then 
  137.   if [ "`uname -m`" == "x86_64" ]; then 
  138.      rpm -Uhv wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm 
  139.   elif [ "`uname -m`" == "i686" ]; then 
  140.      rpm -Uhv http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm 
  141.   fi 
  142. fi 
  143.  
  144. # dependenices for curl: e2fsprogs-devel zlib-devel libgssapi-devel krb5-devel openssl-devel 
  145. yum -y install gcc make patch gcc-c++ gcc-g77 autoconf automake mysql-devel curl-devel httpd php php-mysql php-bcmath php-gd net-snmp-devel fping e2fsprogs-devel zlib-devel libgssapi-devel krb5-devel openssl-devel libidn-devel iksemel-devel php-xml php-mbstring 
  146. RETVAL=$? 
  147. checkReturn $RETVAL "Package install" 
  148.  
  149. chmod 4755 /usr/sbin/fping 
  150.  
  151. cd /tmp 
  152. rm -rf zabbix-$ZBX_VER 
  153. rm zabbix-$ZBX_VER.tar.gz 
  154. #wget http://superb-east.dl.sourceforge.net/sourceforge/zabbix/zabbix-$ZBX_VER.tar.gz 
  155. wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/$ZBX_VER/zabbix-$ZBX_VER.tar.gz 
  156. RETVAL=$? 
  157. checkReturn $RETVAL "downloading source" "check ZBX_VER variable or mirror might be down" 
  158. tar xzf zabbix-$ZBX_VER.tar.gz 
  159. cd zabbix-$ZBX_VER 
  160.  
  161. ./configure --enable-agent  --enable-ipv6  --enable-proxy  --enable-server --with-mysql --with-libcurl --with-net-snmp --with-jabber 
  162. RETVAL=$? 
  163. checkReturn $RETVAL "Configure" 
  164. # --with-jabber 
  165. # ipmi 
  166. # ldap 
  167.  
  168.  
  169. make 
  170. RETVAL=$? 
  171. checkReturn $RETVAL "Compile" 
  172.  
  173. make install 
  174. RETVAL=$? 
  175. checkReturn $RETVAL "make install" 
  176.  
  177. echo "DROP DATABASE IF EXISTS zabbix;" | mysql -h${DBHOST} -u${DBUSER} --password=${DBPASS} 
  178.  
  179. echo "CREATE DATABASE zabbix;" 
  180. echo "USE zabbix;" 
  181. cat /tmp/zabbix-$ZBX_VER/create/schema/mysql.sql 
  182. cat /tmp/zabbix-$ZBX_VER/create/data/data.sql 
  183. cat /tmp/zabbix-$ZBX_VER/create/data/images_mysql.sql 
  184. ) | mysql -h${DBHOST} -u${DBUSER} --password=${DBPASS} 
  185.  
  186.  
  187. #### BEGIN ZABBIX SERVER & AGENT PROCESS INSTALL & START 
  188. adduser -r -d /var/run/zabbix-server -s /sbin/nologin zabbix 
  189. mkdir -p /etc/zabbix/alert.d 
  190. mkdir -p /var/log/zabbix-server 
  191. mkdir -p /var/log/zabbix-agent 
  192. mkdir -p /var/run/zabbix-server 
  193. mkdir -p /var/run/zabbix-agent 
  194. chown zabbix.zabbix /var/run/zabbix* 
  195. chown zabbix.zabbix /var/log/zabbix* 
  196. cp /tmp/zabbix-$ZBX_VER/misc/conf/zabbix_server.conf /etc/zabbix 
  197. cp /tmp/zabbix-$ZBX_VER/misc/conf/zabbix_agentd.conf /etc/zabbix 
  198.  
  199. cp /tmp/zabbix-$ZBX_VER/misc/init.d/redhat/8.0/zabbix_server /etc/init.d 
  200. cp /tmp/zabbix-$ZBX_VER/misc/init.d/redhat/8.0/zabbix_agentd /etc/init.d 
  201.  
  202.  
  203. cd /etc/zabbix 
  204. patch -p0 -l << "eof" 
  205. --- zabbix_server.conf.orig     2009-12-23 10:06:48.000000000 -0800 
  206. +++ zabbix_server.conf  2009-12-23 10:09:45.000000000 -0800 
  207. @@ -35,7 +35,7 @@ 
  208.  # Default: 
  209.  # LogFile
  210.  
  211. -LogFile=/tmp/zabbix_server.log 
  212. +LogFile=/var/log/zabbix-server/zabbix_server.log 
  213.  
  214.  ### Option: LogFileSize 
  215.  #      Maximum size of log file in MB. 
  216. @@ -63,6 +63,7 @@ 
  217.  # Mandatory: no 
  218.  # Default: 
  219.  # PidFile=/tmp/zabbix_server.pid 
  220. +PidFile=/var/run/zabbix-server/zabbix_server.pid 
  221.  
  222.  ### Option: DBHost 
  223.  #      Database host name. 
  224. @@ -88,7 +89,7 @@ 
  225.  # Default: 
  226.  # DBUser
  227.  
  228. -DBUser=root 
  229. +DBUser=_dbuser_ 
  230.  
  231.  ### Option: DBPassword 
  232.  #      Database password. Ignored for SQLite. 
  233. @@ -97,6 +98,7 @@ 
  234.  # Mandatory: no 
  235.  # Default: 
  236.  # DBPassword
  237. +DBPassword=_dbpass_ 
  238.  
  239.  ### Option: DBSocket 
  240.  #      Path to MySQL socket. 
  241. @@ -316,6 +318,7 @@ 
  242.  # Mandatory: no 
  243.  # Default: 
  244.  # AlertScriptsPath=/home/zabbix/bin/ 
  245. +AlertScriptsPath=/etc/zabbix/alert.d/ 
  246.  
  247.  ### Option: ExternalScripts 
  248.  #      Location of external scripts 
  249. eof 
  250. sed "s/_dbuser_/${DBUSER}/g" /etc/zabbix/zabbix_server.conf > /tmp/mytmp393; mv /tmp/mytmp393 /etc/zabbix/zabbix_server.conf 
  251. sed "s/_dbpass_/${DBPASS}/g" /etc/zabbix/zabbix_server.conf > /tmp/mytmp393; mv /tmp/mytmp393 /etc/zabbix/zabbix_server.conf 
  252.  
  253.  
  254. patch -p0 -l << "eof" 
  255. --- zabbix_agentd.conf.orig     2009-12-23 10:20:25.000000000 -0800 
  256. +++ zabbix_agentd.conf  2009-12-23 10:22:17.000000000 -0800 
  257. @@ -9,6 +9,7 @@ 
  258.  # Mandatory: no 
  259.  # Default: 
  260.  # PidFile=/tmp/zabbix_agentd.pid 
  261. +PidFile=/var/run/zabbix-agent/zabbix_agentd.pid 
  262.  
  263.  ### Option: LogFile 
  264.  #      Name of log file. 
  265. @@ -17,8 +18,7 @@ 
  266.  # Mandatory: no 
  267.  # Default: 
  268.  # LogFile
  269. -LogFile=/tmp/zabbix_agentd.log 
  270. +LogFile=/var/log/zabbix-agent/zabbix_agentd.log 
  271.  
  272.  ### Option: LogFileSize 
  273.  #      Maximum size of log file in MB. 
  274. @@ -56,6 +56,7 @@ 
  275.  # Mandatory: no 
  276.  # Default: 
  277.  # EnableRemoteCommands=0 
  278. +EnableRemoteCommands=1 
  279.  
  280.  ### Option: LogRemoteCommands 
  281.  #      Enable logging of executed shell commands as warnings 
  282. @@ -187,6 +188,7 @@ 
  283.  # Range: 1-30 
  284.  # Default: 
  285.  # Timeout=3 
  286. +Timeout=10 
  287.  
  288.  ### Option: Include 
  289.  #      You may include individual files or all files in a directory in the configuration file. 
  290. eof 
  291.  
  292. cd /etc/init.d 
  293. patch -p0 -l << "eof" 
  294. --- zabbix_server.orig  2008-11-13 22:59:49.000000000 -0800 
  295. +++ zabbix_server       2008-11-13 23:53:58.000000000 -0800 
  296. @@ -14,7 +14,7 @@ 
  297.  [ "${NETWORKING}" = "no" ] && exit 0 
  298.   
  299.  RETVAL=0 
  300. -progdir="/usr/local/zabbix/bin/" 
  301. +progdir="/usr/local/sbin/" 
  302.  prog="zabbix_server" 
  303.   
  304.  start() { 
  305. --- zabbix_agentd.orig  2008-11-14 00:15:24.000000000 -0800 
  306. +++ zabbix_agentd       2008-11-14 00:15:32.000000000 -0800 
  307. @@ -14,7 +14,7 @@ 
  308.  [ "${NETWORKING}" = "no" ] && exit 0 
  309.   
  310.  RETVAL=0 
  311. -progdir="/usr/local/zabbix/bin/" 
  312. +progdir="/usr/local/sbin/" 
  313.  prog="zabbix_agentd" 
  314.   
  315.  start() { 
  316. eof 
  317.  
  318.  
  319. chkconfig zabbix_server on 
  320. chkconfig zabbix_agentd on 
  321. chmod +x /etc/init.d/zabbix_server 
  322. chmod +x /etc/init.d/zabbix_agentd 
  323. service zabbix_server restart 
  324. service zabbix_agentd restart 
  325.  
  326. #### END ZABBIX SERVER & AGENT PROCESS INSTALL & START 
  327.  
  328. #### BEGIN WEB 
  329.  
  330. rm -rf /usr/local/share/zabbix 
  331. mkdir -p /usr/local/share/zabbix 
  332. cp -r /tmp/zabbix-$ZBX_VER/frontends/php/* /usr/local/share/zabbix 
  333.  
  334. echo "Alias /zabbix /usr/local/share/zabbix" > /etc/httpd/conf.d/zabbix.conf 
  335. chkconfig httpd on 
  336. service httpd restart 
  337.  
  338. #sed "s/max_execution_time = 30/max_execution_time = 300/g" /etc/php.ini > /tmp/mytmp393; mv /tmp/mytmp393 /etc/php.ini 
  339.  
  340. #touch /usr/local/share/zabbix/conf/zabbix.conf.php 
  341. #chmod 666 /usr/local/share/zabbix/conf/zabbix.conf.php 
  342.  
  343. cd /usr/local/share/zabbix 
  344. patch -p0 -l << "eof" 
  345. --- include/setup.inc.php.orig  2009-12-23 10:32:58.000000000 -0800 
  346. +++ include/setup.inc.php       2009-12-23 10:34:24.000000000 -0800 
  347. @@ -210,7 +210,7 @@ 
  348.                                         $final_result, 
  349.                                         'PHP max execution time:', 
  350.                                         ini_get('max_execution_time').' sec', 
  351. -                                       ini_get('max_execution_time') >= 300, 
  352. +                                       ini_get('max_execution_time') >= 30, 
  353.                                         '300 sec is a minimal limitation on execution time of PHP scripts')); 
  354.  
  355.                         if(version_compare(phpversion(), '5.1.0', '>=')){ 
  356. @@ -220,7 +220,7 @@ 
  357.                                                 $final_result, 
  358.                                                 'PHP Timezone:', 
  359.                                                 empty($tmezone) ? 'n/a' : $tmezone, 
  360. -                                               !empty($tmezone), 
  361. +                                               empty($tmezone), 
  362.                                                 'Timezone for PHP is not set. Please set "date.timezone" option in php.ini.')); 
  363.                                 unset($tmezone); 
  364.                         } 
  365. --- include/page_header.php.orig        2009-12-23 10:36:53.000000000 -0800 
  366. +++ include/page_header.php     2009-12-23 10:37:55.000000000 -0800 
  367. @@ -444,8 +444,8 @@ 
  368.         if(version_compare(phpversion(), '5.1.0RC1', '>=') && $page['type'] == PAGE_TYPE_HTML){ 
  369.                 $tmezone = ini_get('date.timezone'); 
  370.                 if(empty($tmezone)) { 
  371. -                       info('Timezone for PHP is not set. Please set "date.timezone" option in php.ini.'); 
  372. -                       date_default_timezone_set('UTC'); 
  373. +                       //info('Timezone for PHP is not set. Please set "date.timezone" option in php.ini.'); 
  374. +                       //date_default_timezone_set('UTC'); 
  375.                 } 
  376.                 unset($tmezone); 
  377.         } 
  378. eof 
  379.  
  380. cat > /usr/local/share/zabbix/conf/zabbix.conf.php << "eof" 
  381. <?php 
  382. global $DB; 
  383.  
  384. $DB["TYPE"]             = "MYSQL"; 
  385. $DB["SERVER"]           = "_dbhost_"; 
  386. $DB["PORT"]             = "0"; 
  387. $DB["DATABASE"]         = "zabbix"; 
  388. $DB["USER"]             = "_dbuser_"; 
  389. $DB["PASSWORD"]         = "_dbpass_"; 
  390. $ZBX_SERVER             = "127.0.0.1"
  391. $ZBX_SERVER_PORT        = "10051"
  392.  
  393.  
  394. $IMAGE_FORMAT_DEFAULT   = IMAGE_FORMAT_PNG
  395. ?> 
  396. eof 
  397.  
  398. sed "s/_dbhost_/${DBHOST}/g" /usr/local/share/zabbix/conf/zabbix.conf.php > /tmp/mytmp393; mv /tmp/mytmp393 /usr/local/share/zabbix/conf/zabbix.conf.php 
  399. sed "s/_dbuser_/${DBUSER}/g" /usr/local/share/zabbix/conf/zabbix.conf.php > /tmp/mytmp393; mv /tmp/mytmp393 /usr/local/share/zabbix/conf/zabbix.conf.php 
  400. sed "s/_dbpass_/${DBPASS}/g" /usr/local/share/zabbix/conf/zabbix.conf.php > /tmp/mytmp393; mv /tmp/mytmp393 /usr/local/share/zabbix/conf/zabbix.conf.php 
  401.  
  402.  
  403. cd 
  404. echo "Load http://localhost/zabbix/" 
  405. echo "username: admin" 
  406. echo "password: zabbix" 
  407.   
  408.  
  409. chmod 666 /usr/local/share/zabbix/conf/zabbix.conf.php 

 

本文出自 “The World's NO.1 ..” 博客,谢绝转载!

你可能感兴趣的:(职场,zabbix,休闲)