Forum Discussion

Zahid_Haseeb's avatar
Zahid_Haseeb
Moderator
10 years ago

What are the requirement for application, making Active/Active cluster

What are the requirement for application, making Active/Active cluster via VCS

  • Just to know if I got it right. You have an application that cun run on multiple nodes serving the same data.

    You want to know what requirements does VCS have to cluster such an application.

     

    If the above statement is true than.

    - VCS needs a way to start the application on each host where the application runs(Start Program)

    - VCS needs a way to stop the application on each host where the application runs(Stop Program)

    - VCS needs a way to monitor the application on each host where the application runs(Monitor Program / Monitor Processs / Montor PIDFiles)

    - VCS needs a way to clean the application in case it faults. (Clean Program)

    The above statement is true even if the application is Active/Passive type.

    Configure the application in a VCS service group. Set the group attribute Parallel = 1.

     

    Note: Its the application that needs to have capability to be clustered as Active/Active. An example is Oracle RAC.

    Regards,

    Sudhir

     

  • The question really should be directed at the application, not VCS.

     

    Is the data shared by both applications simultaneously?

    Where does your application store its data, direct attached or network attached storage?

    Can your application be active on two servers at the same time (and accesing the same data)?

     

    Examples of active / active servers with no share storage would be web server (probably connected to remote database)

    Examples of active / active servers with direct attached storage would be Oracle RAC as noted above.

  • Just to know if I got it right. You have an application that cun run on multiple nodes serving the same data.

    You want to know what requirements does VCS have to cluster such an application.

     

    If the above statement is true than.

    - VCS needs a way to start the application on each host where the application runs(Start Program)

    - VCS needs a way to stop the application on each host where the application runs(Stop Program)

    - VCS needs a way to monitor the application on each host where the application runs(Monitor Program / Monitor Processs / Montor PIDFiles)

    - VCS needs a way to clean the application in case it faults. (Clean Program)

    The above statement is true even if the application is Active/Passive type.

    Configure the application in a VCS service group. Set the group attribute Parallel = 1.

     

    Note: Its the application that needs to have capability to be clustered as Active/Active. An example is Oracle RAC.

    Regards,

    Sudhir

     

  • The question really should be directed at the application, not VCS.

     

    Is the data shared by both applications simultaneously?

    Where does your application store its data, direct attached or network attached storage?

    Can your application be active on two servers at the same time (and accesing the same data)?

     

    Examples of active / active servers with no share storage would be web server (probably connected to remote database)

    Examples of active / active servers with direct attached storage would be Oracle RAC as noted above.

  • Is the data shared by both applications simultaneously?

    NO

    Where does your application store its data, direct attached or network attached storage?

    on SAN

    Can your application be active on two servers at the same time (and accesing the same data)?

    No such capability currently

    x-------x---------x------x--------x------x

    1- Actually we want to distribute incomming traffic on both node

    2- In case of one node down or monitoring process failed then the incomming requests switch to next available node in cluster

  • You need to setup a load balancer to distibute incomming traffic to one of the instances. VCS will only take care of ensuring that application is available. Load balancers have a mechanism by which the keep a check of which nodes the application is available and re-direct them accordingly.

     

    Regards,

    Sudhir

  • Load balancers have a mechanism by which the keep a check of which nodes the ""application is available"" and re-direct them accordingly

    Means load balancer also monitors application ?

    x----x-----x------x-----x

    Any good load balancer name (software/hardware) ? Our application is Linux(redhat 5x, 6x supported) based.

  • It uses a remote mechanism like checking the application ports or node alive or some such mechanisms. It has alimited health check mechanism.

    There are free software based load balancers such as HAProxy provided by Linux, Linux Virtual Servers, etc

    Similaryly you have hardware loadbalancers such as F5, Cisco, Baracuda, etc

    The right choice is based on the application and the trafiic that you want to load balance.

    https://f5.com/glossary/load-balancer

     

    Regards,

    Sudhir

     

  • To make your application active and monitor through VCS,

    1. Your StartProgram attibute must start your application

    2. MonitoProgram (if configured) must exit with value "0" if the application is running. This is a very important attribute.Optionaly You can configure PidFiles/MonitorProcesses

    3. Stop program/clean must stop the application.

    4. Very important you user must have execute permissions to above 3.

     

    Before configuring Application, test you your above script manually executing them outside of VCS control. If these are working fine, let bring them under VCS control to configure your application.