Windows Installation Guide

Overview

This guide covers the steps necessary to perform an enterprise installation of Appian on a supported Windows operating system and configured to run on your application server. These steps assume that your installation will be performed on a single server, however, they are also used in conjunction with the High Availability and Distributed Installations page for multiple server installations.

Before starting the installation process, review the System Requirements to ensure all minimum requirements are met.

There are three main parts to an Appian installation:

  1. Engine & service installation
  2. Environment-specific configuration
  3. Startup & site setup

Engine & services installation involves deploying the Appian installation package. Next, environment-specific configurations are made to Appian's engines and services, the application server, and relational database management system (RDBMS) so they all talk to each other. Finally, administrators perform final start-up and setup procedures to get the installation up and running.

Prerequisites

In order to successfully complete the installation steps below, several prerequisite steps must first be completed:

Refer to the Installation Prerequisites page for more details.

Part 1: Install Appian Engines and Services

The first part of the installation process is to run the Appian installer, which deploys the engines, services, search server, data server, Appian Java EE application, and relevant libraries & files. After running the Appian installer, After running the Appian installer, the temporary product license is placed in the appropriate directory from the prerequisite steps. This allows the administrators to obtain information about the machine necessary to acquire a long-term product license.

Run the Appian Installer

Before and during the installation process, temporarily disable any anti-virus software or search indexing utilities running on the server.

Appian is installed using a graphical installer. The installer automatically installs Appian in C:\appian unless you specify another directory. The Appian installer can be downloaded from the Software Downloads record on Community.

The latest hotfix is included as part of the Appian installer. When planning an installation or upgrade, ensure each environment is using the same version of the installer. This can be verified after installation by opening the build.info file located in <APPIAN_HOME>/conf/. The contents of this file should match across all environments.

To install Appian:

  1. Double click on the installer.
    • If you are using Windows 7, right-click the installer and select Run as administrator.
  2. Click Next to step through the installer.
    • When you reach the Destination Folder option, click Browse, and then specify the desired location for the <APPIAN_HOME> directory.
    • Do not install Appian in a directory where another version of Appian is already installed.
    • Do not use the following characters in the name of your installation directory: & ^ = ( ) <space>
  3. Click Finish to close the installer.

A Program Compatibility Assistant dialog box may appear after the installer closes. This issue does not affect the Appian installation. If this happens, click This program installed correctly to dismiss the warning.

If you deploy the application suite on a virtual PC or virtual OS image, complete the following steps:

  1. Right-click the APPIAN_HOME directory.
  2. Select Properties.
  3. Select the Security tab.
  4. Verify that the user account that is to be used to start the application has Read & Execute and Write permissions for the folder.

Obtain Your Long-Term Product License

Once the installation is complete, your product license must be obtained and installed. Appian cannot be started without a valid license. The temporary license obtained earlier is only valid for 7 days. It is designed to obtain long-term licenses for your environments, for example, dev, test, and production.

To request a long-term license, follow Requesting and Installing a License. For each environment, obtain long-term product licenses for all of the servers where engines will reside as well as licenses for the data server.

Once you have obtained the long-term license and if you're using JBoss as your application server, use the configure script to manage the long-term product licenses in a central repository.

If you are using WebLogic, the long-term product licenses will be deployed directly in the appropriate <APPIAN_HOME>/server/_bin/k directory.

Installation Steps for both will be discussed in the next part of the installation guide.

Part 2: Installation Configurations

The main part of an Appian installation is setting configuration properties necessary for Appian to communicate with an application server, RDBMS, and (optionally) a web server. This section is split into four parts:

  1. Application server configurations
  2. RDBMS configurations
  3. Required (and optional) Appian configurations
  4. Deployment of configurations

Depending on which application server used, JBoss or WebLogic, future configuration steps will differ.

Application Server Configurations

Application servers need certain configurations before it is able to support the Appian Java EE application. Follow the installation instructions for either JBoss or WebLogic below for specific details.

JBoss

The Configuring JBoss page provides comprehensive details about setting up JBoss for an Appian installation. Throughout the other installation pages is a reference to <JBOSS_HOME>. This label signifies the root path location where JBoss was installed during the prerequisite steps.

