Highlighted
Absent Member.. Absent Member..
Absent Member..
136 views

ucmdb in high availability

Hi Experts,

 

Please explain how ucmdb cluster work in high availability and what is its heartbeat??? How it elect writer and reader??

 

 

Regards,

nick

0 Likes
7 Replies
Highlighted
New Member.

Re: ucmdb in high availability

Hi Nick,

 

High Availability is a mode of running UCMDB on a cluster of two or more UCMDB Servers to enable load balancing and to ensure system availability.

Load Balancing

A typical configuration for a high-availability environment is two or more UCMDB Servers connecting to the same database server. The server are configured to work behind a load balancer, that is, the load balancer serves as the entry point to the UCMDB Servers. All of the UCMDB Servers are active at any given time and can handle both read and write requests. Requests are distributed to the UCMDB Servers in the cluster by the load balancer. While read requests are shared evenly among all of the UCMDB Servers (Readers), only one UCMDB Server (Writer) is also responsible for write requests at one time. Any write requests received by a Reader are passed to the Writer. Moreover, any of the UCMDB Servers can take over the Writer role in the case that the Writer becomes unavailable.

System Availability

Since the servers are all active at any given time, and they all communicate with the database, if any one of the servers becomes unavailable, the others can continue working as usual, only the load will be redistributed. If the server serving as the writer, goes down, any one of the other servers can assume this role in its place.

 

-How it elect writer and reader???

A typical configuration for a high-availability environment is two or more UCMDB Servers connecting to the same database server. The server are configured to work behind a load balancer, that is, the load balancer serves as the entry point to the UCMDB Servers. All of the UCMDB Servers are active at any given time and can handle both read and write requests. Requests are distributed to the UCMDB Servers in the cluster by the load balancer. While read requests are shared evenly among all of the UCMDB Servers (Readers), only one UCMDB Server (Writer) is also responsible for write requests at one time. Any write requests received by a Reader are passed to the Writer. Moreover, any of the UCMDB Servers can take over the Writer role in the case that the Writer becomes unavailable.

 

Best Regards, 

Hoang.

-------------------------------------------------------------------------------
*HP Support
If you find this or any post resolves your issue, please be sure to mark it as an accepted solution.*
*If you feel the post is helpful, please assign a KUDO star to say "Thanks"*
0 Likes
Highlighted
Absent Member.. Absent Member..
Absent Member..

Re: ucmdb in high availability

Hi,

 

Thanks for the detail info.

 

But I want to know what  algorithm is used to  decide which reader server will become writer and how much time it takes to elect  if setup has more than 3/4 ucmdb server in cluster and suddenly writer server goes down.

 

Regards,

Nick

0 Likes
Highlighted
New Member.

Re: ucmdb in high availability

Hi Nick,

 

Actually, we do not use any algorithm and you can suggest a reader to become writer server by:

Go to JMX Console. -> UCMDB:service=High Available Services -> suggestNewWriterServer

 

And here is regular flow of reader become writer:

timestamp: last time of writer “ping”.

What the writer does:

-        Each 15 seconds it updates the timestamp.

-        The writer also has a timer thread that each 2 seconds checks if he writer has not updated the timestamp for the last minute and if true – kills the writer.

What the reader does:

-        Monitors the time of the timestamp from the writer, if 2 minutes have passed since last update – the writer is assumed dead, the readers start competing for becoming the writer.

The time here seems be fixed in some codes.

 

Hope this helps.

Best Regards,

Hoang.

 

-------------------------------------------------------------------------------
*HP Support
If you find this or any post resolves your issue, please be sure to mark it as an accepted solution.*
*If you feel the post is helpful, please assign a KUDO star to say "Thanks"*
0 Likes
Highlighted
Frequent Contributor.. Frequent Contributor..
Frequent Contributor..

Re: ucmdb in high availability

This is all well and good, until the database is unavailable.  What then?

0 Likes
Highlighted
Absent Member.. Absent Member..
Absent Member..

Re: ucmdb in high availability

Hi,

 

Thanks for the detailed info.

 

But just want to know  about below statement   that "writer has a time timer thread ........

 

 

What the writer does:

-        Each 15 seconds it updates the timestamp.

-        The writer also has a timer thread that each 2 seconds checks if he writer has not updated the timestamp for the last minute and if true – kills the writer.

 

whether it is 2 sec or 2 min because at every 15 sec it updates timestamp?????

 

Also want to know in which log we can refer to check everything working fine I tried to debug ha.detailed log but unable to put into debug mode(may be i changed wrong logger plz suggest) and how the two ucmdb server moves its configuration from one server to another one and vice versa and with what frequency??

 

 

Regards,

Nick

 

 

 

0 Likes
Highlighted
Absent Member.. Absent Member..
Absent Member..

Re: ucmdb in high availability

Hi Hoang,

 

 

I am  waiting for some additional info wit respect to above questions.

 

Regards,

Nick

0 Likes
Highlighted
New Member.

Re: ucmdb in high availability

Hi Nick,

 

I am sorry about the delay on response.

I have some information would like to share with you:

1. Each 15 seconds it updates the timestamp, while that time, the writer also has a timer thread run parallelly to check updates each 2 seconds. After 15 seconds if the writer update timestamp, the timer will be restarted; if not, the timer keep run and after 2 mins, the writer is assumed dead.

2. If you want to set DEBUG for ha.detailed log, please go to conf/log and set DEBUG fod cmdb properties file.

3. Could you please give me some example of configuration?

 

Best Regards,

Hoang

-------------------------------------------------------------------------------
*HP Support
If you find this or any post resolves your issue, please be sure to mark it as an accepted solution.*
*If you feel the post is helpful, please assign a KUDO star to say "Thanks"*
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.