yanfei 发表于 2018-10-1 10:33:35

1、安装配置Cacti+Nginx+PHP+MYSQL



  本实验在CentOS>  所需要的软件包在这里:http://down.51cto.com/data/764169
  本文来自http://better.blog.51cto.com/
1、安装Nginx
  源码包存放目录
  # cd /usr/local/src/
  上传源码包
  # rz
  安装编译工具及依赖库
  # yum install gcc gcc-c++ automake autoconf libtool make
  安装PCRE库
  # tar -zxvf pcre-8.32.tar.gz
  # cd pcre-8.32
  # ./configure && make && make install
  安装zlib库
  # tar -zxvf zlib-1.2.7.tar.gz
  # cd zlib-1.2.7
  # ./configure && make && make install
  解压缩openssl源码包,不用安装仅仅用于安装nginx时指定关联文件
  # tar -zxvf openssl-1.0.1c.tar.gz
  安装nginx
  # tar -zxvf nginx-1.2.8.tar.gz
  # cd nginx-1.2.8
  # ./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.32 --with-zlib=/usr/local/src/zlib-1.2.7 --with-openssl=/usr/local/src/openssl-1.0.1c
  # make && make install
  加入开机启动脚本
  # vim /etc/init.d/nginx
  #!/bin/sh
  #
  # nginx - this script starts and stops the nginx daemon
  #
  # chkconfig: 345 85 15
  # description: Nginx is an HTTP(S) server, HTTP(S) reverse
  # proxy and IMAP/POP3 proxy server
  # processname: nginx
  # config: /usr/local/nginx/nginx.conf
  # pidfile: /usr/local/nginx/nginx.pid
  # Source function library.
  . /etc/init.d/functions
  # Source networking configuration.
  . /etc/sysconfig/network
  if [ -f /etc/sysconfig/nginx ];then
  . /etc/sysconfig/nginx
  fi
  # Check that networking is up.
  [ "$NETWORKING" = "no" ] && exit 0
  nginx="/usr/local/nginx/nginx"
  prog=$(basename $nginx)
  NGINX_CONF_FILE="/usr/local/nginx/nginx.conf"
  [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
  lockfile=/var/lock/subsys/nginx
  start() {
  [ -x $nginx ] || exit 5
  [ -f $NGINX_CONF_FILE ] || exit 6
  echo -n $"Starting $prog: "
  daemon $nginx #-c $NGINX_CONF_FILE
  retval=$?
  echo
  [ $retval -eq 0 ] && touch $lockfile
  return $retval
  }
  stop() {
  echo -n $"Stopping $prog: "
  killproc $prog -QUIT
  retval=$?
  echo
  [ $retval -eq 0 ] && rm -f $lockfile
  return $retval
  killall -9 nginx
  }
  restart() {
  configtest || return $?
  stop
  sleep 1
  start
  }
  reload() {
  configtest || return $?
  echo -n $"Reloading $prog: "
  killproc $nginx -HUP
  RETVAL=$?
  echo
  }
  force_reload() {
  restart
  }
  configtest() {
  $nginx -t #-c $NGINX_CONF_FILE
  }
  rh_status() {
  status $prog
  }
  rh_status_q() {
  rh_status >/dev/null 2>&1
  }
  case "$1" in
  start)
  rh_status_q && exit 0
  $1
  ;;
  stop)
  rh_status_q || exit 0
  $1
  ;;
  restart)
  $1
  ;;
  test)
  configtest
  ;;
  reload)
  rh_status_q || exit 7
  $1
  ;;
  force-reload)
  force_reload
  ;;
  status)
  rh_status
  ;;
  condrestart|try-restart)
  rh_status_q || exit 0
  ;;
  *)
  echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|test}"
  exit 2
  esac
  修改执行权限
  # chmod 755 /etc/init.d/nginx
  启动服务
  # service nginx start
  打开网页查看是否成功
  http://192.168.137.20/

  到此nginx配置完成
  参考链接:http://www.nginx.cn/install
