In this article
This is a reference list of the various Forsta Roles, and the available Octopus variables. The same information is available when running through the Horizons Octopus setup process.
Server Roles
Role name | Required/Optional | Description |
|---|---|---|
Authoring | Required | Professional Authoring UI, SurveyEngine Test Modes, Survey Dashboard, Panel UI and other client applications. |
Batch | Required | TaskSystem and Microservice Agents. Usually installed on one or more standalone machines. |
BitStreamServer | Required | Usually installed on one or more standalone servers or machines with the Batch role. |
CachingService | Required | Caching service. Usually installed on machines with the Authoring role. |
CapiSynchronization | Deprecated | This role is not used anymore and can be removed. |
ClickOnce | Optional | Only required for CAPI. Used to host CAPI download files. Usually installed on machines with the Authoring, Reportal or Deployment role. |
Deployment | Required | Surveys, Short Url redirects and Panel UI. |
| Digital Feedback | Optional | New Digital Feedback service. |
DiscoveryAnalytics | Optional | Must be installed on machines with the Reportal role. Requires Hub. |
ExternalQuickTest | Optional | Support for external quick test. Should be installed on machines that have sticky sessions like the Authoring role. |
HierarchyManagement | Optional | Must be installed on machines with the Authoring role. Requires Hub. |
HubUI | Optional | Must be installed on machines with the Authoring role. Required for Hub. |
IdentityService | Required | Identity Service used for authentication of users and applications. Can be installed on standalone servers. |
MetadataApi | Required | Microservices with internal API's. |
PowerMTA | Optional | Only used if customer has purchased the PowerMTA software and Forsta Add-on. |
Reportal | Required | Reportal and reporting services. |
SearchService | Required | This role should be assigned to only ONE machine per environment. Install on standalone machine or together with SiteBootstrapper role. |
SiteBootstrapper | Required | This role should be assigned to only ONE machine per environment. Used to run deployment steps that only execute on one machine. e.g. system database(s) creation/update and updating of site config values specified as Octopus variables. Also used for Default Templates. |
SmtpEventSink | Optional/Required | Required if not using a 3rd party email service like PowerMTA. Add this role to all machines that also have the Batch role. |
| Studio | Optional | New Studio UI. Must be installed on machines with the Authoring role. |
SurveyDesigner | Optional | New Survey Designer UI. Must be installed on machines with the Authoring role. |
WebService | Required | Used for public web services and API's. Some of these services and API's are also accessed from internal Forsta applications and services. |
Octopus Variables
These variables are controlled via Octopus. Generally, Octopus will deploy these variables and overwrite conflicting settings on the site. You can test a setting by configuring it directly on the site, and then make it persistent by updating the Octopus variable.
Important
If you change a variable here, you will need to update the snapshot variables for the release and force redeploy of the packages. If not, the updated variable will be persisted when the next release is loaded onto the Octopus server.
Name | Example Value | Explanation |
|---|---|---|
Confirmit.AppInit.Enabled | TRUE | Sets whether or not the deployment script will try to start up (prewarm) the application pool |
Confirmit.AppInit.SurveyEngine.InitPage | /warmup | This page is called by the AppInit function in IIS for prewarming the Survey Engine |
| Confirmit.Connect.Dynamics.AppCertificate | ***** | Needs to be set as Sensitive Variable |
| Confirmit.Connect.Salesforce.AppCertificate | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.Server.ConfirmitUrl.DataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the Forsta ShortURL database |
Confirmit.Database.Server.ConfirmitUrl.LogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the Forsta ShortURL database |
Confirmit.Database.Server.ConfirmitUrl.ServerName | confirm_system | SQL instance name hosting the Forsta ShortURL database |
| Confirmit.Database.Server.DigitalFeedback.DataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the Forsta Digitalfeedback database |
| Confirmit.Database.Server.DigitalFeedback.LogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the Forsta Digitalfeedback database |
| Confirmit.Database.Server.DigitalFeedback.ServerName | confirm_system | SQL instance name hosting the Forsta Digitalfeedback database |
Confirmit.Database.Server.DocumentStore.DataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the Forsta Documentstore database |
Confirmit.Database.Server.DocumentStore.LogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the Forsta Documentstore database |
Confirmit.Database.Server.DocumentStore.ServerName | confirm_system | SQL instance name hosting the Forsta Documentstore database |
Confirmit.Database.Server.NodeStore.DataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the Forsta Nodestore database |
Confirmit.Database.Server.NodeStore.LogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the Forsta Nodestore database |
Confirmit.Database.Server.NodeStore.ServerName | confirm_system | SQL instance name hosting the Forsta Nodestore database |
Confirmit.Database.Server.Reporting.DataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the Forsta Hub database |
Confirmit.Database.Server.Reporting.LogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the Forsta Hub database |
Confirmit.Database.Server.Reporting.ServerName | confirm_hub1 | SQL instance name hosting the Forsta Hub database |
Confirmit.Database.Server.Search.DataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the Forsta Search Service database |
Confirmit.Database.Server.Search.LogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the Forsta Search Service database |
Confirmit.Database.Server.Search.ServerName | confirm_system | SQL instance name hosting the Forsta Search Service database. |
Confirmit.Database.Server.Survey.DataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the Forsta Survey databases. |
Confirmit.Database.Server.Survey.DataPathN | d:\confirmit_sql_data | SQL Data (mdf) drive for additional Forsta Survey databases where 'N' is the instance ID (e.g. confirmit_surveys1, confirmit_surveys2 ...) |
Confirmit.Database.Server.Survey.LogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the Forsta Survey databases |
Confirmit.Database.Server.Survey.LogPathN | e:\confirmit_sql_log | SQL Log (ldf) drive for additional Forsta Survey databases where 'N' is the instance ID (e.g. confirmit_surveys1, confirmit_surveys2 ...) |
Confirmit.Database.Server.Survey.ServerName | confirmit_surveys | SQL instance name hosting the Forsta Survey databases |
Confirmit.Database.Server.Survey.ServerNameN | confirmit_surveys2 | SQL instance name hosting additional Forsta Survey databases where 'N' is the instance ID (e.g. confirmit_surveys1, confirmit_surveys2 ...) |
Confirmit.Database.Server.System.DataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the Forsta System databases |
Confirmit.Database.Server.System.LogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the Forsta System databases |
Confirmit.Database.Server.System.ServerName | confirm_system | SQL instance name hosting the Forsta Search Service database |
Confirmit.Database.User.AspState.Name | ConfirmitASPState | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.AspState.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.AuthorC.Name | ConfirmitAuthor | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.AuthorC.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.ConfirmitUrl.Name | ConfirmitURL | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.ConfirmitUrl.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.DeployC.Name | ConfirmitDeployer | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.DeployC.Password | ***** | Needs to be set as Sensitive Variable |
| Confirmit.Database.User.DigitalFeedback.Name | ConfirmitDeployer | SQL User used by the application. Generated automatically during deployment if it does not exist. |
| Confirmit.Database.User.DigitalFeedback.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.DocumentStore.Name | ConfirmitDeployer | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.DocumentStore.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.Helper.Name | ConfirmitHelper | A SQL user used during deployment steps. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.Helper.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.NodeStore.Name | ConfirmitDeployer | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.NodeStore.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.ReportC.Name | ConfirmitReport | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.ReportC.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.Reporting.Name | ConfirmitDeploy | The SQL User used for the Forsta Hub instance. Generated automatically during deployment if it does not exist. Note: These values will be used for all Hub instances unless there is an override. To override, specify variables Confirmit.Database.User.Reporting.Name1 and Confirmit.Database.User.Reporting.Password1 for the first additional instance, then Name2/Password2 for the second additional instance, etc. |
Confirmit.Database.User.Reporting.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.Search.Name | ConfirmitDeploy | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.Search.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.SurveyC.Name | ConfirmitSurvey | SQL User used by the application. Generated automatically during deployment if it does not exist. |
Confirmit.Database.User.SurveyC.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.Surveys.Name | SA | The SQL User used for accessing Forsta Survey databases. Note: These values will be used for all Survey instances unless there is an override. To override, specify variables Confirmit.Database.User.Surveys.Name1 and Confirmit.Database.User.Surveys.Password1 for the first additional instance, then Name2/Password2 for the second additional instance, etc. |
Confirmit.Database.User.Surveys.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Database.User.SystemAdmin.Name | SA | The SQL User used for administrative tasks on databases. This user needs SA permissions, and needs to exist on the main system instance before installation. |
Confirmit.Database.User.SystemAdmin.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Deploy.WindowSize.Authoring | 2 | The amount of servers to deploy the Authoring role to at the same time. Use with caution and ensure that enough servers are available at all time to avoid downtime during deployment. |
Confirmit.Deploy.WindowSize.Reportal | 2 | The amount of servers to deploy the Reportal role to at the same time. Use with caution and ensure that enough servers are available at all time to avoid downtime during deployment. |
Confirmit.Deploy.WindowSize.SurveyEngine | 1 | The amount of servers to deploy the Deployment (data collection) role to at the same time. Use with caution and ensure that enough servers are available at all time to avoid downtime during deployment. |
| Confirmit.IsAlive.FilePath | isalive.htm | Path to the htm file used for the load balancer health check |
Confirmit.IsAlive.Offload.Delay | 20 | The period in seconds the deployment script will wait for traffic to bleed off from a server before performing disruptive steps. Based on renaming an isalive.htm file hosted in \Inetpub\wwwroot |
Confirmit.IsAlive.Preload.Delay | 10 | The period in seconds the deployment script will wait for the application to start up before putting a server back in the loadbalanced group. Based on renaming an isalive.htm file hosted in \Inetpub\wwwroot |
Confirmit.MessageBroker.User.Name | RabbitMessageBroker | The username for the RabbitMQ message broker service |
Confirmit.MessageBroker.User.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.NuGet.TentacleDownload | FALSE | Determines whether or not the tentacle on the application server downloads the nuget package from the nuget feed (TRUE) or the Octopus server (FALSE) |
(If using PowerMTA) Confirmit.PowerMTA.Server.LocalPath.ArchiveLogFolder | P:\LogFiles\pmta\process | Sets the location of the logfiles generated by PowerMTA, which will be picked up by the Forsta MTA Notification service |
(If using PowerMTA) Confirmit.PowerMTA.Server.LocalPath.ErrorFileFolder | P:\LogFiles\pmta\error | Sets the output location of logfiles the Forsta MTA Notification service is unable to process |
(If using PowerMTA) Confirmit.PowerMTA.Server.LocalPath.ProcessedFileFolder | P:\LogFiles\pmta\archive | Sets the output location of logfiles the Forsta MTA Notification service has successfully processed. These files can be stored elsewhere for record keeping |
(If using PowerMTA) Confirmit.PowerMTA.Site.Setting.DeleteFilesOnProcessing | FALSE | Determines whether or not the Forsta MTA Notification service should delete logfiles after processing them |
(If using PowerMTA) Confirmit.PowerMTA.Site.Setting.ProcessedFilesLiveLength | 60 | Sets the time in days logfiles will be stored in the Confirmit.PowerMTA.Server.LocalPath.ProcessedFileFolder before being cleaned up |
Confirmit.Reportal.Pools | 0-3,4-7,8-b,c-f | Splits up Reports into multiple application pools, and creates IISRewrite rules. Reportal GUID's are based on hex, so this example will create 4 application pools. Single reports can also be split out by having the first part of the Reportal GUID as the first part of the configuration value (<reportGUID>,0-3,4-7,...) |
Confirmit.Server.Certificate.SSL | ||
Confirmit.Server.Certificate.SSL.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Server.IIS.WebSite | Default Web Site | Determines the website to use |
Confirmit.Server.LocalPath.ConfirmitData | e:\confirmit | Local path on the application servers for hosting data files. This folder is recommended to back up. |
Confirmit.Server.LocalPath.ConfirmitProgram | d:\confirmit | Local path on the application servers for program files. |
| Confirmit.Server.NodeExtraCACertsFilePath | c:\\confirmit_prog\\extra_ca_certs.pem *Note! The path must have double backslashes.* | This variable can be used if you use privately signed/self signed certificates in your environment and need to add them to Node.js' list of approved certificate vendors When set, the well known "root" CAs (like VeriSign) will be extended with the extra certificates in the .pem file listed here. The file should consist of one or more trusted certificates in PEM format. The .pem file can be placed in this exact path locally on all servers, or a network share (as long as the app pool identity has access there). The Confirmit.Server.Bootstrapper package, executed on all servers, will update the web.config at the web site root level, for example c:\inetpub\wwwroot\web.config, and add a “NODE_EXTRA_CA_CERTS” value in the AppSetting section pointing to the specified .pem file. This web.config will be used by all services and apps on the server - both existing and future. An alternative to this setting is to manually create a variable called ”ConfirmitServerNodeTlsRejectUnauthorizedFlag” (separate section for description) |
Confirmit.Server.User.ConfirmitDeployer.Name | domain\confirmitdeploy | Windows user used to deploy files across multiple servers in a Forsta Plus site. Can be a local user or a domain user. Must exist prior to deployment and have a profile on all machines in the site. Must have the permissions Logon as a service and Logon as a batch job on all machines. |
Confirmit.Server.User.ConfirmitDeployer.Password | Needs to be set as Sensitive Variable | |
| Confirmit.SessionState.Redis.ConnectionString | #{Confirmit.SessionState.Redis.Host},password=#{Confirmit.SessionState.Redis.Password},ssl=True,abortConnect=False | Generates the Redis connection string from the referenced variables |
(BETA) Confirmit.SessionState.Redis.Enabled | FALSE | Determines whether or not to use Redis as cache for session state for Reportal and Authoring |
(BETA) Confirmit.SessionState.Redis.Host | Server01:6379,Server02:6379,Server03:6379 | List of hostname:port of servers hosting the Redis cluster |
| Confirmit.SessionState.Redis.Password | ***** | Needs to be set as Sensitive Variable |
Confirmit.Site.Application.Default.SQLServerDataPath | d:\confirmit_sql_data | SQL Data (mdf) drive for the default Forsta Microservice databases. |
Confirmit.Site.Application.Default.SQLServerLogPath | e:\confirmit_sql_log | SQL Log (ldf) drive for the default Forsta Microservice databases. |
Confirmit.Site.Application.Default.SQLServerName | confirm_system | Default SQL server instance name for databases from microservices deploying their own database. Can be overridden per microservice by specifying variables Confirmit.Site.Application.<name of microservice>.SQLServerName,Confirmit.Site.Application.<name of microservice>.SQLServerDataPath and Confirmit.Site.Application.<name of microservice>.SQLServerLogPath |
Confirmit.Site.HostName.Authoring | Base URL for the Forsta Authoring application | |
Confirmit.Site.HostName.Reportal | Base URL for the Forsta Reportal application | |
Confirmit.Site.Id | CustomerName_Site | Site name displayed in the Forsta application |
Confirmit.Site.Identity.ClientKeyGeneratorSecret | Automatically generated | Secret used for generation of trusted subsystem client keys. Default value is a new Guid unique to this environment. This value should not be changed after initial installation |
Confirmit.Site.IdentityDomain | Base URL for the Forsta Identity provider application | |
(BETA) Confirmit.Site.LogDestination.Address | logstash.site.com | The domain name of the logstash server for log collection |
(BETA) Confirmit.Site.LogDestination.Port | 9998 | The port of the logstash server for log collection |
Confirmit.Site.LogPath | D:\Logfiles | The location of the Forsta Application log files. Please refer to logging for more details. This folder will host logfiles which will need to be handled in accordance with your log file policies |
| Confirmit.Site.Url.QuickTestUrl | https://quicktest.site.com/confirm/wix | URL to the quicktest service |
Confirmit.Site.SSLEnabled | TRUE | Determines whether or not to create SSL endpoints |
| Confirmit.Site.SSLAccelerator.Mode | FALSE | For defining if SSL offloading is done by a loadbalancer on the site. |
| Confirmit.Site.SSLAccelerator.Port | 81 | If SSL Accelerator Mode is TRUE, this defines the port that SSL traffic will flow from the loadbalancer to servers. |
Confirmit.Site.UncPath.FtpRootPath | \\filecluster\FTPRoot | UNC path to the FTP server share |
Confirmit.Site.UncPath.ImageUploadRootFolder | \\filecluster\ImageUpload | UNC path to the Image Upload folder |
Confirmit.Site.UncPath.SharedData | \\filecluster\ConfirmitShared | UNC path to the common Shared Data folder |
Confirmit.Site.Url.DictionaryRestApi | URL to the Dictionary service, needs to point to servers with the MetadataAPI role | |
Confirmit.Site.Url.DownloadBaseUrl | Base URL for hosting console application files like CAPI | |
Confirmit.Site.Url.MetaDataRestApi | URL to the Metadata/ REST API service, needs to point to servers with the MetadataAPI role | |
Confirmit.Site.Url.ShortUrlApi | URL to the ShortURL service, needs to point to servers with the Deployment and Webservice role | |
Confirmit.Site.Url.ShortUrlRedirect | URL to the ShortURL service, needs to point to servers with the Deployment and Webservice role | |
(Add-on) Confirmit.Site.Url.TextAnalyticsWorkflowRestApi | Only in use if using the TextAnalytics service. | |
Confirmit.Site.Url.WebServiceBaseUrl | Base URL for Forsta external API/ Webservices, needs to point to servers with the Webservice role | |
(Optional) Confirmit.SurveyEngine.WixPools | 0,1,2,3,4,5,6,7,8,9 | Leave empty if not in use. This setting is to reduce memory strain on individual application pools. This setting splits Surveys into multiple application pools, and creates corresponding IISRewrite rules. The redirects will be to /wix/0, /wix/1/ ... This example will create 10 application pools. |
| (Optional) ConfirmitServerNodeTlsRejectUnauthorizedFlag | 0 | Disables server certificate verification for Node based apps. This is typically useful in cases where self signed certificates are used since Node apps only allow certificates from Mozilla’s list of approved certificate vendors. Please note that turning this check off makes these applications vulnerable to man in the middle attacks. A recommended approach is to use the other variable, Confirmit.Server.NodeExtraCACertsFilePath |
Octopus.Acquire.MaxParallelism | 20 | This setting determines how many packages can be downloaded from the Octopus server simultaneously. |