Manual installation
Parts of this page contains outdated information. Please use the automatic installation via installer.
Introduction
This document describes all necessary steps for an Enterprise Installation of ApiOmat.
Installation on Windows Server 2008 R2 / 2012 / 2012 R2
Preparation
Ports
The following ports need to be opened in the firewall of the application server (Run -> "WF.msc"; or "Control Panel\System and Security\Windows Firewall" -> "Advanced settings"; then "Action" -> "New Rule"):
-
TCP 8080 (HTTP)
-
UDP 123 (NTP)
-
TCP 5701 (Hazelcast)
-
TCP 2022 (FTP)
-
TCP 2300 ( FTP )
Time sync
The server needs to sync its time with a NTP server.
Find out where the server currently gets it's time:
w32tm /query /status
If the source is the local CMOS clock, a NTP server needs to be set.
To check the difference between the local server time and the NTP server time:
w32tm /stripchart /computer:europe.pool.ntp.org /samples:
5
/dataonly
To set up the synchronization with a NTP server, execute the following in a command prompt with elevated rights (Administrator):
w32tm /config /manualpeerlist:europe.pool.ntp.org /syncfromflags:manual /update
Restart the time service:
net stop w32time && net start w32time
Re-check the status with the command mentioned at the beginning. The source should now be europe.pool.ntp.org.
Other
If the external IP of the system is not accessible (test with ping), add the IP to C:\windows\system32\drivers\etc\hosts
Installation
JDK
-
Download newest 1.8 version
-
Install JDK to C:\Java\jdk8 and JRE to C:\Java\jre8
-
Download Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files for JDK/JRE 8 and unpack contents to C:\Java\jdk\jre8\lib\security and C:\Java\jre8\lib\security
-
Create an environment variable for Java:
-
Control Panel\System and Security\System -> Advanced system settings -> environment variables -> system variables -> "New...")
-
Variable name: JAVA_HOME
-
Variable value: C:\Java\jdk8
-
Tomcat
-
Download the newest Tomcat Service Installer from Apache website http://tomcat.apache.org/tomcat-8.5-doc/index.html
-
Choose to install the following components: Tomcat Core, Service Startup, Native
-
Do NOT install the "Manager" or "Host Manager"
-
-
Select JDK instead of JRE path during installation!
-
Install to C:\tomcat8
-
Open C:\tomcat8\conf\server.xml
-
change port if necessary (standard is <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />)
-
Comment in (activate) the SimpleTCPCluster line
-
-
Create a C:\tomcat8\conf\apiomat.yaml (comment in "isEnterpriseInstallation" and "licenseKey")
-
Create a C:\tomcat8\conf\log4j.xml
-
Create a C:\tomcat8\conf\hazelcast.xml
-
Create C:\tomcat8\conf\security.policy file containing:
grant {
permission java.security.AllPermission;
};
Open "Monitor Tomcat" application from start menu
-
Open "Java" tab
-
Check "Use default"
Append the following lines in the Java Options field (don't replace the existing ones):-Djava.io.tmpdir=C:\tomcat8\temp
-ea
-Xms2048m
-Xmx2048m
-XX:MaxPermSize=256m
-Dapiomat.config=C:\tomcat8\conf\apiomat.yaml
-Dlog4j.config=C:\tomcat8\conf\log4j.xml
-Dhazelcast.config=C:\tomcat8\conf\hazelcast.xml
-Djava.security.policy=C:\tomcat8\conf\security.policy
-
In Startup tab, set "mode" to "java"
-
In Shutdown tab, set "mode" to "java"
-
-
Open Services (Run -> "services.msc"; or Task Manager -> Services -> "Services..."). Choose Apache Tomcat 8, Properties, and set Startup type to "Automatic (delayed)"
MongoDB
-
Download MongoDB in the Windows 64bit version http://www.mongodb.org/downloads
-
See this page for supported MongoDB versions: Infrastructure Requirements
-
-
Follow the installation instructions on https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/
-
Start the MongoDB service
Restore Script
Create the following script (e.g. C:\Users\Administrator\restorescript.cmd):
@
echo
off
REM Script
which
copies DB backups to restoreModule folder
@
echo
off
for
/f
"usebackq delims== tokens= 2"
%%i
in
(
`WMIC OS GET localdatetime
/format
:value`
)
do
set
localTime=%%i
set
"YYYY=%localTime:~0,4%"
set
"M=%localTime:~4,1%"
set
"MM=%localTime:~5,1%"
set
"D=%localTime:~6,1%"
set
"DD=%localTime:~7,1%"
if
%M%==0
set
M=
if
%D%==0
set
D=
set
BACKUPDATE=%YYYY%-%D%%DD%-%M%%MM%
set
DUMPDIR=
"C:\mongodb\restoreModule\%BACKUPDATE%"
C:\mongodb\bin\mongodump -o %DUMPDIR%
Set up the scheduler to execute the script on a daily basis:
Control Panel\System and Security\Administrative Tools -> "Task Scheduler"
Select "Action" -> "Create Basic Task" and follow the wizard's instructions.
ApiOmat
Download the following .war files from the build server. If you have them on your local computer, upload them to the remote machine via RDP/VNC (when using Remmina as client on Ubuntu you have to enable a shared folder):
-
yambas.war for the middleware
-
apidocs.war for the REST API documentation
-
docs.war for the ApiOmat documentation
Place these files into the webapp directory of tomcat: C:\tomcat8\webapps. Delete all files and folders in this directory before!
Restart Tomcat. Wait a minute or two to let ApiOmat initialize and start.
When visiting "http://localhost:8080/yambas/rest" from the server itself with a browser, it should display the version of ApiOmat and the IP address it's running on. Depending on your server setup (firewall, DNS, ...) it might also be possible from externally with "http://yourserver.tld:8080/yambas/rest".
Dashboard
The Dashboard is a php Application, so you need to install some dependencies first:
Apache Web Server
Download the Apache Web Server (Apache HTTPD) ZIP archive (e.g. "httpd-2.4.12-win32-VC11.zip" and extract it to "C:\Apache24" (depending on the version).
For the configuration, make a backup of "C:\Apache24\httpd.conf" (e.g. to C:\Apache24\httpd.conf.orig) and then replace the content by this.
To install the service, open a command line and type:
cd
"C:\Apache24\bin"
httpd -k install
PHP
Download the PHP ZIP archive (e.g. "php-5.6.7-Win32-VC11-x86.zip" and extract it to "C:\PHP".
For the configuration, make a backup of "C:\PHP\php.ini" (e.g. to "C:\PHP\php.ini.orig") and then replace the content by this.
PEAR
Download PEAR (e.g. "go-pear.phar"), place it somewhere and run it with PHP. You have to change into the PHP directory before, so that PEAR can use this directory as its default installation directory:
cd
"C:\PHP"
php.exe
"C:\somewhere\go-pear.phar"
Dashboard itself
Download the latest release from the build server.
Place the "dashboard" folder into "C:\Apache24\htdocs". The "dashboard" directory should only contain the following 3 directories: "apiomat", "framework", "requirements".