Study of data replication process using Raft replication algorithm to maintain consistency in server cluster

Authors

  • L.O. Tokar Харківський національний університет радіоелектроніки, Ukraine https://orcid.org/0000-0002-7780-1928
  • V.Y. Tsyliuryk IT-Lance, Ukraine
  • V.V. Solodilov Харківський національний університет радіоелектроніки, Ukraine

DOI:

https://doi.org/10.30837/rt.2024.2.217.10

Keywords:

server, cluster, fault tolerance, availability, replication, consensus, Kubernetes, Raft

Abstract

The article considers the issues of ensuring availability and fault tolerance of a server cluster. The analysis of methods and technologies for increasing system reliability and improving performance, such as data replication, automatic switching between servers and fast recovery after failures, is carried out. It is indicated that the key element in modern distributed systems is replication-based clustering. The types of replication are analyzed. It is shown that during the operation of the system, there is a choice between the stability of the received data and the speed or scaling limitation.

It is shown that the Raft algorithm is one of the reliable mechanisms with a high level of availability for achieving consensus and data management. An analysis of the literature on the use of the Raft consensus algorithm is carried out.

The replication process using the Raft algorithm is analyzed. It is substantiated that it is possible to ensure strong consistency and high availability of the cluster using the management and control mechanism on the Kubernetes platform while maintaining cluster configuration synchronization.

The Raft consensus process is studied using the M/M/s QS model. The exponential distribution of time between client requests and servicing with a certain number of servers is considered. The program code for the mathematical model in Python has been developed.

Modeling has been performed in the Visual code environment in Python. The following parameters have been studied: the number of servers that operate at a certain average speed, the expected time of a client request in the system, and the probability of message delay. It has been proven that as the arrival speed increases, the expected time of a client request increases. The analysis provides an understanding of how the Raft algorithm works in different contexts and is applicable to optimizing system design processes.

References

DevOpsCube. How to Setup Prometheus Monitoring On Kubernetes Cluster. URL: https://devopscube.com/setupprometheus-monitoring-on-kubernetes.

Л.О. Токар, О.А. Колтаков, В.Є. Цилюрик. Створення тестового стенду Call-центру для балансу-вання навантаження серверів Asterisk у кластері // Радіотехніка. 2023. № 212. С. 186–196. doi:10.30837/rt.2023.1.212.18.

Grafana Dashboards. Node Exporter Full. URL: https://grafana.com/grafana/dashboards/1860.

P. Pyda, M. Przywuski, T. Dalecki, J. Sliwa. Efficiency of Virtual Machine Replication in the Data Center // International Conference on Military Communications and Information Systems (ICMCIS 2022). 2022. Vol. 205. Р. 208–217. doi:10.1016/j.procs.2022.09.022.

R.A. Memon, J.P. Li, J. Ahmed. Simulation Model for Blockchain Systems Using Queuing Theory // Electronics. 2019. Vol. 8 (2). Р. 1–19. doi:10.1007/978-3-031-21229-1_1.

A. Baliga, I. Subhod, P. Kamat & S. Chatterjee. Performance evaluation of the quorum blockchain plat-form. URL: https://arxiv.org/abs/1809.03421.

Q.L. Li, J.Y. Ma, Y.X. Chang. Blockchain Queue Theory // Proceedings of the 7th International Confer-ence on Computational Social Networks, CSoNet 2018. 18-20 Dec., 2018. Vol. 11280. Р.25-40. doi:10.1007/978-3-030-04648-4_38.

D. Ongaro & J. Ousterhout. In search of an understandable consensus algorithm // 2014 USENIX Annu-al Technical Conference. 2014. Р. 305–319. doi: 10.25209/2079-3316-2021-12-2-137-192.

D. Kim, I. Doh & K. Chae. Improved raft algorithm exploiting federated learning for private blockchain performance enhancement // 2021 IEEE International Conference on Information Networking (ICOIN). 2021. Р. 828–832. doi: 10.1109/ICOIN50884.2021.9333932.

S. Vora, N. Thakkar, R. Gor. А Study of Performance Measures and Throughput of Raft Consensus Al-gorithm // International Journal for Research in pplied Science & Engineering Technology (IJRASET). 2023. Vоl. 45. Р. 862–869. doi:10.22214/ijraset.2023.54751.

G. Yang, K. Lee, Y. Yoo, H. Lee & C. Yoo. Resource Analysis of Blockchain Consensus Algorithms in Hyperledger Fabric // IEEE Access. 2022. Vol. 10. Р. 74902–74920. doi: 10.1109/ACCESS.2022.3190979.

Q. Huo, S. Li, Y. Xie and Z. Li. Horizontal Pod Autoscaling based on Kubernetes with Fast Response and Slow Shrinkage // 2022 International Conference on Artificial Intelligence, Information Processing and Cloud Computing (AIIPCC), Kunming, China, 2022. Р. 203–206. doi: 10.1109/AIIPCC57291.2022.00051.

A. Vaghani, K. Sood, S. Yu. Security and QoS issues in blockchain enabled next-generation smart logistic networks: A tutorial Blockchain // Research and Applications. 2022. Vol.3. Р. 1–14. doi: 10.1016/j.bcra.2022.100082.

C. Журавель, О. Шпур, Ю. Пиріг. Досягнення консенсусу в розподілених cервісних системах // Інфокомунікаційні технології та електронна інженерія. 2022. № 2 (4). С. 58–66. doi:10/23939/ictee2022.02.058.

В.В. Гнатушенко, Г.К. Витовтов. Аналіз систем масового обслуговування при стрибкоподібній зміні інтенсивностей потоків інформації // Прикладні питання математичного моделювання. 2021. Т. 4, no 2.1. С. 76–83. doi: 10.32782/KNTU2618-0340/2021.4.2.1.7.

Published

2024-06-14

How to Cite

Tokar, L., Tsyliuryk, V., & Solodilov, V. (2024). Study of data replication process using Raft replication algorithm to maintain consistency in server cluster. Radiotekhnika, 2(217), 117–127. https://doi.org/10.30837/rt.2024.2.217.10

Issue

Section

Articles