• 【Vegas原创】Windows 2003下CACTI的安装及配置


    前期准备:

    平台:Windows2003

    需要安装的软件:

    Apache2.0.63 http://www.apache.org/

    PHP5.2.2 http://php.net/downloads.php

    MySQL5.1.50 http://www.mysql.com/downloads/mysql/

    cacti-0.8.7g  http://www.cacti.net/download_cacti.php

    cygwin 1.7.6-1 http://www.cygwin.com/ 需在线安装

    rrdtool-1.2.15 http://www.cacti.net/downloads/

    Spine(Cactid)0.8.7 http://www.cacti.net/downloads/

    net-snmp-5.5 http://net-snmp.sourceforge.net/download.html 

     

    1,安装Apache

    按提示默认安装即可。

    注意:如果有80端口或是8080端口已经占用,请更改Apache安装文件目录conf文件夹的httpd.conf里,listen的端口为808X:

    #
    # Listen: Allows you to bind Apache to specific IP addresses and/or
    # ports, instead of the default. See also the <VirtualHost>
    # directive.
    #
    # Change this to Listen on specific IP addresses as shown below to 
    # prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
    #
    #Listen 12.34.56.78:80
    Listen 8083

      我的80端口和8081端口已被占用,所以Apache的测试页为: http://localhost:8083

      image

      如果系统任务栏中Apache的有小箭头为绿色,而且可以显示以上页面,代表Apache安装成功。

    2,安装PHP:

       1)我将安装路径改为:C:\PHP ,以便以后使用;。

    image

    下一步,选择步骤1安装的Apache版本.我安装的是Apache2.0.63,所以选择Apache2.0.x

      image

      下一步,选择Apache conf文件路径:

    image

    下一步,选择全部安装:

    image

      2)更改php.ini ,路径:C:\PHP\php.ini

    寻找以下内容,取消注释或修改下列内容:

    extension_dir = c:\php\ext
    extension=php_mysql.dll
    extension=php_snmp.dll
    extension=php_sockets.dll
    cgi.force_redirect = 0
    register_argc_argv = On
    safe_mode = Off
    upload_tmp_dir = "C:\PHP\Uploadtemp"
    session.save_path="C:\PHP\Session"
     

     image

    image

    3)在c:\php 文件夹中建Uploadtemp 和Session 子文件夹,并将其权限改为可写;

    3, 更改Apache配置文件,httpd.conf 路径:C:\Program Files\Apache Group\Apache2\conf\httpd.conf

        1), 将 #BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL 部分 替换为:

    PHPIniDir "C:/PHP/"
    LoadModule php5_module "C:/PHP/php5apache2.dll"
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php .html .htm
    DirectoryIndex index.php index.html index.htm

       2), 更改:【请看好位置再改,别把Directory根目录给覆盖掉啦】

    DocumentRoot "C:/http/cacti"
    <Directory "C:/http/cacti">

    image

    3), 注释掉:

    ;extension=php_sam.dll

    4),重启Apache,

    5),在c:/http/cacti目录中新增一test.php文件:

    <?php 
    echo phpinfo(); 
    ?>

      浏览,查看:http://localhost:8083/test.php 

      image

      It’s OK.

      小提示:APACHE的Log地址在:C:\Program Files\Apache Group\Apache2\logs ,如有错误,记得去查!

     

    4,安装MySQL5

      全部按默认装即可,root密码我设为123456。

      将上一步骤中test.php内容改为:

    <?php
    $link=mysql_connect('localhost','root','123456');
    if(!$link) echo "fail";
    else echo "success";
    mysql_close();
    ?>

    测试:  

    image

    OK!

    5,安装CACTI

       1)将cacti压缩包解压到 c:\http\cacti 中

       2)编辑:C:\http\cacti\include\config.php文件:

    /* make sure these values refect your actual database/host/user/password */
    $database_type = "mysql";
    $database_default = "cacti";
    $database_hostname = "localhost";
    $database_username = "cactiuser";
    $database_password = "cacti";
    $database_port = "3306";

    6,导入CACTI数据库

    mysqladmin --user=root --password create cacti
    mysql --user=root --password cacti < C:\http\cacti\cacti.sql
    mysql --user=root --password mysql
     
    mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cacti';
    mysql> flush privileges;
    mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('cacti') WHERE Host = 'localhost' AND User = 'cactiuser';
    mysql> FLUSH PRIVILEGES;
    mysql> exit

    image

     

    7,安装其他软件

    1)安装Cygwin

       直接在线安装即可。如需要在cmd下玩Linux指令,则将C:\cygwin\bin添加到环境变量PATH中即可:)

    2)安装RRDTool

        将ZIP 文件解压缩到C:\rrdtool 文件夹中

    3)安装Net-SNMP

        默认安装net-snmp-5.5.0-1.x86.exe即可。

    4)安装Spine

    将该ZIP 包解压缩到c:\cacti,并编辑spine.conf 文件如下:

    DB_Host localhost
    DB_Database cacti
    DB_User cactiuser
    DB_Pass cacti
    DB_Port 3306

     

     

    8,测试CACTI

      1)运行http://localhost:8083,转到以下页面:

       image

    2)下一步,选择new install

    3)下一步,全部文件found:

    image

    4)FINISH,OK了

    5)登陆页面,输入用户名:admin 密码admin ,更改密码,安装ok

    PS: CACTI LOG位置如下图: 有任何情况,记得查log!

    image

     

    9, 运行CACTI

    1) cmd中,输入:

    php C:\http\cacti\poller.php

    image 报错:(

    解决方法:

    (1)添加环境变量MIBDIRS:

    image

    (2)关掉当前cmd,重新打开新的cmd;

    (3)再来一次:

    php C:\http\cacti\poller.php

      OK了

    2)设置计划任务,并设为每5分钟启动一次,9999小时后过期。

    运行:C:\PHP\php.exe C:\http\htdocs\cacti\poller.php

    起始于:C:\http\htdocs\cacti

    image

    image

    常见故障解决:

    1, CACTI无图或无数据?

      (1)无数据?

    snmpwalk -v 2c -c public yourIP if 

    如果有数据返回,则snmp的数据没有问题。如果出现“Timeout: No Response from ...”之类的错误信息则是snmp设置的问题。

    (2)有图无数据?

        一般这样的情况就是snmp采集的结果有问题。这种情况下,一般也会出现新建的device的Data Query里面的状态总是“ Success [0 Items, 0 Rows]”。通过执行snmp命令来检查:

    snmpwalk -c community -v 2c hostIP if 

    通过结果可以看到是否允许cacti取这些OID的数据。
    eg:

    snmpwalk -c public -v1 localhost .1.3.6.1.2.1.2.2.1.16.2

    2,XP环境下,CACTI 的任何页面都是空白?

    这个问题很郁闷,最后追代码半天,是cacti安装目录lib文件下的database.php的函数 function db_connect_real($host, $user, $pass, $db_name, $db_type, $port = "3306", $retries = 20) 里的:

    if ($cnn->PConnect($hostport,$user,$pass,$db_name)) 此句话报错。原因很简单,mysql连接的问题~~~

    最后,通过tasklist,才发现是php_mysql.dll没有加载~~

          小技巧:查看任务管理器所有进程加载的dll:

             tasklist -m>c:\a.txt

             image

             找到apache.exe,查看相应加载的dll:

             image

          无法加载php_mysql.dll文件,原因是php_mysql.dll依赖于libmysql.dll,libmysql.dll其实在php的根目录是存在的;但之前我在2003里用安装程序装了mysql,可能是mysql里已经有了这样一个文件,且在安装的时候把mysql的bin目录加到了系统的path环境变量里,所以在2003下能正常使用,但在xp里确不行。

          解决的方法:

          把php根目录下面的libmysql.dll文件copy到system32目录下面。

    ================================================================================

    此文章特别鸣谢Stephen的支持~

    参考资料:

    1, Cacti_For_Windows安装手册(抛砖引玉版)

    2, http://www.lingang.gd.cn/?action=show&id=201

    3, http://www.myjoyoo.com/node/20

  • 相关阅读:
    设计模式:代理模式/中介者模式 / 桥接模式/适配器
    手把手教Qt Creator插件开发-QT运行计时器
    使用QT维护工具
    QDir+QTreeWidget (QViewWidget) 展示文件系统树形目录
    NUCLEO-L496ZG+Gokit3S+Rtthead+AT组件组网
    stm32CubeMX 结合Rtthread Env做BSP框架
    某个师兄教会了我,面对着沉重的科研任务,即使做一条咸鱼,也要做一条快乐的有梦想的咸鱼。哈哈哈
    经济金融的应用层______是什么呢___数量计算是底层吗?_____计算机的应用层___软件应用_____二进制运算是最底层__c/cpp都没有到计算了
    究竟是利己推动了社会进步还是利他推动了社会进步____经济学中的利己与利他,斯密在他的经济学着作《国民财富的性质和原因的研究》,究竟是利己推动了社会进步还是利他推动了社会进步
    1. 好好吃药 2. 多接触社会 3. 多跑路 4. 多打炮 【 在ethershock imm.mitbbs.com › 33126389
  • 原文地址:https://www.cnblogs.com/amadeuslee/p/3744133.html
Copyright © 2020-2023  润新知