2、安装PHP集成在nginx
  源码包存放目录
  # cd /usr/local/src/
  上传源码包
  # rz
  由于光盘里面有几个依赖库没有所以还要用到互联网上的epel源
  # wget http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
  # rpm -ivh epel-release-5-4.noarch.rpm
  安装编译工具及依赖库
  # yum install gcc automake autoconf libtool make gcc-c++ glibc libxml2 libxml2-devel curlpp curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel mhash-devel libxslt-devel bzip2 bzip2-devel
  # tar -zxvf php-5.4.14.tar.gz
  # cd php-5.4.14
  # ./configure --prefix=/usr/local/php --enable-fpm --with-mcrypt --with-zlib --enable-mbstring --disable-pdo --with-curl --disable-debug --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-gd
  # make && make install
  # cp php.ini-production /usr/local/php/lib/php.ini
  # cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
  # cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
  # vim /etc/init.d/php-fpm
  增加如下
  # chkconfig: 345 84 16
  # chmod 755 /etc/rc.d/init.d/php-fpm
  修改nginx配置文件使其支持fastcgi
  # vim /usr/local/nginx/nginx.conf
  location / {
  root html;
  index index.php index.html index.htm;
  }
  location ~ \.php$ {
  root html;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  include fastcgi_params;
  }
  设置时区
  # vim /usr/local/php/lib/php.ini
  找到date.timezone去掉注释并修改如下
  date.timezone = "Asia/Chongqing"
  新建一个测试页面
  # vim /usr/local/nginx/html/index.php
  
  启动服务
  # service php-fpm start
  # service nginx restart
  访问测试
  http://192.168.137.20/


  这里面的内容在指定
  http://php-fpm.org/wiki/Features
  参考链接:
  http://www.nginx.cn/231.html
3、安装MYSQL
  源码包存放目录
  # cd /usr/local/src/
  上传源码包
  # rz
  安装编译工具及依赖库
  # yum install ncurses libaio gcc gcc-c++ perl ncurses-devel bison
  安装cmake编译工具
  # tar -zxvf cmake-2.8.10.2.tar.gz
  # cd cmake-2.8.10.2
  # ./configure && make && make install
  安装mysql
  # groupadd mysql
  # useradd -g mysql -s /sbin/nologin mysql
  # mkdir -p /data/mysql
  # chown -R mysql:mysql /data/mysql
  # tar -zxvf mysql-5.6.11.tar.gz
  # cd mysql-5.6.11
  # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc
  # make && make install
  # cp ./support-files/my-default.cnf /etc/my.cnf
  # vim /etc/my.cnf
  修改下面内容
  basedir = /usr/local/mysql
  datadir = /data/mysql
  # cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
  # chmod 755 /etc/rc.d/init.d/mysqld
  # vim /etc/rc.d/init.d/mysqld
  修改下面内容
  basedir=/usr/local/mysql
  datadir=/data/mysql
  # chkconfig mysqld on
  # chown mysql:mysql . -R
  # chmod 755 ./scripts/mysql_install_db
  # ./scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql
  # service mysqld start
  # /usr/local/mysql/bin/mysql -uroot –p
  mysql> show databases;
4、安装rrdtool
  源码包存放目录
  # cd /usr/local/src/
  上传源码包
  # rz
  安装依赖库
  # yum install cairo-devel libxml2-devel pango-devel pango libpng-devel freetype freetype-devel libart_lgpl-devel
  编译安装rrdtool
  # tar -zxvf rrdtool-1.4.7.tar.gz
  # cd rrdtool-1.4.7
  # ./configure --prefix=/usr/local/rrdtool && make && make install
5、安装snmp
  # yum install net-snmp-utils php-snmp net-snmp-libs
  # vim /etc/snmp/snmpd.conf
  # chkconfig snmpd on
  注释掉下面2行
  #view systemview included .1.3.6.1.2.1.1
  #view systemview included .1.3.6.1.2.1.25.1.1
  增加如下一行
  view systemview included .1
  完整配置文件如下
  com2sec notConfigUser default public
  group notConfigGroup v1 notConfigUser
  group notConfigGroup v2c notConfigUser
  view systemview included .1
  access notConfigGroup "" any noauth exact systemview none none
  syslocation Unknown (edit /etc/snmp/snmpd.conf)
  syscontact Root(configure /etc/snmp/snmp.local.conf)
  pass .1.3.6.1.4.1.4413.4.1 /usr/bin/ucd5820stat
