Installation

Prerequisites

  • Java JDK 1.8
    • The newest release can be found on Oracle's webpage.
  • Oracle TimesTen
    • TimesTen needs to be installed on the machine where Alpaca is to be installed.
    • Follow the official instructions to install TimesTen in a location of your choosing.
  • The IP address of the Alpaca Web system must be in an access control list on the BroadWorks profile server.
    • Login to the Profile Server.
    • In the BWCLI navigate to /Applications/BroadworksFileRepos/NetworkAccessLists/WebDav
    • Add the IP address of the machine running Alpaca's migration tools.

Setup

  • Download the Alpaca Web tarball to the /opt folder on the server.
  • Untar the tarfile
  • Create a symlink from the new Alpaca Web folder to /opt/alpacaweb ln -s alpacaweb-4.2.0 /opt/alpacaweb
  • Create the alpacaweb user with the home directory of /opt/alpacaweb
  • Change the ownership of the /opt/alpacaweb folder and all of it's children
  • Copy the Alpaca license file ecg.license into the conf folder
  • Edit the conf/alpaca.properties.json file to configure the BroadWorks cluster element for the desired BroadWorks install. See the Alpaca configuration guide for further details.
  • (Optional) Edit the conf/alpaca.web.properties.json to configure any additional Alpaca Web settings. See the configuration guide for additional information.
  • The TimesTen lib directory must be set in the runner script. Open runner and update DEFAULT_TT_LIB to the TimesTen lib directory.
  • Copy the alpacaweb file into /etc/init.d
  • Run chkconfig --add alpacaweb and chkconfig alpacaweb on
  • Alpaca Web can then accessed by visiting http://serverip:8080.

Apache Integration

Accessing Alpaca Web through Apache is supported using the AJP connector or HTTP proxy. This allows for access through port 80 as expected from most web applications. The AJP port defaults to 8009 but can be modified using the alpaca.web.ajp.port environment variable.

Configuration for this is typically performed as a .conf file in /etc/httpd/conf.d that connects a virtual host to the Alpaca installation.

Example configuration located at /etc/httpd/conf.d/alpacaweb.e-c-group.com.conf

<VirtualHost *:80>
     ServerName alpacaweb.e-c-group.com

     ProxyPass / http://localhost:8009/
     ProxyPassReverse / http://localhost:8009/

     <!-- Other settings -->

</VirtualHost>

It is also recommend to add or update the ProxyTimeout field. This is typically added in the httpd.conf file in /etc/httpd/conf/.

#
# Proxy Server directives. Uncomment the following lines to
# enable the proxy server:
#
<IfModule mod_proxy.c>
ProxyRequests Off

ProxyTimeout 1200
</IfModule>

Although the mod_proxy module needs to be enabled to support the ProxyPass directive the ProxyRequests field should be off for security purposes. It is also recommended to use name based virtual hosting and deny traffic not specifically targeted for the Call Reporter service.

To accomplish this, enable name based hosting in the httpd.conf file.

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80

Then added a default virtual host that would deny all traffic not specified for the correct server name.

Example file added at conf.d/00-default.conf. <VirtualHost *:80> ServerName default.only <Location /> Order allow,deny Deny from all </Location> </VirtualHost>