#!/bin/bash nginx_install(){ cd /usr/local/src/ wget http://nginx.org/download/nginx-1.8.1.tar.gz tar xf nginx-1.8.1.tar.gz cd /usr/local/src/nginx-1.8.1 yum install gcc-c++ pcre pcre-devel zlib zlib-devel -y ./configure --prefix=/usr/local/nginx --with-pcre make && make install } php_install(){ cd /usr/local/src wget http://am1.php.net/get/php-5.6.36.tar.gz/from/this/mirror tar xf mirror cd /usr/local/src/php-5.6.36 yum install -y gd gd-devel zlib zlib-devel libjpeg libjpeg-devel php-bcmath freetype freetype-devel libpng libpng-devel php-mbstring libxml2 libxml2-devel glibc glibc-devel bzip2 bzip2-devel libcurl libcurl-devel ./configure --prefix=/usr/local/php --enable-mbstring --with-mysq=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-config-file-path=/usr/local/php/etc --with-bz2 --with-curl --enable-sockets --with-gd --enable-calendar --with-zlib --enable-gd-native-ttf --with-iconv --enable-calendar --enable-gd-native-ttf --enable-libxml --with-jpeg-dir --with-png-dir --enable-bcmath --with-freetype-dir --with-gettext --enable-fpm make -j2 && make install cp /usr/local/src/php-5.6.36/php.ini-production /usr/local/php/etc/php.ini cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini } mysql_install(){ cd /usr/local/src/ wget https://downloads.mysql.com/archives/get/file/mysql-5.6.31.tar.gz tar xf mysql-5.6.31.tar.gz yum install cmake gcc gcc-c++ ncurses-devel bison -y base_dir='/usr/local/mysql' data_dir='/data/mysqldb' mkdir -p $data_dir useradd -M -s /sbin/nologin mysql cd /usr/local/src/mysql-5.6.31 cmake . -DCMAKE_INSTALL_PREFIX=$base_dir -DMYSQL_DATADIR=$data_dir -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=$base_dir/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci make -j2 && make install cat >>/etc/my.cnf<<EOF [mysqld] basedir=$base_dir datadir=$data_dir socket=$base_dir/mysql.sock port=3306 character-set-server=utf8 pid-file = /data/mysqldb/mysql.pid log-error = /data/logs/mysql/mysql.err [client] port=3306 socket=$base_dir/mysql.sock EOF chown -R mysql:mysql $base_dir chown -R mysql:mysql $data_dir #initialization /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=$base_dir --datadir=$data_dir #start mysql /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf & sleep 5 /usr/local/mysql/bin/mysqladmin -uroot password '123456' /usr/local/mysql/bin/mysql -uroot -p123456 } zabbix_server_install(){ cd /usr/local/src wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.4.9/zabbix-3.4.9.tar.gz tar xf zabbix-3.4.9.tar.gz yum install net-snmp net-snmp-devel mysql-devel curl curl-devel gcc-c++ -y cd zabbix-3.4.9 ./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent make -j && make install #将php文件拷贝到nginx的根目录下 cp -r /usr/local/src/zabbix-3.4.9/frontends/php /usr/local/nginx/html/zabbix #创建数据库zabbix,用户zabbix /usr/local/mysql/bin/mysql -uroot -p123456 -e "create database zabbix default charset UTF8;" /usr/local/mysql/bin/mysql -uroot -p123456 -e "grant all on zabbix.* to 'zabbix'@'%' identified by '123456';" #导入数据库 cd /usr/local/src/zabbix-3.4.9/database/mysql/ /usr/local/mysql/bin/mysql -uzabbix -p123456 zabbix < schema.sql /usr/local/mysql/bin/mysql -uzabbix -p123456 zabbix < images.sql /usr/local/mysql/bin/mysql -uzabbix -p123456 zabbix < data.sql /usr/local/zabbix/sbin/zabbix_server } nginx_install php_install mysql_install zabbix_server_install