6、安装cacti
  源码包存放目录
  # cd /usr/local/src/
  上传源码包
  # rz
  开始安装
  # useradd -g users -s /sbin/nologin cactiuser
  # tar -zxvf cacti-0.8.8a.tar.gz
  # cp cacti-0.8.8a /usr/local/nginx/html/cacti –rf
  创建cacti数据库
  # cd /usr/local/mysql/bin/
  # ./mysqladmin --user=root create cacti
  # ./mysql cacti < /usr/local/nginx/html/cacti/cacti.sql
  # ./mysql --user=root mysql

  mysql> GRANT ALL ON cacti.* TO cactiuser@localhost>  mysql> flush privileges;
  mysql> \q
  编辑配置文件
  # vim /usr/local/nginx/html/cacti/include/config.php
  $database_type = &quot;mysql&quot;;
  $database_default = &quot;cacti&quot;;
  $database_hostname = &quot;localhost&quot;;
  $database_username = &quot;cactiuser&quot;;
  $database_password = &quot;123456&quot;;
  $database_port = &quot;3306&quot;;
  $database_ssl = false;
  # cd /usr/local/nginx/html/cacti/
  # chown -R cactiuser rra/ log/
  # cd scripts/
  # chown cactiuser:users *
  # crontab -u cactiuser –e
  */1 * * * * /usr/local/php/bin/php /usr/local/nginx/html/cacti/poller.php > /dev/null 2>&1
  打开浏览器进行初始化安装(第一次登录默认密码帐号admin密码admin)
  http://192.168.137.20/cacti/

  以下内容可忽略,将会在下一次笔记时详细解释
  排错
  # /usr/local/rrdtool/bin/rrdtool fetch localhost_load_1min_5.rrd AVERAGE
  # snmpwalk -v2c -c public 192.168.137.20
  重置管理员密码
  http://wiki.yepn.net/cacti
  shell> mysql -u root -p cacti
  mysql> update user_auth set password=md5('admin') where username='admin';
  Cacti清除日志
  cat /dev/null > cacti.log
  修改轮询时间及绘图时间
  安装cacti-spine支持快速轮询
  http://skyou.blog.51cto.com/2915693/544914
  # yum install net-snmp-devel
  # tar -zxvf cacti-spine-0.8.8a.tar.gz
  # cd cacti-spine-0.8.8a
  # ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
  # ./configure --prefix=/usr/local/cacti-spine --with-snmp=/usr
  # make && make install
  # cp spine.conf.dist /etc/spine.conf
  # vim /etc/spine.conf
  # /usr/local/cacti-spine/bin/spine
  SPINE: Using spine config file
  SPINE: Version 0.8.8a starting
  SPINE: Time: 0.1390 s, Threads: 4, Hosts: 3
  进入http://192.168.137.20/
  设置cacti,选择spine轮询机制运行
  Paths

  Poller

  Cron
  # crontab -u cactiuser -e
  */1 * * * * /usr/local/php/bin/php /usr/local/nginx/html/cacti/poller.php > /dev/null 2>&1
  选中Data Templates → Unix - Logged in Users →

  重建轮询缓存
  # /usr/local/php/bin/php -q /usr/local/nginx/html/cacti/cli/rebuild_poller_cache.php -d
  参考链接
  Cacti安装配置的详细步骤
  http://www.mysqlops.com/2011/06/08/cacti-install-setting.html
  RedHat / CentOS Install and Configure Cacti Network Graphing Tool
  http://www.cyberciti.biz/faq/fedora-rhel-install-cacti-monitoring-rrd-software/
  Install and Configure Cacti
  http://www.cacti.net/downloads/docs/html/unix_configure_cacti.html
  Install RRDTool on Red Hat Enterprise Linux
  http://www.cyberciti.biz/faq/howto-install-rrdtool-on-rhel-linux/
  Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建)
  http://www.iyunv.com/archives/3209.html
  Chapter 1. Installing MySQL from Source
  http://dev.mysql.com/doc/mysql-sourcebuild-excerpt/5.6/en/source-installation.html
  Download, Configure, Compile, And Install MySQL 5.6
  http://www.geeksww.com/tutorials/database_management_systems/mysql/installation/download_configure_compile_and_install_mysql_56.php
  Error Header
  http://php-fpm.org/wiki/Features
  实战Nginx与PHP(FastCGI)的安装、配置与优化
  http://ixdba.blog.51cto.com/2895551/806622
  Nginx安装
  http://www.nginx.cn/install
  nginx php-fpm安装配置
  http://www.nginx.cn/231.html
  CentOS 6.3下MySQL 5.6源码安装
  http://database.51cto.com/art/201304/388452.htm
  Chapter 2. Installing MySQL from a Standard Source Distribution
  http://dev.mysql.com/doc/mysql-sourcebuild-excerpt/5.6/en/installing-source-distribution.html
  Chapter 4. MySQL Source-Configuration Options
  http://dev.mysql.com/doc/mysql-sourcebuild-excerpt/5.6/en/source-configuration-options.html
  Installing RRDTool
  http://martybugs.net/linux/rrdtool/

页: [1]
查看完整版本: 1、安装配置Cacti+Nginx+PHP+MYSQL