BizTalk Server 2013 R2: Installation and Configuration – Optimize the BizTalk Server 2013 R2 environment (Part 17)

Posted: January 25, 2015 in BizTalk
Tags: , , , ,

This next posts will focus on optimizing some BizTalk Server 2013 R2 configurations. The following recommendations can be used to increase BizTalk Server performance or just to make the platform more resilient to failures. The optimizations listed in this topic are applied after BizTalk Server has been installed and configured.

Install SSO Configuration Application MMC Snap-In

BizTalk Server leverages the Enterprise Single Sign-On (SSO) capabilities for securely storing critical information such as secure configuration properties (for example, the proxy user ID, and proxy password) for the BizTalk adapters. Therefore, BizTalk Server requires SSO to work properly. BizTalk Server automatically installs SSO on every computer where you install the BizTalk Server runtime.

But it also can keep your own application configuration data in SSO database, let say the usual configurations that we normally keep in a configuration file (“app.config”)). One of the great and useful tool that we normally use for archiving this is a custom tool original created by Richard Seroter, the: SSO Config Data Store Tool.

However since 2009 that Microsoft released a MMC snap-in to tackle this exact issue: SSO Configuration Application MMC Snap-In provides the ability to add and manage applications, add and manage key value pairs in the SSO database, as well as import and export configuration applications so that they can be deployed to different environment.

To install SSO Configuration Application MMC Snap-In you need to:

  • Unzip the SSOConfigurationMMCSnapIn.zip file available in Microsoft page.
  • This file is composed by three zip files, so after unzip the first file you should unzip also the SSOMMCSnapInSetup.zip file.
  • Run as Administrator the setup.exe or SSOMMCSnapInSetup.msi file
  • In the Welcome to the SSO Application Configuration Setup Wizard page, click “Next”

155-BizTalk-Server-2013-R2-SSO-App-Snapin

  • In the Select Installation Folder page:
    • Accept the default installation folder or set another one
    • In the “Install SSO Application for yourself, or for anyone who uses this computer” option, select “Everyone”
    • And click “Next”

156-BizTalk-Server-2013-R2-SSO-App-Snapin

  • In the Enter Company Name page, enter the name of your company and click “Next”

157-BizTalk-Server-2013-R2-SSO-App-Snapin

  • In the Confirm Installation page, click “Next” to install the SSO Application Configuration MMC Snap-In

158-BizTalk-Server-2013-R2-SSO-App-Snapin

  • In the installation Complete page, click “Close”

159-BizTalk-Server-2013-R2-SSO-App-Snapin

However unfortunately this tool will not work properly in BizTalk Server 2013 R2, at least running in Windows Server 2012 R2. At the first sight it seems that everything is working properly but when you try to create a key value pair you will see that nothing happens and no key is created:

160-BizTalk-Server-2013-R2-SSO-App-Snapin

To fix this issue I recompile the SSOMMCSnapIn.dll using the latest version of “Microsoft.EnterpriseSingleSignOn.Interop.dll” available with BizTalk Server 2013 R2 that you can download at Microsoft TechNet Gallery: BizTalk Server 2013 R2: Fix for SSO Configuration Application MMC Snap-In

Update: Notice that this issue it’s also documented here https://support.microsoft.com/kb/2954101 (Known issues in BizTalk Server 2013) and you will find different solutions to solve it.

To solve the issue you just need to overlap the existing SSOMMCSnapIn.dll file, normally present in “C:\Program Files\Common Files\Enterprise Single Sign-On” folder with this version of the file. Now if you try to add a new key value pair everything will work fine.

161-BizTalk-Server-2013-R2-SSO-App-Snapin

Configure BizTalk Jobs History (Microsoft SQL Server Agent job history log)

Have you ever notice that you never have present a log history of the Monitor BizTalk Server job?

170-BizTalk-Server-2013-R2-BizTalk-Jobs-History

The reason why this happens is that BizTalk Server is shipped out with a total of 13 SQL Agent jobs, most of them running each minute, the only exception is the Monitor BizTalk Server job that by default occurs every week on Sunday at 00:00:00.

And to be completely honest there are two problems present:

  • We rarely inspect our environment in the weekend, only in critical situations or customers that have a 25x 7 administration team.
  • By default the Microsoft SQL Server Agent job history log is configure to
    • “Limit size of job history log” with a maximum of 1000 rows
    • And “Maximum job history row per job” with 100 rows

168-BizTalk-Server-2013-R2-BizTalk-Jobs-History

Which means that a few minutes after the Monitor BizTalk Server job run successfully or unsuccessfully, it’s historic is overwritten with the row log historical of the remaining 12 jobs. Therefore never expected to have this historic job on Monday when you arrive to the office.

Because BizTalk Server has 13 Jobs to keep a decent and consistent job history log you should increase the “Limit size of job history log” according to the number of existing jobs in your environment, for example at least 1300 for BizTalk Server environment (100 for each job)

To resize the job history log based on raw size

  • In Object Explorer, connect to an instance of the SQL Server Database Engine, and then expand that instance.
  • Right-click SQL Server Agent, and then click Properties.
  • Select the History page, and then confirm that Limit size of job history logis checked.
  • In the Maximum job history log size box, enter the maximum number of rows the job history log should allow.
  • In the Maximum job history rows per job box, enter the maximum number of job history rows to allow for a job.

169-BizTalk-Server-2013-R2-BizTalk-Jobs-History

To resize the job history log based on time

  • In Object Explorer, connect to an instance of the SQL Server Database Engine, and then expand that instance.
  • Right-click SQL Server Agent, and then click Properties.
  • Select the History page, and then click Automatically remove agent history.
  • Select the appropriate number of Days(s), Week(s), or Month(s).

Force Full Backup BizTalk Server (BizTalkMgmtDb) job

I will not enter in much details in this steep, you can read more about it in my blog at: A different way to Force a Full Backup of the BizTalk Server databases.

The standard way is to use the “BizTalkMgmtDb.dbo.sp_ForceFullBackup” stored procedure. However, and unlike what many people think, this stored procedure does not perform a full backup it only marks internally on BizTalk Server databases that the next time the Backup BizTalk Server job runs it will need to perform a full backup of the data and log files. You really need to be aware of two important things:

  • The Backup BizTalk Server job is the only supported method for backing up the BizTalk Server databases. Use of SQL Server jobs to back up the BizTalk Server databases in a production environment is not supported.
  • You can use the SQL Server methods to backup the BizTalk Server databases only if the SQL Server service is stopped and if all BizTalk Server processes are stopped.

Alternative, to help one of my DBA teams you may create a custom Force Full Backup BizTalk Server job that is composed by two steps:

  • Step 1: Force Full Backup
    • That will call the “BizTalkMgmtDb.dbo.sp_ForceFullBackup” stored procedure
  • Step 2: Backup BizTalk Server
    • That will call the standard Backup BizTalk Server (BizTalkMgmtDb) job

1723-BizTalk-Server-2013-R2-Force-Full-Backup-BizTalk-Server-job

You can download the custom “Force Full Backup BizTalk Server (BizTalkMgmtDb)” Job from Microsoft | TechNet Gallery: Force Full Backup BizTalk Server (BizTalkMgmtDb) Job

Related links
Comments
  1. Rajiv says:

    Hi Sandro, I have a query not exactly related to BizTalk 2013 R2 installation but around the versions of .Net Framework that it supports. In one of our clients BizTalk production servers we are planning to install .Net 4.6.1. Would that cause any problems ?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s