Installing and using psiKeds on a GNU/Linux system

  • Configure and start your tomcat system as you used to do
    • For example in Ubuntu 12.04 you can call sudo /usr/share/tomcat7/bin/catalina.sh version for getting the information concerning CATALINA_BASE or CATALINA_HOME. Or you can analyze /etc/default/tomcat7. Or you can insert the environment variables CATALINA_HOME, CATALINA_BASE, etc. into your .bashrc file.
  • Verify the system by opening a browser, calling 127.0.0.1:8080, and getting the Tomcat 'It works' page.
  • Open a (bash) shell and change into your clone of the psiKeds git repository.
  • Type mvn install.
  • Verifiy the build process by getting the mvn success protocol.
  • Copy the directory 'config' into your home directory and rename it to 'psikeds'.
  • Delete all existing queryagent* and resolutionengine* directories and war-files in your tomcat web-app directory (e.g. /var/lib/tomcat7/webapps/ )
  • Copy ResolutionEngine/target/resolutionengine.war and QueryAgent/target/queryagent.war into your tomcat 7 web-app directory
  • Let the war-files be extracted by your running tomcat instance. If tomcat does not automatically extract the war files, then extract them manually by
    • creating the directories queryagent and resolutionengine inside of your tomcat 7 web-app directory
    • changing into the directory queryagent and unzip ../queryagent.war
    • changing into the directory resolutionengine and unzip ../resolutionengine.war
    • making the resulting file trees recrsively readable and writable for the tomcat7 user
    • (re)starting your tomcat instance
  • Verify the installed psikeds system by opening a browser: call 127.0.0.1:8080/queryagent, read the psikeds welcome frontend, and explore the current software stack knowledge base by using the psikeds default gui.

Customizing the psiKeds instance on a GNU/Linux system

For customizing network specific parameters, please use the Tomcat configuration system. Currently, psiKeds itself allows you to modify two specific aspects. First, you can configure where psikeds looks for its own configuration directory. Second, you can determine, which knowledge base is served by your psikeds instance:

Specifying the configuration directory evaluted by the running psiKeds process.

  • Without any modifications psiKeds is looking for a directory named 'psikeds' in the home directory of the user who executes the java application server (Tomcat etc.).
  • For modifying this directory one has to expand the Java options by the 'command' -Dorg.psikeds.config.dir=ABSOLUTE-PATH-TO-THE-COPIED-PSIKEDS-CONFIG-DIRECTORY.
    • For example, in Ubuntu 12.04 you can expand the variable JAVA_OPTS in /etc/default/tomcat7. Or you can expand the bashrc file of the user who executes your java application server

Specifying the knowledge base evaluted by the running psiKeds process.

  • Change into your psiKeds configuration directory
  • Edit knowledgebase-datasource-context.xml and replace the value of the sping bean 'kbXmlSource' [Default: software-stack-demo-kb.xml, located int the psiKeds configuration directory]