---
title: "How-to load balance eClinicalWorks in high availability"
description: "### Overview **eClinicalWorks** is a leader in ambulatory clinical solutions, whose intent is to get rid of paper and digitize the communication and workflow between a physician's office and the rest of healthcare process: from the doctor, to the pharmacy,…"
url: "https://www.relianoid.com/resources/knowledge-base/howtos/howto-load-balance-eclinicalworks-high-availability/"
updated: "2023-08-09"
category: "Howto's"
---

# How-to load balance eClinicalWorks in high availability

### Overview

**eClinicalWorks** is a leader in ambulatory clinical solutions, whose intent is to get rid of paper and digitize the communication and workflow between a physician's office and the rest of healthcare process: from the doctor, to the pharmacy, to the lab and to the doctors supply chain. It provides a web application to extend the use of electronic health records beyond practice walls and creates community-wide records. It's widely used in United States and they're established in more than 24 countries.

This guide describes the optimal configuration of eClinicalWorks application with Relianoid Application Delivery Controller in order to provide scalability, high availability, advanced health checks for monitoring and enhanced security of this application with sensible data.

### Requirements

1 HTTP farm, named eclinical as an example.
  Cookie insertion enabled with the Cookie Name set to **eClinical_Cookie**.
  At least 2 real servers or backends with eClincalWorks instances.
  FarmGuardian configuration for advanced health checks.
  A SSL certificate in PEM format to configure HTTPS listener (from a trusted CA or self signed), if SSL Offload will be enabled.

### Basic Load Balancing Configuration

#### Create a HTTP Farm

Go to  LSLB >> Farms  and press the button  CREATE FARM.

During the farm creation, configure the farm as shown in the picture below where the  Virtual IP  will be the IP Address in the load balancer and  Virtual Port  the port where the application will be delivered. Press  APPLY.

[![eClinical HTTP Farm creation](https://www.relianoid.com/wp-content/uploads/2021/03/eclinical_create.png)](https://www.relianoid.com/wp-content/uploads/2021/03/eclinical_create.png)

#### Edit HTTP Farm Global Parameters

Edit the HTTP Farm Global Parameters as shown below, clicking in the  ADVANCE  Button.
 [![eClinical HTTP Global HTTP Parameters](https://www.relianoid.com/wp-content/uploads/2021/03/advanced_params_eclinical.png)](https://www.relianoid.com/wp-content/uploads/2021/03/advanced_params_eclinical.png)

#### Add a new HTTP Service

Create a new HTTP service, named **servers** as an example, within the **eclinical** farm created before.

In order to do that, please go to the Tab  Services  and press in the button NEW SERVICE introduce the selected name for the service (**servers** in our example) and press  APPLY.

[![eClinical HTTP Global HTTP Parameters](https://www.relianoid.com/wp-content/uploads/2021/03/add_new_Service_eclinical.png)](https://www.relianoid.com/wp-content/uploads/2021/03/add_new_Service_eclinical.png)

Now go to the created service with name **servers**, and enable the  Cookie insertion  option with the  Cookie Name  set to  eClinical_Cookie  where  Domain  field is your application domain (**eclinical.app.com** in our example if our users will enter through **http://eclinical.app.com**) and  Path  field set to  /  in order to enable the cookie for the whole application. The  TTL  could be set to  3600 (1 hour) and  no persistence  enabled.

Finally, add the list of the backends IP addresses and port as it's shown in the picture below.

[![eClinical HTTP service](https://www.relianoid.com/wp-content/uploads/2021/03/eclinical_cookie_backends.png)](https://www.relianoid.com/wp-content/uploads/2021/03/eclinical_cookie_backends.png)

Restart the HTTP service in order to apply the changes and it's done!

### Advanced Health Checks Configuration

The basic HTTP farm configuration provides an inherent TCP health check during the connection between Relianoid Application Delivery Controller and the real servers. In order to ensure the correct application behavior it's required to configure an advanced health check with **FarmGuardian**, you can use check_http checks or another by your own, just to ensure that not only the TCP backend port 8080 is enabled but an HTTP response is replied.

### SSL Offload configuration

As eClinicalWorks manages sensible data, it's recommendable to set up a SSL Offload configuration in the load balancer. This way, the client connects through a HTTPS secure channel to the virtual service in the load balancer, and then the load balancer connects in plain HTTP to the backends.

It's quite easy to setup a HTTPS service for eClinicalWorks just change the  Farm Listener  to  HTTPS ,  Virtual Port  to  443  (standard for HTTPS protocol), ensure to have the  HIGH security  ciphers configured and finally, install your self signed or trusted certificate acquired (the default zen certificate is available in order to test your HTTPS setup, but it's mandatory to change it as soon as possible). In order to setup your certificate [refer to this article](https://www.relianoid.com/knowledge-base/howtos/create-certificates-pem-format/) for more information.

[![eClinical SSL Offload](https://www.relianoid.com/wp-content/uploads/2021/03/eclinicalworks_https.png)](https://www.relianoid.com/wp-content/uploads/2021/03/eclinicalworks_https.png)

### High Availability Configuration

The high availability configuration allows to setup 2 load balancer nodes to create high availability through redundancy. Once your first node is configured, just create a Virtual IP Address in the load balancer, change it in your new eClinicalWorks farm and create [the cluster as described in this article](https://www.relianoid.com/knowledge-base/howtos/eliminate-a-single-point-of-failure/). The full configuration will be replicated to the second node automatically, so it's not needed to reconfigure your setup.

### References

[https://www.eclinicalworks.com/](https://www.eclinicalworks.com/)

### 📄 Download this document in PDF format
