zabbix自動安裝server(shell)

來源:互聯網
上載者:User

標籤:zabbix   shell   

#!/bin/bashDBUSER=‘root‘DBPASS=‘‘DBHOST=‘localhost‘ZBX_VER=‘2.0.1‘function checkReturn {  if [ $1 -ne 0 ]; then     echo "fail: $2"     echo "$3"     exit  else     echo "pass: $2"  fi  sleep 3}cat << "eof"=== RUN AT YOUR OWN RISK ===DO NOT RUN ON EXISTING INSTALLATIONS, YOU *WILL* LOSE DATAThis script: * Installs Zabbix 2.0.x on CentOS / Red Hat 6 * Drops an existing database * Does not install MySQL; to install type "yum install mysql-server" * Assums a vanilla OS install, though it tries to work around it * Does not install zabbix packages, it uses source from zabbix.com * Disables firewalleofread -p ‘Type "go" to continue: ‘ RESPif [ "$RESP" != "go" ]; then  echo "Sorry to hear it"  exitelse  echo "Lets do this..."fi# check selinuxif [ "`sestatus |grep status|awk ‘{ print $3 }‘`" == "enabled" ]; then   checkReturn 1 "Disable SELinux and then retry"fi#disable firewallchkconfig iptables off/etc/init.d/iptables stop  # Start mysql if its on this boxif [ "`rpm -qa |grep mysql-server`" ]; then  chkconfig mysqld on  service mysqld restartfi# check mysqlmysql -h${DBHOST} -u${DBUSER} --password=${DBPASS} > /dev/null << eofstatuseofRETVAL=$?checkReturn $RETVAL "basic mysql access" "Install mysql server packages or fix mysql permissions"if [ ! "`rpm -qa|grep fping`" ]; then  if [ "`uname -m`" == "x86_64" ]; then     rpm -Uhv http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm  elif [ "`uname -m`" == "i686" ]; then     rpm -Uhv http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm  fifi# removed  libidn-devel iksemel-devel # dependenices for curl: e2fsprogs-devel zlib-devel libgssapi-devel krb5-devel openssl-develyum -y install gcc mysql-devel curl-devel httpd php php-mysql php-bcmath php-gd php-xml php-mbstring net-snmp-devel fping e2fsprogs-devel zlib-devel libgssapi-devel krb5-devel openssl-devel wget libssh2-devel openldap-devel make patchRETVAL=$?checkReturn $RETVAL "Package install"chmod 4755 /usr/sbin/fpingcd /tmp# jabber packages are incomplete at rpmforge (iksemel)# BEGIN pkgs for jabber (--with-jabber)#wget http://dl.atrpms.net/el6-x86_64/atrpms/stable/libiksemel3-1.4-2_2.el6.x86_64.rpm#rpm -i /tmp/libiksemel3-1.4-2_2.el6.x86_64.rpm#wget http://dl.atrpms.net/el6-x86_64/atrpms/stable/iksemel-1.4-2_2.el6.x86_64.rpm#rpm -i /tmp/iksemel-1.4-2_2.el6.x86_64.rpm#wget http://dl.atrpms.net/el6-x86_64/atrpms/stable/iksemel-devel-1.4-2_2.el6.x86_64.rpm#rpm -i /tmp/iksemel-devel-1.4-2_2.el6.x86_64.rpm# END pkgs for jabberrm -rf /etc/zabbixrm -rf zabbix-$ZBX_VERrm zabbix-$ZBX_VER.tar.gz#wget http://sourceforge.net/projects/zabbix/files/latest/download?source=files#wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/$ZBX_VER/zabbix-$ZBX_VER.tar.gzwget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/$ZBX_VER/zabbix-$ZBX_VER.tar.gzRETVAL=$?checkReturn $RETVAL "downloading source" "check ZBX_VER variable or mirror might be down"tar xzf zabbix-$ZBX_VER.tar.gzcd zabbix-$ZBX_VER./configure --enable-agent  --enable-ipv6  --enable-proxy  --enable-server --with-mysql --with-libcurl --with-net-snmp --with-ssh2 --with-ldap --sysconfdir=/etc/zabbixRETVAL=$?checkReturn $RETVAL "Configure"# --with-jabber# ipmi# ldapmakeRETVAL=$?checkReturn $RETVAL "Compile"make installRETVAL=$?checkReturn $RETVAL "make install"echo "DROP DATABASE IF EXISTS zabbix;" | mysql -h${DBHOST} -u${DBUSER} --password=${DBPASS}(echo "CREATE DATABASE zabbix;"echo "USE zabbix;"cat /tmp/zabbix-$ZBX_VER/database/mysql/schema.sqlcat /tmp/zabbix-$ZBX_VER/database/mysql/images.sqlcat /tmp/zabbix-$ZBX_VER/database/mysql/data.sql) | mysql -h${DBHOST} -u${DBUSER} --password=${DBPASS}#### BEGIN ZABBIX SERVER & AGENT PROCESS INSTALL & STARTadduser -r -d /var/run/zabbix-server -s /sbin/nologin zabbix#mkdir -p /etc/zabbix/alert.dmkdir -p /var/log/zabbix-servermkdir -p /var/log/zabbix-agentmkdir -p /var/run/zabbix-servermkdir -p /var/run/zabbix-agentchown zabbix.zabbix /var/run/zabbix*chown zabbix.zabbix /var/log/zabbix*#cp /tmp/zabbix-$ZBX_VER/misc/conf/zabbix_server.conf /etc/zabbix#cp /tmp/zabbix-$ZBX_VER/misc/conf/zabbix_agentd.conf /etc/zabbixcp /tmp/zabbix-$ZBX_VER/misc/init.d/fedora/core5/zabbix_server /etc/init.dcp /tmp/zabbix-$ZBX_VER/misc/init.d/fedora/core5/zabbix_agentd /etc/init.dcd /etc/zabbixpatch -p0 -l << "eof"--- orig/zabbix_server.conf     2012-07-01 18:30:00.585612301 -0700+++ zabbix_server.conf  2012-07-01 18:58:15.181605999 -0700@@ -36,7 +36,7 @@ # Default: # LogFile=-LogFile=/tmp/zabbix_server.log+LogFile=/var/log/zabbix-server/zabbix_server.log ### Option: LogFileSize #      Maximum size of log file in MB.@@ -65,7 +65,7 @@ # # Mandatory: no # Default:-# PidFile=/tmp/zabbix_server.pid+PidFile=/var/run/zabbix-server/zabbix_server.pid ### Option: DBHost #      Database host name.@@ -100,7 +100,7 @@ # Default: # DBUser=-DBUser=root+DBUser=_dbuser_ ### Option: DBPassword #      Database password. Ignored for SQLite.@@ -109,6 +109,7 @@ # Mandatory: no # Default: # DBPassword=+DBPassword=_dbpass_ ### Option: DBSocket #      Path to MySQL socket.eofsed "s/_dbuser_/${DBUSER}/g" /etc/zabbix/zabbix_server.conf > /tmp/mytmp393; mv /tmp/mytmp393 /etc/zabbix/zabbix_server.confsed "s/_dbpass_/${DBPASS}/g" /etc/zabbix/zabbix_server.conf > /tmp/mytmp393; mv /tmp/mytmp393 /etc/zabbix/zabbix_server.confpatch -p0 -l << "eof"--- orig/zabbix_agentd.conf     2012-07-01 18:30:00.585612301 -0700+++ zabbix_agentd.conf  2012-07-01 18:55:40.566660188 -0700@@ -9,6 +9,7 @@ # Mandatory: no # Default: # PidFile=/tmp/zabbix_agentd.pid+PidFile=/var/run/zabbix-agent/zabbix_agentd.pid ### Option: LogFile #      Name of log file.@@ -18,7 +19,7 @@ # Default: # LogFile=-LogFile=/tmp/zabbix_agentd.log+LogFile=/var/log/zabbix-agent/zabbix_agentd.log ### Option: LogFileSize #      Maximum size of log file in MB.@@ -57,6 +58,7 @@ # Mandatory: no # Default: # EnableRemoteCommands=0+EnableRemoteCommands=1 ### Option: LogRemoteCommands #      Enable logging of executed shell commands as warnings.eofchkconfig zabbix_server onchkconfig zabbix_agentd onchmod +x /etc/init.d/zabbix_serverchmod +x /etc/init.d/zabbix_agentdservice zabbix_server restartservice zabbix_agentd restart#### END ZABBIX SERVER & AGENT PROCESS INSTALL & START#### BEGIN WEBrm -rf /usr/local/share/zabbixmkdir -p /usr/local/share/zabbixcp -r /tmp/zabbix-$ZBX_VER/frontends/php/* /usr/local/share/zabbixecho "Alias /zabbix /usr/local/share/zabbix" > /etc/httpd/conf.d/zabbix.confecho "post_max_size = 16M" > /etc/php.d/local_zabbix.iniecho "max_execution_time = 300" >> /etc/php.d/local_zabbix.iniecho "max_input_time = 300" >> /etc/php.d/local_zabbix.ini. /etc/sysconfig/clockecho "date.timezone = $ZONE" >>  /etc/php.d/local_zabbix.inichkconfig httpd onservice httpd restart#sed "s/max_execution_time = 30/max_execution_time = 300/g" /etc/php.ini > /tmp/mytmp393; mv /tmp/mytmp393 /etc/php.ini#touch /usr/local/share/zabbix/conf/zabbix.conf.php#chmod 666 /usr/local/share/zabbix/conf/zabbix.conf.phpcat > /usr/local/share/zabbix/conf/zabbix.conf.php << "eof"<?php// Zabbix GUI configuration fileglobal $DB;$DB[‘TYPE‘]             = "MYSQL";$DB[‘SERVER‘]           = "_dbhost_";$DB[‘PORT‘]             = "0";$DB[‘DATABASE‘]         = "zabbix";$DB[‘USER‘]             = "_dbuser_";$DB[‘PASSWORD‘]         = "_dbpass_";// SCHEMA is relevant only for IBM_DB2 database$DB[‘SCHEMA‘]                   = ‘‘;$ZBX_SERVER             = "127.0.0.1";$ZBX_SERVER_PORT        = "10051";$ZBX_SERVER_NAME= ‘myzabbix‘;$IMAGE_FORMAT_DEFAULT   = IMAGE_FORMAT_PNG;?>eofsed "s/_dbhost_/${DBHOST}/g" /usr/local/share/zabbix/conf/zabbix.conf.php > /tmp/mytmp393; mv /tmp/mytmp393 /usr/local/share/zabbix/conf/zabbix.conf.phpsed "s/_dbuser_/${DBUSER}/g" /usr/local/share/zabbix/conf/zabbix.conf.php > /tmp/mytmp393; mv /tmp/mytmp393 /usr/local/share/zabbix/conf/zabbix.conf.phpsed "s/_dbpass_/${DBPASS}/g" /usr/local/share/zabbix/conf/zabbix.conf.php > /tmp/mytmp393; mv /tmp/mytmp393 /usr/local/share/zabbix/conf/zabbix.conf.phpcd echo "Load http://localhost/zabbix/"echo "username: admin"echo "password: zabbix"


本文出自 “muzinan的技術部落格” 部落格,謝絕轉載!

zabbix自動安裝server(shell)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.