SQL Server offers lots of tools for managing a single instance, but when you want to orchestrate multiple servers it can fall short. This is where products such as the server virtualization platforms DxConsole come into play. We spoke with OJ Ngo, CTO and Co-Founder, about their product.
InfoQ: Can you give a brief overview of what DxConsole is?
DxConsole software is a Server Application Virtualization platform that provides a unified operational model to orchestrate SQL Server management and high availability across heterogeneous physical and virtual infrastructures. DxConsole combines individual instance mobility and policy-based monitoring to intelligently automate IT operations and maintain required performance and availability SLAs.
DxConsole provides your SQL Server Environment with:
- Application level high availability and instance mobility to every SQL Server instance (both onsite as well as geo-clustering)
- Health and performance monitoring with reactive and proactive automation and alerting
- SLA framework with Instance level Quality of Service (QoS) resource contention controls
DxConsole lets you build, maintain and protect a single SQL Server infrastructure that is scalable and elastic as demand dictates.
DxConsole 2014 added new features and functionality that extend high availability (HA) and disaster recovery (DR) capabilities, while helping to further lower costs (press release below).
InfoQ: What are the specific areas that SQL Server doesn't offer out of the box that DxConsole can address?
- SQL instance failover/HA/DR across servers without Hardware Compatibility List (HCL)
- SQL instance failover/HA/DR from any servers to any servers anywhere – no domain required, no OS dependencies, no limit on the number of servers for any Standard or Enterprise edition of SQL
- SQL instance stacking supported – multiple versions of SQL can be grouped together under a single virtual/logical host
- SQL instance automatic failover based on instance health policy for CPU utilization, memory consumption, disk I/O, and networking throughput
- Guarantee SLA for CPU, memory, disk I/O, and networking throughput for SQL
InfoQ: Can you explain what you mean by "without Hardware Compatibility List"? Aren't the Hardware Compatibility Lists just a form of advertising?
With the other (Microsoft) clustering solution (i.e., WSFC), the servers participating in the cluster must adhere to a strict Hardware Compatibility List (http://support.microsoft.com/kb/309395). With the DxConsole management platform, any server participating in the DxConsole management platform can be any class, edition, memory, CPU, storage configuration, or from any hardware vendor. In another words, one can form a DxConsole cluster with servers from mixed hardware vendors without any restrictions -- including any mix of VM’s with physical boxes or even across different hypervisors.
InfoQ: How does your failover system let you work around the limitations that Microsoft imposed on domains, server versions, etc.? Does it require changes to the applications that connect to the servers?
A DxConsole member server can be of any version (i.e., Windows 2008/R2 or Windows 2012/R2), any edition (i.e., Standard or Enterprise), any group (i.e., (trusted) domain or workgroup), or any location (i.e., local site or remote site). As long as the member server is capable of running Windows operation system, it can participate in the DxConsole management platform and be a failover/high availability target for (Microsoft SQL Server) applications. There is no change to applications that connect to the servers.
DxConsole is a true “any-server-anywhere” clustering/management platform.
InfoQ: What do you mean by "guaranteed SLA"?
With DxConsole, you can setup allocation policies to ensure the managed application (e.g., SQL Server) is only started up on a member server if the member server meets the required resource (i.e., memory, CPU, disk I/O, and networking I/O throughput) by the application. You can also setup performance policies so that the managed applications are failed over/back onto another member server(s) if they exceed the allowed system resource threshold for memory, CPU, disk I/O, and networking throughput.