Difference between revisions of "Usage Tracker Installation"

From Gcube Wiki
Jump to: navigation, search
(Install)
Line 17: Line 17:
 
Once you've downloaded the package format suitable for your system, the Usage Tracker can be installed by running:
 
Once you've downloaded the package format suitable for your system, the Usage Tracker can be installed by running:
  
* <pre>dpkg -i venusc-mab-usagetracker-«version».deb</pre>
+
* <pre>yum install org.gcube.accounting.usagetracker-«version».«arch».rpm</pre>
 
+
or
+
 
+
* <pre>rpm -i venusc-mab-usagetracker-«version».noarch.rpm</pre>
+
  
 
==Prerequisites==
 
==Prerequisites==

Revision as of 10:40, 25 October 2013

System requirements

  • Java runtime environment (openjdk)
  • Apache Tomcat version 5.0 or higher

Download

Binaries of the Usage Tracker are available in .deb and .rpm format. Packages can be downloaded from:

Install

Once you've downloaded the package format suitable for your system, the Usage Tracker can be installed by running:

  • yum install org.gcube.accounting.usagetracker-«version».«arch».rpm

Prerequisites

The Usage Tracker adopts a document-oriented database (MongoDB in the current implementation) to persist records. A running instance of MongoDB is expected by the Usage Tracker. The instance can either run on the local machine or a remote one.

Configuration

Configuration of the usage tracker is entirely property-file-based. The pre-defined location for configuration files is /opt/gcube-accounting/etc/. Two configuration files are expected by the usage tracker:

/opt/gcube-accounting/etc/gcube-accounting-usagetracker.properties
/opt/gcube-accounting/etc/gcube-accounting-usagetracker-log4j.properties

The first one provides connection parameters (e.g. location, db name, username, password) for the records database. The second one just configures logging facilities.

You should disable the Usage Tracker internal security by editing the first configuration file in this way:

authn.enabled = false
authz.enabled = false


Besides, you should configure the infrastructure properties related to the Message Broker instance (in particulare endpoint and scopes) and you should enable/disable the use of the remote database instance (MongoDB cluster).

infrastructure.broker = tcp://192.168.125.190:61616
infrastructure.scopes = /testing
infrastructure.remoteDB = false

Deploying the Usage Tracker in Tomcat

The service should be deployed automatically during installation. However, in case of trouble or manual (un)deployment, it can be done by:

  • copying the context file (i.e. /opt/gcube-accounting/etc/usagetracker.xml) to /etc/tomcat«ver»/conf/Catalina/localhost/
  • make sure Tomcat is up and running

Testing your installation

Connect to http://<deployhost>:8080/usagetracker/rest/usagerecords you should get an empty XML result:

<rawUsagerecords/>

IS integration

The Usage Tracker service must be registered as a Runtime Resource on the IS, using the Resources Management portlet. Below is an example of the resource configuration:


<Resource version="...">
    
   <ID>...</ID>
    
   <Type>RuntimeResource</Type>
    
   <Scopes>
        
      <Scope>...</Scope>
    
   </Scopes>
    
   <Profile>
        
      <Category>Service</Category>
        
      <Name>UsageTracker</Name>
        
      <Description />
        
      <Platform>
            
         <Name>UsageTracker</Name>
            
         <Version>2</Version>
            
         <MinorVersion>2</MinorVersion>
            
         <RevisionVersion>2</RevisionVersion>
            
         <BuildVersion>2</BuildVersion>
        
      </Platform>
        
      <RunTime>
            
         <HostedOn>hostname</HostedOn>
            
         <GHN UniqueID="" />
            
         <Status>READY</Status>
        
      </RunTime>
        
      <AccessPoint>
            
         <Description>UsageTracker Interface</Description>
            
         <Interface>
                
            <Endpoint EntryName="usageTrackerInterface">http://hostname:8080/usagetracker/rest</Endpoint>
            
         </Interface>
            
         <AccessData>
                
            <Username />
                
            <Password>...</Password>
            
         </AccessData>
        
      </AccessPoint>
    
   </Profile>

</Resource>