Because the core required configurations for JBoss are taken care of by the configure script, using the configure script to deploy JBoss changes is strongly recommended. When using the configure script, only optional JBoss configurations need applied to the default repository files. The configure script essentially creates a duplicate of pre-configured installation files for every environment registered in it.

Before making any configurations changes, perform the following parts of the configure script:

  1. Running the Script
  2. Create the Configuration Repository
  3. Backing Up Appian
  4. Registering an Environment

Once you've registered an environment, the <REPO_HOME> directory will populate sub-directories with a copy of all the core configuration files. JBoss configuration files will be located in the <REPO_HOME>/bin/jboss/jboss-eap-6.4 sub-directory. Make any desired changes within these repository directories following the appropriate sections in Configuring JBoss.

WebLogic

The Configuring Web Logic page contains the necessary installation steps to setup WebLogic to work with Appian. Deployment settings for Administration Server (the default adminServer is sufficient) are used as examples. However, alternative configurations, such as Managed Server deployments are also supported.

For this part, perform the following sections on the Configuring Web Logic page:

  1. Configure JVM Settings
  2. Configure WebLogic Server Authentication Handling for HTTP BASIC Authentication
  3. Configure JMS
  4. Configuring Stuck Thread Warnings

The remaining sections are either optional or will be performed later in this installation guide.

RDBMS Configurations

A supported relational database is required for the Appian data source, which is used exclusively for storing data relating to the Appian installation as a whole.

Whichever relational database is used, a JDBC Driver is required and should have been downloaded as part of the prerequisite steps above.

Setting Up an RDBMS for JBoss

There are three steps unique to creating a data source in JBoss:

  1. Install the driver - This driver is deployed in the <REPO_HOME>/bin/jboss/jboss-eap-6.4/modules/ directory.
    • In addition to the JDBC driver, a module.xml file will also need created.
  2. Configure a security domain - In the standalone.xml file, the security domain requires the RDMBS username and password to setup a proper connection.
    • If you do not have an encoded password already, the configure script has a tool that will generate this for you. See the Tools section of the configure script page for more details.
  3. Enter the data source property values - Using the -ds.xml provided by the configure script, RDBMS properties need to be configured. Define the JNDI name, as well as the server, port, and database name. The JNDI name in the -ds.xml should match the name referenced in custom.properties.
    • The -ds.xml file can have any prefix before the dash. The application server will look for the -ds suffix during startup.

Using the configure script and the appropriate information from Configuring Relational Databases, make the appropriate changes for the JDBC driver. Also, when using the configure script, make the changes to the corresponding files in the configuration repository instead of in <JBOSS_HOME>.

Setting up a RDBMS for WebLogic

To create a data source for WebLogic, see the Configuring WebLogic JDBC Resources help topic in the Oracle documentation portal.

Required and Optional Configurations

Once the application server and RDBMS configurations are set, the remaining Appian configurations need to be finalized. For JBoss installations, changes will be made in the <REPO_HOME> directory. For Web Logic, these changes will occur directly within Appian.

Required Configurations

The required configuration instructions can be found in the Post-Install page. Complete the following required installation steps:

  • Configure Disk Cleanup - Appian engines and logs generate a lot of data. These configurations ensure that old logs and processes do not max out disk space.
  • Configure Site URL - Sets up the environment's server, port, and domain. Configured in custom.properties.
  • Exclude Appian Engines from Anti-Virus Scanning - Anti-Virus software running on the Appian engines can cause performance issues.
    • These steps occur outside the configure script repository and Appian installation directory.
  • Generate a Unique Security Token - Appian restricts communications between the engine servers and the application server(s) using a security token and a secure license. Generating a new security token for each environment offers an extra layer of protection for your installation.
  • Raise the Cap on Maximum Engine Size - This raises the amount of memory that a single execution engine will use.
  • Place the K Licenses in their folder - If using the configure script, deploy the licenses to the appropriate directory in the repository. Append the environment suffix to the end of the k3.lic and k4.lic file. For example, use k3.lic.dev for a license going to a dev environment. The Appian engines use the k3.lic while the data server uses the k4.lic.
    • For WebLogic, deploy these changes directly in the Appian Installation.

