Installation

In this article:

Requirements

  1. For general information on system requirements see Requirements.
  2. Microsoft Active Directory Service Account for accessing SIM SQL DB (in this article sim-svc-sql)

Important

Please install all requirements before beginning with this guide!

IIS Features

Execute the following command to enable IIS features on the application server:

CMD.EXE /C DISM.EXE /enable-feature /all /online /featureName:IIS-WebServerRole /featureName:IIS-WebServer /featureName:IIS-CommonHttpFeatures /featureName:IIS-StaticContent /featureName:IIS-DefaultDocument /featureName:IIS-DirectoryBrowsing /featureName:IIS-HttpErrors /featureName:IIS-HttpRedirect /featureName:IIS-ApplicationDevelopment /featureName:IIS-ASPNET /featureName:IIS-NetFxExtensibility /featureName:IIS-ASPNET45 /featureName:IIS-NetFxExtensibility45 /featureName:IIS-ASP /featureName:IIS-CGI /featureName:IIS-ISAPIExtensions /featureName:IIS-ISAPIFilter /featureName:IIS-ServerSideIncludes /featureName:IIS-HealthAndDiagnostics /featureName:IIS-HttpLogging /featureName:IIS-LoggingLibraries /featureName:IIS-RequestMonitor /featureName:IIS-HttpTracing /featureName:IIS-CustomLogging /featureName:IIS-ODBCLogging /featureName:IIS-Security /featureName:IIS-BasicAuthentication /featureName:IIS-WindowsAuthentication /featureName:IIS-DigestAuthentication /featureName:IIS-ClientCertificateMappingAuthentication /featureName:IIS-IISCertificateMappingAuthentication /featureName:IIS-URLAuthorization /featureName:IIS-RequestFiltering /featureName:IIS-IPSecurity /featureName:IIS-Performance /featureName:IIS-HttpCompressionStatic /featureName:IIS-HttpCompressionDynamic /featureName:IIS-WebDAV /featureName:IIS-WebServerManagementTools /featureName:IIS-ManagementScriptingTools /featureName:IIS-ManagementService /featureName:IIS-IIS6ManagementCompatibility /featureName:IIS-Metabase /featureName:IIS-WMICompatibility /featureName:IIS-LegacyScripts /featureName:IIS-FTPServer /featureName:IIS-FTPSvc /featureName:IIS-FTPExtensibility /featureName:NetFx4Extended-ASPNET45 /featureName:IIS-ApplicationInit /featureName:IIS-WebSockets /featureName:IIS-CertProvider /featureName:IIS-ManagementConsole /featureName:IIS-LegacySnapIn /norestart

For easy deploymnet: Download the script.

Microsoft SQL Server

For information about supported SQL Server versions see Supported configurations

The installation of the SQL Server will be described in the following steps.

Installation Setup

Start the SQL Server installation setup. Choose the “New SQL Server stand-alone installation…”-Option in the follwing Window:

_images/SQLServerInstallation_00.png

Throughout the installation, please choose the same features as shown below:

_images/SQLServerInstallation_01.png

Name the instance SIM or choose another name:

_images/SQLServerInstallation_02.png

Configure the server as follows:

_images/SQLServerInstallation_03.png

Customize the Database Engine

_images/SQLServerInstallation_04-1.png

Choose the Database Engine called ‘SQL_Latin_General_CP1_CI_AS’:

_images/SQLServerInstallation_04-2.png

Select the ‘mixed mode’-authentification and add your AD service account for SQL (sim-svc-sql) as SQL Server administrator:

_images/SQLServerInstallation_05.png

You have completed the setup!

SQL Server TCP/IP Configuration

Open the SQL Server Configuration Manager, choose ‘SQL Server Network Configuration’ and then ‘Protocols for [Database Name]’. Change the TCP/IP Status to Enabled:

_images/SQLServerInstallation_06.png

Right-click the TCP/IP line and choose ‘Properties’:

_images/SQLServerInstallation_07.png

Choose the tab “IP Adresses” and change the ‘TCP Port’-entry to 1433:

_images/SQLServerInstallation_08.png

Afterwards, navigate to the SQL Server Services and restart the ‘SQL Server ([Database Name]):

_images/SQLServerInstallation_09.png

SIM SQL DB Installation

  1. Create database SIM_v61_R001
  2. Grant SilverMonkey Service Account (sim-svc-sql) “db_owner” rights for the corresponding database
_images/SQLUserMapping.png
  1. Import .SQL file from installation media (.\Database) into SQL Management Studio
  2. Make sure the USE command aims to the correct database created above and execute script

Configure IIS

Create IIS App Pool

  1. Go to IIS Manager and create an AppPool with .NET CLR version set to No Managed Code :
_images/IISAppPool.png
  1. Go into the Advanced Settings of this AppPool and change the Process Model - Identity :
_images/IISAppPoolAdvancedSettings-1.png
  1. Make sure to use a custom Active Directory user account, i.e. the Service Account (sim-svc-sql) which has db_owner rights in the SIM v61 SQL database. This account is only used for accessing the own SQL database. Syntax: DOMAIN\UserName.
_images/IISAppPoolAdvancedSettings-2.png

Create SilverMonkey folder

  1. Create C:\SilverMonkey
  2. Copy files from installation media
  3. Change connection string in file C:\SilverMonkey\v61\Config.xml (XPath: //Configuration/DBConnection)

Create IIS Application

  1. Go to IIS Manager, DefaultWebSite (or other Website, make sure to disable Impersonation). Impersonation is not supported for v61 and must not be inherited from Default Website to IIS application.
_images/DefaultWebsiteAuth.png
  1. Add application, choose SIM AppPool (created above) and target to C:\SilverMonkey\Web\R001.

Hint

The alias defines the later URL: http://HOSTNAME/ALIAS

_images/IISApplicationCreate.png

Install Windows Service

  1. Go to C:\SilverMonkey\v61\WinService
  2. Execute Install.cmd with administrative rights
  3. Open services.msc and make sure that the Windows Service SIMv61Service is installed
_images/SimWinService_01.png
  1. Go into the properties of this service and change the Log On Account to the Service Account. This service account is used for the execution of every plugin run by the web service.
_images/SimWinService_02.png
  1. To optimize failure tollerance, please configure “Recovery” tab like the following:
_images/SIMWinServiceRecoveryConfig.PNG

Test Installation

Note

For testing API download&install Postman: https://www.getpostman.com/apps

Test Query

Important

Try restarting the IIS Application/AppPool if you dont get the expected results!

  1. Start Postman
  2. Select GET as option
  3. Enter URL: http://SERVERNAME/APP_NAME/api/query?uniquename=TestQuery
  4. Hit execute

The following result should appear:

_images/APITestQuery.png

Test Queue

Important

Try restarting the IIS Application/AppPool if you dont get the expected results!

  1. Start Postman
  2. Select POST as option
  3. Enter URL: http://SERVERNAME/APP_NAME/api/Queue
  4. Add following code to body:
{"definition": "<Definition><Plugin>TestPlugin</Plugin><Data><ExampleString>HelloWorld</ExampleString></Data></Definition>"}
  1. Hit execute

The following result should appear:

_images/APITestQueue.png

Note

For testing Queue use the Test Plugin and Check in C:Programmdata for the testfile

_images/APITestQueuePluginResult1.png