一、依赖软件清单

软件名称

说明

jdk-6u21-linux-x64.bin

Linux下64位JDK

postgresql-8.4.4-1-linux-x64.bin

OpenNMS所用到的后台数据库

jicmp.tar.gz

JAVA实现ICMP协议

opennms-1.8.3-1

OpenNMS编译、打包所用的源代码

 

二、安装JDK

   1.下载64位linux下JDK,如jdk-6u21-linux-x64.bin,将下载JDK放到/usr目录下

   2. 执行./jdk-6u21-linux-x64.bin命令

   3.修改/etc/profile文件,修改内容如下

 

      # Make path more comfortable

      #

      JAVA_HOME=/usr/jdk1.6.0_21

      export JAVA_HOME

      ...................................................

          done

          unset dir

          PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

          export PATH

 

     目的为设置linux环境变量,完成重启后可通过echo $JAVA_HOME,echo $PATH进行测试,看是否设置成功。

说明:蓝色为增加内容,红色为修改过的内容。

三、PostgreSQL数据安装

     1.下载64位linux下PostgreSQL安装文件,如postgresql-8.4.4-1-linux-x64.bin

     2. 执行./postgresql-8.4.4-1-linux-x64.bin,按照提示一步一步安装即可。在安装过程中会自动创建管理数据库postgres,请按照提示输入密码。

     3. 数据库的启动与停止

         启动#./pg_ctl -D../data start

         停止#./pg_ctl -D../data stop

四、jicmp安装(java实现ICMP协议)

     1. C、C++编译器安装(Linux系统安装盘自带)

 

         #rpm -ivh gcc-4.1.2_20070115-0.29.6.rpm

         #rpm -ivh gcc-c++-4.1.2_20070115-0.29.6.rpm

 

     2. 从http://sourceforge.net/projects/opennms/files/JICMP 

下载jicmp安装包jicmp.tar.gz,执行tar zxf jicmp.tar.gz解压

     3. 执行如下命令。注意:在执行如下命令前需要安装JDK和C、C++编译器

#cd jicmp
        #./configure
        #make
        #make install

 

五、OpenNMS在Windows系统下打包与在Linux下安装

      OpenNMS系统是通过Maven来管理项目的,其编译和打包也是通过Maven命令来进行的。

      1. 从http://www.opennms.org下载OpenNMS源代码

      2. 修改source文件中的pom.xml文件,修改前内容如下:

…………………………………………………………………………………………………….
         <opennms.home>${dist.dir}/${}</opennms.home>
         <dist.dir>${root.dir}/target</dist.dir>
         <>opennms-${project.version}</>
         <install.dir>${opennms.home}</install.dir>/
         ……………………………………………………………………………………………………..

 

修改后内容如下:

 

……………………………………………………………………………………………………
          <opennms.home>${dist.dir}/${}</opennms.home>
          <dist.dir>${root.dir}</dist.dir>
          <>opennms</>
          <install.dir>${opennms.home}</install.dir>
          ………………………………………………………………………………………………….
 
      3. 执行如下命令
 
          >set JAVA_HOME=C:/jdk1.6.0_13
          >set  MAVEN_OPTS=-XX:PermSize=64M -XX:MaxPermSize=256M -Xmx1G
          >maven/bin/mvn install -Dmaven.test.skip.exec=true 
#root.dir为opennms在linux下放置路径,上面是将opennms放在/home目录下。#就上面而言,如果opennms源码放在D:/下,将会在D:/home生成一个#opennms.tar.gz文件。
          >maven/bin/mvn install assembly:attached -Dmaven.test.skip.exec=true -Droot.dir=/home   
       
      4. 就上面root.dir配置而言,应将opennms.tar.gz解压到linux的/home目录下,同时修opennms/etc/opennms-datasources.xml,修改前内容如下:
 
           ............................................................
            <jdbc-data-source name="opennms-admin" 
                    database-name="template1" 
                    class-name="org.postgresql.Driver" 
                    url="jdbc:postgresql://localhost:5432/template1"
                    user-name="postgres"
                    password="" />
            ............................................................
 
修改后内容如下:
         
          ............................................................
          <jdbc-data-source name="opennms-admin" 
                    database-name="postgres" 
                    class-name="org.postgresql.Driver" 
                    url="jdbc:postgresql://localhost:5432/postgres"
                    user-name="postgres"
                    password="123456" />
          .............................................................
 
       
      5. 执行如下命令
 
          #cd  /home/opennms
          #./bin/runjava  -s
          #./bin/install –dis
 
      6. opennms启动与停止
          启动:#./bin/opennms start
          停止:#./bin/opennms stop
          如果启动成功,则可通过http://localhost:8980/opennms访问opennms页面。
七、页面中JS错误修改
将源文件下的/opennms-1.8.3-1/source/opennms-webapp/src/main/webapp/map/index.jsp中的JS引用:
<script language="JavaScript" type="text/javascript" src="js/jquery/jquery.js"></script>
<script language="JavaScript" type="text/javascript" src="js/jquery/jquery.history.js"></script>
改为:
<script language="JavaScript" type="text/javascript" src="extJS/adapter/jquery/jquery.js"></script>
<script language="JavaScript" type="text/javascript" src="extJS/adapter/jquery/jquery.history.js"></script>
index.jsp文件也可以在编译、打包后的opennms/jetty-webapps/opennms/map/index.jsp修改。