Optional Configurations

Optional configurations are performed at the discretion of the System Administrator based on the needs of a particular environment. See the Optional Configurations section of the Post-Install Configurations page for specific guidance. Perform all desired configuration steps, before moving to the next step of this guide.

Deployment

Once all of the necessary configurations are made, it's time to deploy the configure script's repository or WebLogic configurations. For either JBoss or WebLogic, deployment consists of 2 steps: verification and deployment. The configure script has these steps built in. WebLogic configurations should be validated and deployed manually.

To properly deploy Appian with JBoss using the configure script, follow the instruction in the validating configurations and deploying configurations sections of the configure script page.

Configurations can successfully be verified by reviewing the files in the <APPIAN_HOME> directory. JBoss configuration files placed in the repository should be available in the equivalent <APPIAN_HOME> directory.

Part 3: Startup and Setup

Once all of the configurations are deployed, it's time to start Appian and verify the installation was successful. Before starting Appian and signing into it, a system administrator user account will need to be generated. Additionally, the service manager requires a password to run its scripts.

Configure the Initial System Administrator Account

This account will allow you to access the Administration Console and create other Appian users. Follow the Create First System Administrator User section of the post-install configurations page.

Generate a Password for the Service Manager

Use the password script to generate a service manager password. This password is used on any of the service manager scripts as a way to protect against anyone without proper access from running administrative scripts.

Start Appian

Start Appian using the start script. Follow Starting Appian on Linux to properly start Appian.

Sign in to Appian

If running JBoss:

  1. In a browser, navigate to https://<host-name>/suite/design.
  2. Log in with the username and temporary password you configured in the configure initial system administrator account section above.
  3. Change the system administrator's password when prompted.

If running WebLogic:

  1. In a browser, navigate to http ://<host-name>:<7001>/suite/design.
  2. Log in with the username and temporary password you configured in the configure initial system administrator account section above. Change the system administrator's password when prompted.

Verify System Groups and Settings

Once you are able to login successfully, verify that your users are in the appropriate system groups. Additionally, review and make changes to the default settings in the Admin Console.

Setup Business Data Sources

The business data source creates a connection between Appian application objects and your business data. Setting up your business data source is handled through the Admin Console. Multiple business data sources can be configured for a single environment.

Troubleshooting

Q: Why might my new installation of Appian run very slowly?

Allowing virus-scanning software to run against the Appian engines (*.kdb) can lock them against read/write activity and cause a severe degradation in performance (or an application outage).

Q: When working with the system calendar, selecting a single day as a nonworking day causes the whole calendar (all days for all years) to be selected. Why is that?

When configuring your installation, the application server JVM time zone should be set to GMT (-Duser.timezone=GMT). Changing this setting to another time zone will cause issues with the system calendar, and other potential issues regarding date and time function evaluation.

Q: The JBoss server log and console contain an error message like ERROR [STDERR] log4j:ERROR A "org.jboss.logging.appender.FileAppender" object is not assignable to a "org.apache.log4j.Appender" variable and several similar messages following it.

This message is an artifact of the way that JBoss loads its own log4j logging library and the library included in the Appian application. It does not have an adverse effect on functionality or logging and can be safely ignored.

Q: The application server log contains errors with the following message (or similar) java.lang.LinkageError: loader constraint violation: when resolving method "java.lang.invoke.MethodHandle.invokeExact()Lorg/apache/lucene/util/AttributeImpl;" the class loader (instance of org/jboss/modules/ModuleClassLoader) of the current class, org/apache/lucene/util/AttributeFactory$1, and the class loader (instance of <bootloader>) for resolved class, java/lang/invoke/MethodHandle, have different Class objects for the type ; used in the signature and I encounter intermittent errors when logging in or posting to the News feed.

Your JVM version is not at the minimal required update. Update your JVM to the version specified in the System Requirements page.

For additional troubleshooting resources, refer to the Appian Knowledge Base on Community.

Uninstalling Appian

To uninstall Appian, delete the APPIAN_HOME directory.

FEEDBACK