Ultrasound consists of the following components:
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.
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:
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.
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.
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.