Detailed explanation of Linux inotify real-time backup implementation method

Detailed explanation of Linux inotify real-time backup implementation method

Real-time replication is the most important way to back up enterprise data. It is mainly used to back up data submitted by users. For ordinary files (pictures, compressed packages, videos, documents, etc.) submitted by users to the server, the inotify/sersync+rsync real-time backup method can be used; for data files, there are more complex distributed storage tools that can back up data into multiple copies at the same time, such as: FastDFS, GlusterFS, etc.; for data submitted to the database, the master-slave replication of the database (for example: MySQL, Oracle) can be used for backup, which is the real-time replication backup method that comes with the software. Some companies will adopt more ideas to realize that data is converted into multiple copies at the same time. For example, when submitting data, the program business logic is submitted to two servers at the same time.

Simulate real-time replication deployment preparation

Real-time replication software introduction

Commonly used software: inotify-tools, sersync (recommended)

Introduction to the real-time replication inotify mechanism

The Linux kernel has added Inotify support since 2.6.13. It is an asynchronous system event monitoring mechanism. Through inotify, various events such as adding, deleting, modifying, and moving in the file system can be monitored. Using this kernel interface, third-party software (such as inotify-tools, sersync) can monitor the changes of various files in the file system and make real-time responses.

Note: The sersync software is developed based on inotify, and has more powerful functions. It supports configuration files, scheduled retry replication, filtering mechanism, provides interfaces for CDN data updates, and supports multi-threaded operations.

Pros and Cons

Advantages of inotify: monitor changes in file system events and achieve real-time data replication through replication tools. Supports multi-threaded real-time replication.

Disadvantages of inotify: If the number of concurrent copies is greater than 200 files (10-100k), there will be a delay in copying.

Solution: Buy time at the front desk. For example, after we register an account or upload data and click Submit, the page will display for a few seconds and then return to the original page.

inotify+rsync project practice

1. Ensure that the rsync service is available and that data can be pushed and pulled from the nfs01 server to the backup server.

2. Check system support

①The kernel version must be greater than 2.6.13 ②The following three files must be present

3. Test the inotify-tools software

[root@nfs01 ~]# yum install inotify-tools -y

Open two windows to test:

Writing the script:

Note: Open another nfs01 window to create, modify, and delete files, and check whether they are synchronized in real time on the backup server.

4. Test the sersync software

Upload Package

Unzip

tar -xf sersync2.5.4_64bit_binary_stable_final.tar.gz -C /application/sersync/

The configuration file of sersync is an XML file. Back it up first. cp confxml.xml{,.ori}

Modify the configuration file (enter :set nu to display line numbers):

implement

Because sersync is not installed by yum, you cannot use the systemctl command to start, stop, or restart

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • Linux uses Rsync+Inotify to achieve real-time synchronization of local and remote data
  • Use Pyinotify module in Linux to monitor file system changes in real time
  • How to use Linux inotify to monitor file status
  • Using rsync+inotify in Linux system to achieve real-time synchronization of files between servers
  • Automatically synchronize web pages in Linux system through rsync+inotify
  • Realize real-time data backup through rsync+inotify under Linux (remote disaster recovery backup system)

<<:  Summary of basic knowledge points of MySql database

>>:  js to realize the rotation of web page pictures

Recommend

Which scenarios in JavaScript cannot use arrow functions

Table of contents 1. Define object methods 2. Def...

Introduction to SSL certificate installation and deployment steps under Nginx

Table of contents Problem description: Installati...

MySQL 8.0.12 Simple Installation Tutorial

This article shares the installation tutorial of ...

JS implements a detailed plan for the smooth version of the progress bar

The progress bar is not smooth I believe that mos...

Dynamic starry sky background implemented with CSS3

Result:Implementation Code html <link href=...

The pitfall record of case when judging NULL value in MySQL

Table of contents Preface Mysql case when syntax:...

How to set underline in HTML? How to underline text in HTML

Underlining in HTML used to be a matter of enclos...

How to use CocosCreator object pool

Table of contents Preface: Specific operations St...

The front-end page pop-up mask prohibits page scrolling

A problem that front-end developers often encount...

Connector configuration in Tomcat

JBoss uses Tomcat as the Web container, so the co...

CSS3 achieves flippable hover effect

CSS3 implements a flippable hover effect. The spe...

How to configure NAS on Windows Server 2019

Preface This tutorial installs the latest version...

Detailed explanation of CSS multiple three-column adaptive layout implementation

Preface In order to follow the conventional WEB l...

mysql8.0.11 winx64 manual installation and configuration tutorial

First of all, let me talk to you about my daily l...