Study of data replication process using Raft replication algorithm to maintain consistency in server cluster
DOI:
https://doi.org/10.30837/rt.2024.2.217.10Keywords:
server, cluster, fault tolerance, availability, replication, consensus, Kubernetes, RaftAbstract
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.
Downloads
Published
How to Cite
Issue
Section
License
Authors who publish with this journal agree to the following terms:
1. Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License that allows others to share the work with an acknowledgement of the work's authorship and initial publication in this journal.
2. Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgement of its initial publication in this journal.
3. Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work (See The Effect of Open Access).