Overview

Every licensed Kiln customer can download an installer which has a wizard to help guide you through the various steps needed to get Kiln running on your server. For the vast majority of customers, the default configuration will be your best bet for a successful installation.

This document has a few sections:

  1. System Requirements
  2. Before you begin
  3. Installer Walk-through
  4. Advanced Instructions

1. System Requirements

Kiln For Your Server is a complex product with many different components. Managing even a moderately-sized installation requires network administration, server management, and DBA work, as well as substantial hardware. Kiln On Demand offers the same features and security of Kiln without the hassle.

Kiln supports a narrow range of systems at the moment. Ensure you’re installing on a system that meets these requirements to receive support.

Note that Kiln cannot currently be installed on a Primary Domain Controller.

Also note that Kiln must be installed on the same server as FogBugz, so that the two applications can easily and securely exchange the data that enables their tight integration. When you run the Kiln installer, it will recognize your FogBugz inst and ask if you want to use that as your FogBugz base. Then, after the Installer has run and you enter your license info everything should be all set up. If you have a fully up to date version of FogBugz you should also be able to simply enter your Kiln license information under Admin > Licenses and Kiln will start to work.

FogBugz System Requirements are posted here.

Operating System(s)

Windows 2003 Server SP2 or later, Windows 2008 Server, and Windows 2008 Server R2 (sorry; Itanium not supported) with IIS 6.0 and later.

Database Server(s)

Microsoft SQL Server 2005, 2008, 2008 Express*, or 2012. (Full Text Search is required for Kiln 2.8 and earlier.)

* Note that the Express edition has a 10 gig database size limit and 1 gig RAM limit

Server Memory

4 GB RAM Minimum; 8 GB RAM Recommended

Storage

The bulk of Kiln data, your code, is stored in the KilnRepositories folder. The intense I/O within this folder necessitates the folder to reside on a physical disk, not a network share.

Client Side

On the client side, please make sure you’re using one of our supported browsers.

Physical vs. Virtual Machine

Running Kiln or the FogBugz/Kiln bundle in a virtual machine is not generally recommended. Since Kiln is an extremely disk-heavy application, you may experience performance degradation. Please see Can I run Kiln in a VM / Virtual Machine? if you are considering running Kiln in a virtual environment.

2. Before You Begin

Just a few things that we wanted to let you know before you begin the installation process:

  1. The server may require a restart to finish. If it does, just restart the installer and it will pick up right where it left off. If possible, it’s best to schedule the installation of Kiln during off-hours if you are installing on a production machine.
  2. Kiln requires some FogBugz components. We actually launch a seriously trimmed down FogBugz installer during the setup process. Don’t worry; This is totally normal 🙂
  3. You need to run the installer as a SQL and Windows administrator. We make changes to Windows and SQL Server that require administrator access. If your SQL Server is on another computer, you need to take extra care to make sure your user has the right privileges.
  4. Kiln and FogBugz have to run on the same server. Kiln and FogBugz share critical information with each other and must run on the same server.
  5. Installation of Prerequisites requires internet access. If your server is missing any prerequisites, setup will download and install them for you. If your Kiln server does not have access to the public internet, please see this post.

3. Installer Walk-through

Welcome

The easy one. Just click Next because you’ve already got these instructions open (pat yourself on the back).

Prerequisites

If Kiln needs any supporting software installed beforehand, just click Install Prerequisites and it will launch Microsoft’s Web Platform Installer to get everything installed. This varies depending on the state of your system. If you’ve asked the Kiln installer to install a SQL Express instance for you, this step can take a while. Go get yourself a cup of cocoa, and relax for a little while. If necessary, this may restart your server. Once it’s restarted the Web Platform Installer will continue installing prerequisites. Once it is finished, you can restart the Kiln installer.

Settings

The settings page lets you specify where to install the three main components of Kiln.

Website
The Kiln website will be linked with a FogBugz install. You can select an existing FogBugz install, or have the Kiln installer create a new FogBugz installation. Kiln will be located at http://[your.fogbugz.url]/kiln. (Again, Kiln and FogBugz must be installed on the same server.)

Database
Kiln uses SQL server to store meta data about your code and code reviews. Basically, it’s what we use to make the Kiln web front end work. Your code isn’t stored here. You can choose any SQL Server 2005/2008/2012 or SQL Express 2008 instance. If you don’t have one available, Kiln can install and configure a SQL Express instance for you during the Prerequisites step.

Storage Service
The Kiln storage service manages the Mercurial repositories that you create while using Kiln. We strongly recommend that you install the Storage Service on the same machine as the Kiln front end. It is slightly more secure, and it reduces complexity which makes managing your Kiln installation and getting helpful support from us easier.

Installation

Once you’ve selected these settings, installation will begin. The installer will do the following:

  1. Install Kiln files
  2. Launch the Kiln Storage Service installer
  3. Launch the FogBugz installer to install/upgrade the FogBugz Base components
  4. Configure the Kiln website and database
  5. Launch Kiln in your default web browser to let you log on and install licenses

Kiln Storage Service Installer

This installer asks for some very basic information about where you want to install it, and where you want it to store your Mercurial repositories. Mercurial is very efficient about how it uses storage, but you will want to make sure you put your repository directory in a place with plenty of available disk space (10GB minimum, likely more).

Note: As of Kiln 2.9.x, the Kiln Storage Service’s KilnRepositories folder cannot be located on a network drive.

The FogBugz Installer

If you’ve ever installed FogBugz, you will recognize the installer and probably realize that it is seriously shortened. The only critical thing here is setting up the FogBugz user. The web components and system services for both Kiln and FogBugz will run as this user. It is also used to connect to the SQL database. If SQL Server is on a different machine, you will want to make this a domain user.

Login to Kiln, and enter your licenses

This step will take you through the normal licenses installation procedure. If you already had FogBugz, you will need to log on to Kiln with a FogBugz administrator account and enter your Kiln licences on the Admin -> Licenses page. Otherwise, you will login with the default built-in administrator account and enter your licenses.

4. Advanced Instructions

If you’ve gotten this far you’ve already mastered Windows permissions entanglement theory. That’s not advanced enough for you?

Using Mixed-Mode authentication to connect to the Kiln database. You needed to run the installer as a user with administrator permissions on the database. After Kiln is installed, you can change the connection string in the web.config file to use a specific database user, rather than a Windows user. The database user will need to be an administrator for the Kiln database. Just replace Integrate Security=SSPI; with User Id=myUsername;Password=myPassword; in the Connection String. Once you’ve done this you can revoke permissions to the user that was setup by the installer (typically the FogBugz user).