Ultrasound Architecture

Ultrasound consists of the following components:

Console

The console is the Ultrasound user interface. The console allows administrators to interact with the system by setting data collection schedules, deploying providers, and more. The console also displays health ratings, alerts, the incident log, and detailed views of the database.

Controller

The controller collects data about multiple replica sets and pushes the information into the database. The controller has the following characteristics:

The controller acts as the middle tier between the providers and console and performs several types of operations on behalf of the administrator:

The procedure for collecting and processing data is as follows:

  1. The controller periodically queries the database to determine which tests are scheduled by the administrator.
  2. The controller contacts the respective data source (primarily the providers on replica members, but also Active Directory) and performs the data collection test.
  3. The controller inserts the information returned from the data source into the database.
  4. The controller post-processes and integrates the gathered data into the database, then queries the data to trigger the appropriate alerts, notifications, and health ratings.

For performance reasons, there can be a delay (typically less than five minutes) between the time the data is retrieved and when alerts are triggered.

Database

The database uses a highly schematized format to store FRS data. Ultrasound alerts, notifications, and health metrics are built on top of the schema to provide extensibility and flexibility.

The controller triggers a database purge on a configurable cycle. You can configure how often the purges take place, the time at which they occur, and how many days’ worth of data to maintain. If the controller is not running, the database is not purged. For more information on configuring database purge options, see To configure Ultrasound options.

Provider

Ultrasound uses Windows Management Instrumentation (WMI) as a way to communicate between the controller and the provider. The provider is installed by the Ultrasound console as described in Deploying Providers. When the Ultrasound controller polls the provider, the provider is started by the WMI service, during which the provider runs as Local System account and performs the following operations:

During this process, it is possible that the provider can be polled by multiple controllers at the same time. However, because only a single provider can exist on a server, the versions of the multiple controllers must be compatible.

For more information about providers, see Deploying Providers.