Configuring Cluster Settings - Auto Failover

The Cluster Settings screen is divided into 9 sections/tabs which are: CLUSTER, CLIENT, SERVER, ScaleArc, CACHE, AUTO FAILOVER, SSL, Advanced Settings, and DEBUG.

This article explains the configuration settings under the AUTO FAILOVER tab which provides various settings to simplify the failover process by automating it to a slave, or another master within the same ScaleArc cluster without having to manage conflicts.

Whenever the last Read/Write server goes down in a particular cluster, Auto-failover promotes the standby server to become the master. A slave could be added as Standby Traffic or Standby No-Traffic. A Standby Traffic is a server that is used in load balancing under normal operation but is promoted to a Write server when the primary server goes down. A Standby No-Traffic server is meant to receive no traffic during normal operation until it is promoted to a Write server. The choice taken will depend on the number of database servers in your environment.

Depending on your specific circumstance, you may choose to use either SQL mirroring or leverage one of the External API to manage failover.

Review these options carefully to select the best Failover configuration for your environment: 

  1. On the ScaleArc dashboard, locate the Status column and click on the Cluster Settings button. 
    Cluster_settings_-_client_and_server.png
  2. Open the AUTO FAILOVER tab in the Cluster Settings screen to configure this feature.

    Cluster_settings_-_Auto_failover.png
  3. Configure the fields as follows:

    Field Description Default/User input
    Auto-Failover

    When a principal server fails, Auto-Failover aims to simplify and automate the failover process to a standby server or another principal in the same cluster.

    Turn ON/OFF.
    Failure Timeout (seconds)

    The amount of time (in seconds) a principal should be detected as down before failover is triggered. If the principal remains down past the specified time, the system triggers the failover and promotes either a slave or another principal to take over the job of the downed principal server. Make sure the timeout entries are appropriate for your environment.

    Default value is 2 seconds
    Flip Flop Timeout (seconds)

    The minimum time (in seconds) to wait between fail-over events. This can be used to reduce flip-flops and avoid frequent failovers. Although making this timeout too high can result in increased downtime for the cluster, in which case the failover takes place after the specified flipflop timeout. Override the timeout by using the switchover functionality by which failover can be manually forced, regardless of the flip-flop timeout.

    Default value is 600 seconds.
    Failover Type

    ScaleArc supports SQL Mirroring. ScaleArc also supports custom scripts that the system can trigger as part of the Auto Failover process.

    Note: Review the prerequisites for SQL Mirroring before you choose this option.

    Select SQL Mirroring OR External API
  4. Click APPLY ALL to save the configuration changes or LOAD DEFAULTS to load the factory default settings.

External API 

The External API lets you call out to an external script which in turn promotes one of the existing slaves to a principal and informs ScaleArc which server to promote to Active Read/Write role. If you chose this option, follow the table below to configure it:

Field Description User input
External API call Makes a call to an external script to promote one of the existing slaves to a master. Select the external script from the drop-down list.
External Script Uploads/Downloads an external API script. This script is invoked when the system triggers a failover in place of ScaleArc's pre-configured failover logic. See below.
Retry attempts indicates the number of retries the system executes. Default is 3 attempts.
API timeout (seconds) The script executes within the API timeout specified. Default is 60 seconds.
Switchover

Triggers a manual failover of the active Read/Write server to the standby server. It overrides all other ScaleArc-specified failover settings and does a manual failover as per the customer's requirements. 

Active connections in the intermediate state that do not complete in the specified time will not be switched to the standby server. Those connections not in the intermediate state will be switched to the standby server immediately.

Click to initiate. Specify the manual failover timeout.

 

Initiate an External API script  

Locate and edit the External API script to tailor it to your environment before you can upload it by following these steps:

  1. Click on the External API field to locate the script from the drop-down menu.

    Auto_Failover_-_External_api_script.png 
  2. Download the script on your local drive.

    Auto_Failover_-_External_api_script_download.png

  3. Edit it carefully with your text editor to show the following: your ScaleArc appliance's IP address, the username and password for ScaleArc, and the server key.

    Auto_Failover_-_Edit_External_api_script.png 
     
  4. Rename and save the file once you have completed editing.

    Auto_Failover_-_Edit_External_api_script2.png 
     
  5. Use the Upload button to load the edited file. A successful upload displays this dialog:

    Auto_Failover_-_External_api_script_upload.png 
     
  6. Complete the remaining fields.
  7. Click Switchover.
  8. Enter a timeout number manually.

    Connection_bleedoff_time.png

  9. ScaleArc posts this message when it initiates the switchover:

    Successfully_scheduled_switchover.png

  10. If the switchover fails, you'll receive an error notification in the Events tab on the ScaleArc dashboard:

    Failed_switchover_event_notification.png

  11. Correct the error and re-initiate the switchover.

Back to top