安装之前,先建几个目录:
    mkdir tools
    mkdir /usr/local/mysql
    mkdir /usr/local/mysql/data
    mkdri /usr/local/zabbix
    mkdir /usr/local/zabbix
    mkdir /usr/local/php
 第一:安装Nginx'
 1、安装依赖包:
    yum -y install gcc automake autoconf libtool make
    yum -y install gcc gcc-c++
    yum install -y zlib-devel
    yum -y install pcre-devel
    yum  -y install openssl openssl-deve
    tools目录有PCRE库:
    tar -zxvf pcre-8.37.tar.gz
    cd /root/tools/pcre-8.34
    ./configure
    make && make install
    安装zlib库:
    tools目录有zlib库:
    tar -zxvf zlib-1.2.11.tar.gz    
    cd /root/tools/zlib-1.2.11
    ./configure
    make && make install
    安装ssl
    tools目录有ssl库:
    tar -zxvf openssl-1.0.1t.tar.gz   ##先仅仅解压就可以了,不用./configure,下一步会有
    安装Nginx源码包:
    tools目录有nginx包:
    tar -zxvf nginx.1.11.2.tar.gz
    cd /root/tools/nginx.1.11.2
  ./configure--sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=/root/tools/pcre-8.40 --with-zlib=/root/tools/zlib-1.2.11 --with-openssl=/root/tools/openssl-1.1.0e --with-http_stub_status_module
    make && make install
    cd /usr/local/nginx/   
    cd conf
    vim nginx.conf
    加入:server {         
         listen       11099;
         server_name localhost;
         access_log  /usr/local/zabbix/log/php.access.log;
         index index.html index.php index.html;
         root /usr/local/zabbix/php;        location /
         {
                 try_files $uri $uri/ /index.php?$args;
         }        location ~ ^(.+.php)(.*)$ {
                 fastcgi_split_path_info ^(.+.php)(.*)$;
                 include fastcgi.conf;
                 fastcgi_pass  127.0.0.1:9000;
                 fastcgi_index index.php;
                 fastcgi_param  PATH_INFO          $fastcgi_path_info;(这一行改为:fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;详情参见                                                   http://www.jb51.net/article/47916.htm)
        }
     保存退出。
     防火墙设置:
     vi /etc/sysconfig/iptables
     在端口22哪一行下面加入如下行:下面几行包括nginx 坚挺端口11099 ,mysql 3306,zabbix_server 10051  zabbix_agent 10050    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
     -A INPUT -m state --state NEW -m tcp -p tcp --dport 11099 -j ACCEPT
     -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
     -A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT
     然后保存退出,重启防火墙:/etc/init.d/iptables restart   或service iptables restart
     创建zabbix log目录:mkdir /usr/local/zabbix/log
     启动Nginx:
     /usr/local/nginx/sbin/nginx 
     ps -aux |grep nginx
     /usr/local/nginx/sbin/nginx 
     ps -aux |grep nginx
     测试nginx成功没:浏览器输入:http://192.168.1.242   (http://nginx所在Ip)
     到这里,nginx成功安装!!!!
  ###########################################################################################
  第二:安装mysql 
       1、/root/tools/目录下上传mysql-5.7.17.tar.gz 和boost_1_59_0.tar.gz
       解压:tar -zxvf mysql-5.7.17.tar.gz
       cd mysql-5.7.17
       安装其他依赖包: yum install gcc gcc-c++ -y ncurses-devel cmake libaio bison
       cd tools
       mkdir /usr/local/boost
       把boost_1_59_0.tar.gz 解压到目录/usr/local/boost : tar zxf boost_1_59_0.tar.gz -C /usr/local/boo
       cd tools
       groupadd mysql
       useradd mysql -s /sbin/nologin -M -g mysql 
       cd mysql-5.7.17
       cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  -DMYSQL_DATADIR=/usr/local/mysql/data  -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=ON -DMYSQL_TCP_PORT=3316 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci  -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
       make && make install
       期间要等待很长一段时间,慢慢等么么么哒!!!1%#################################100%
       完成后:
       chown -R mysql:mysql .
       chown -R root:root .
       chown -R mysql:mysql mysql
       进到Mysql目录:cd /usr/local/mysql/bin/mysql 
       建立软连接: ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
       执行以下命令生成随机密码:并记下他,待会登陆数据库是要用
       ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
       在执行一下这句话,我也不明白其意思:  ./bin/mysql_ssl_rsa_setup  --datadir=/usr/local/mysql/data/
       cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf  然后按y覆盖
       编辑my.cnf,设置port=3306
       cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld  然后按y覆盖
       启动mysql:/etc/init.d/mysqld start   或  service mysqld start
       启动后登陆Mysql:  mysql -u root -p 回车,在输入刚才记录的随机密码进入数据库
       然后执行:SET PASSWORD = PASSWORD('123456'),在执行:grant all privileges on *.* to 'root'@'%'identified by '123456' with grant option  :%的意思是可以任何地方远程连接
       flush privileges;   
       到此mysql安装完成。
 #########################################################################################################      安装PHP:确保tools目录有:php-5.5.3.tar.gz  bzip2-1.0.6.tar.gz  curl-7.54.1.tar.gz
       解压三个包:tar -zxvf (三个包)
       第一步:yum install libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel -y
               yum install libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64 -y
                      
               yum -y install libxml2*
               cd 到bzip解压目录并编译安装:cd bzip2-1.0.6   make && make install
               cd 到curl解压目录并编译安装: cd curl-7.54.1   ./configure   make && make install
               cd 到php解压目录便宜并安装: cd php-5.5.38
                                            ./configure  --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath
                                            上一行的local下的php目录是之前建好的。
                                             make && make install
                                             等很久一会。安装完成。
              在Php解压目录就是php-5.5.38下面有一个php.ini-development ,把他cp到:php.ini-development /etc/php.ini
              vi php.ini,修改一下内容,但是一下修改的并非是死得,根据实际情况可以做相应的调整
              你需要在你的php.ini文件中添加zend_extension=opcache.so 。还要将opcache.enable=0这行,改为opcache.enable=1             date.timezone = Asia/Shanghai
             max_execution_time = 300
             post_max_size  = 32M
             max_input_time = 300
             memory_limit = 300M
             mbstring.func_overload = 1             在安装目录有个:/usr/local/php/etc/php-fpm.conf.default, 把他在当前目录下重命名为php-fpm.conf,
              即:cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf   否则无法启动php
              在php解压目录有个: /root/tools/php-5.5.38/sapi/fpm/init.d.php-fpm,把他cp到:cp /root/tools/php-5.5.38/sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm
              vim /usr/local/php5.5.38/etc/php-fpm.conf,找到 ;pid = run/php-fpm.pid,把前面的分号注释去掉。
              上一行具体参见:
              chmod +x /etc/init.d/php-fpm
              ###这种启动方式不推荐启动php:service php-fpm start 
              PHP 启动:/usr/local/php/sbin/php-fpm -c /etc/php.ini -y /usr/local/php/etc/php-fpm.conf    注意这里面的php5.5.38是自己之前mkdir自定义的,所以跟你的又肯能不一样,通常是php
              php停止:Killall php-fpm  详细停止启动PHP请参考:
              lsof -i :9000    ###################################################################################################################################
     安装zabbix:
      之前已经建好zabbix目录:mkdir /usr/local/zabbix
      解压zabbix包:tar -zxvf zabbix-3.2.6.tar.gz
      cd  zabbix-3.2.6
      
      yum install -y net-snmp-devel
      groupadd zabbix    useradd -g zabbix -s /sbin/nologin zabbix
      ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy \--with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl
      make && make install
      cd usr/local/zabbix
      chown -R zabbix:zabbix .
      cd 到zabbix解压目录,具体指:/root/tools/zabbix-3.2.6/database/mysql下,里面有三个sql文件schema.sql images.sql data.sql需要导入到mysql数据库名为zabbix里面:具体操作如下:
      cd /root/tools/zabbix-3.2.6/database/mysql 
      ll
      再打开另一个终端:(把zabbix数据库文件导入到mysql具体操作也可以参考网站:http://www.linuxidc.com/Linux/2016-06/132243.htm)
      确保MYSQL运行正常,
      mysql -u root -p
      输入密码
      登入,创建数据库和用户授权:
      create database zabbix character set utf8
      grant all privileges on zabbix.* to zabbix@'%' identified by'123456'
      flush privileges
      exit
      用新建的zabbix用户登陆MYSQL:
      mysql -u zabbix -p
      输入密码:123456
      use zabbix;
      导入:schema.sql images.sql data.sql,这三个文件具体在解压过后的zabbix目录:/root/tools/zabbix-3.2.6/database/mysql   请根据自己的实际情况做稍微的调整
      source /root/tools/zabbix-3.2.6/database/mysql/schema.sql;
      source /root/tools/zabbix-3.2.6/database/mysql/images.sql;
      source /root/tools/zabbix-3.2.6/database/mysql/data.sql;
      show tables; 一共127个表
      exit
      很重要的一部:把zabbix解压目录中的frontends里的PHP目录复制到你zabbix安装目录下:
      ***********cd /root/zabbix-3.2.6/frontends/里面有个php目录,把他复制到usr/local/zabbix/下面:cp -r /root/tools/zabbix-3.2.6/frontends/php  /usr/local/zabbix/}
      
      chown -R zabbix:zabbix .    这句不能成功执行了
      cd到zabbix安装目录:cd /usr/local/zabbix/etc/
      ls -l,  会发现一下文件:
      -rw-r--r--. 1 root root 10242 Jul  6 03:43 zabbix_agentd.conf
      drwxr-xr-x. 2 root root  4096 Jul  6 02:53 zabbix_agentd.conf.d
      -rw-r--r--. 1 root root 15760 Jul  6 02:53 zabbix_proxy.conf
       drwxr-xr-x. 2 root root  4096 Jul  6 02:53 zabbix_proxy.conf.d
      -rw-r--r--. 1 root root 14665 Jul  6 03:11 zabbix_server.conf
      drwxr-xr-x. 2 root root  4096 Jul  6 02:53 zabbix_server.conf.d
      vim里面的zabbix_server.conf,
      需要配置:
      DBName=zabbix
      DBUser=zabbix
      DBPassword=123456
      DBPort=3306   ##这个端口可以不写,因为zabbix默认是mysql的3306
      ln -s /usr/local/mysql/lib/libmysqlclient.so.20 /usr/lib64
      启动zabbix_server:   /usr/local/zabbix/sbin/zabbix_server
      因为我们想通过zabbix监控自己本身,所以在这里进行配置:
      在zabbix安装目录:cd /usr/local/zabbix/etc/下有:zabbix_agentd.conf
      编辑它:
      Server=192.168.1.242 ← ZABBIX服务器的IP地址
      ServerActive=192.168.1.242
      hostname=Zabbix server   ← ZABBIX agentd的host名字,因为我们zabbix_server服务器同时要监控自己,所以这里要写成当前服务器主机的hostname
      保存退出
      启动zabbix_agentd:/usr/local/zabbix/sbin/zabbix_agentd
      lsof -i :10050  lsof -i :10051
      zabbix安装完成
      #################################################
      在浏览器输入:http://192.168.1.242:11099    11099是在nginx.conf里配置的serverlisten 端口。。
      即可看到zabix配置页面。。。
      ########################################################################################################
      zabbix登陆界面默认账号:Admin   密码:zabbix   
      #####################################################################################################
      解决zabbix中文乱码问题:http://zutianbiao.blog.51cto.com/1361296/1364535/     按照文档的操作步骤,zabbix的字体文件在/usr/local/zabbix/php/fonts目录,其中的php目录是本文档中安装zabbix步骤中前面加了*号的那一步。