Recommendations

SentryOne

Where to Install the SentryOne Components

The SentryOne client, monitoring service, and database are typically installed as follows:

  • The SentryOne client is installed on your workstation computer(s).
  • The SentryOne database is installed on a SQL Server instance on your local area network (LAN).
  • The monitoring service is installed on the same computer as the SentryOne database, or any other non-production server in the same LAN.
  • For Azure SQL Database or Azure SQL Data Warehouse monitoring, the monitoring service is installed either on-site, or on a virtual machine in the cloud.

Note:  We support installing the SentryOne database on Azure SQL Database Managed Instance.

The SentryOne clients and monitoring services are each configured to connect to the same SentryOne database during setup. 

Important:  The SentryOne database must be installed on a SQL Server 2008 or higher instance. Azure SQL Database is not supported for the SentryOne database. For more information, see the System Requirements section.

Install All Components On the Same Local Area Network

Install the SentryOne client, monitoring service, and database on the same LAN for the best performance. For example, don't connect the SentryOne client or monitoring service to a SentryOne database over a slow wide area network (WAN) link, because performance will suffer.

Note:  The monitoring service contacts the Azure endpoints remotely when the Azure SQL database or Azure SQL data warehouse monitors targets. 

Where to Install the Monitoring Service(s)

It's not recommended to install the monitoring service on a production server because the monitoring service incurs some memory and CPU overhead. 

Note:  The amount of overhead depends on the number of instances and objects being monitored.

Installing the SentryOne Monitoring Service and Database on the Same Computer

Depending on your environment, you may want to install the monitoring service on the same SQL Server machine where the SentryOne database is located. Doing so minimizes network overhead for communications between the monitoring service and the database. 

Note:  Microsoft SQL Server and the SentryOne monitoring service are multi-threaded. To ensure adequate performance while running both on the same computer, it's very important that the computer have at least two CPUs. For more information, see System Requirements.

Installing Multiple SentryOne Clients and Monitoring Services

Depending on the size of your SQL Server environment, you may need to install multiple SentryOne clients and monitoring services. Typically, each DBA has the SentryOne client installed on their workstation, and one monitoring service is installed for every 35 to 50 SQL Server, or Windows task scheduler instances being monitored.

Note:  You may be able to monitor 50 to 100+ instances with a single monitoring service. SentryOne is a scale-out architecture. If you experience performance degradation on monitoring services, installing additional monitoring services will balance the workload, enabling you to scale out further.

See the SentryOne & Microsoft Achieve SQL Server Monitoring Performance Goals blog post for more information on scalability.

Clustering SentryOne Monitoring Services

Multiple monitoring services can be installed to handle more than 100 instances, and/or to provide automatic redundancy and load balancing. There is no configuration required to implement a basic SentryOne cluster. 

Note:  Install more than one monitoring service, and connect each to the same SentryOne database during setup. They automatically distribute the monitoring load evenly between themselves. If one monitoring service fails, the remaining monitoring service(s) picks up the load automatically. For more information, see the Load Balancing and Fault Tolerance topic.

Increased Fault Tolerance for the SentryOne Database

If increased fault tolerance is required for the SentryOne database, install the database on a clustered SQL Server instance.

Note:  Log shipping can also be used with the SentryOne database; however a separate SentryOne license is required for the standby server. Customers can obtain this standby license by visiting our Customer Portal and modifying the server name of their current license key to the name of the standby server and applying this license key to the SentryOne database on the standby server.

Note:  You can also host the SentryOne database on an Availability group.  For more information about Hosting the SentryOne database on an Availability group, see the Hosting SentryOne Database on an Availability group article. 

Important:  Due to performance considerations, we do not support Synchronous-commit mode for the Availability Group hosting the SentryOne database when monitoring over 200 targets or over high latency network links.

We recommend using Asynchronous-commit mode in this scenario.

See the following blogs from Microsoft for more information on this topic:

Implementation Examples - Estimates Only

Monitoring Services Servers (Dedicated):

Number of TargetsMinimum number of Services (Per Site)Recommended number of Services (Per Site)
50 Two Three
100ThreeFour
200FiveSix
5001214

Minimum hardware requirements: 

CPURAM
4 cores 2.0+ GHz12 GB


Note:  A single service is never recommended because it does not provide load balancing and fault tolerance for redundancy.

Important:  The estimates provided are very soft estimates. The number of services needed to optimally monitor an environment is heavily dependent on several other factors such as: 

  • The number of databases on each target
  • The workload on each target 
  • Geographical placement of datacenters 
  • The number of domains 
  • Trust between those domains 

Additionally, other monitoring service configuration adjustments may be  needed to ensure performance and consistency of data collection such as batch size orand tempdb buffering. The support team will work with you to ensure optimal performance.

SentryOne Database Server(Dedicated): SQL Server 2016 (latest)

Number of TargetsMinimum SpecsRecommended Specs
50
CPU8 cores 1.6GHz
Memory24GB RAM
Storage100 GB
CPU8 cores 2.0+GHz
Memory32 GB RAM
Storage200 GB
100
CPU8 cores 1.6GHz
Memory48 GB RAM
Storage200 GB
CPU16 cores 2.0+GHz
Memory64 GB RAM
Storage300 GB
200
CPU16 cores 2.0+GHz
Memory64 GB RAM
Storage400 GB
CPU16 cores 2.0+GHz
Memory128 GB RAM
Storage600 GB
500
CPU16 cores 2.0+GHz
Memory128 GB RAM
Storage1 TB
CPU20 cores 2.0+GHz
Memory256 GB RAM
Storage1.5 TB


Important:  The estimates provided are very soft estimates and are based on the default configuration of SentryOne. The hardware and resources needed by the SentryOne database to handle a monitored environment is heavily dependent on several other factors such as:

  • The workload and transactions/sec 
  • Retentions settings 
  • Collection thresholds 

Other considerations including compression, Clustered Cloumnstore Indexes, and encryption should also be taken into account. For example, storage requirements are drastically reduced with Clustered Columnstore Indexes.