Unsaon Pag-sync ang Duha ka Apache Web Servers/Websites Gamit ang Rsync


Adunay daghang mga tutorial nga magamit sa web aron masalamin o magkuha usa ka backup sa imong mga file sa web nga adunay lainlaing mga pamaagi, ania ako nagmugna niini nga artikulo alang sa akong umaabot nga pakisayran ug dinhi mogamit ako usa ka yano ug daghang gamit nga mando sa Linux aron makahimo usa ka backup sa imong website. Kini nga panudlo makatabang kanimo sa pag-sync sa datos tali sa imong duha ka web server nga adunay Rsync.

Ang katuyoan sa paghimo og salamin sa imong Web Server nga adunay Rsync mao nga kung ang imong nag-unang web server mapakyas, ang imong backup nga server mahimong mopuli aron makunhuran ang downtime sa imong website. Kini nga paagi sa paghimo og backup sa web server maayo kaayo ug epektibo alang sa gagmay ug medium nga gidak-on sa mga negosyo sa web.

Mga Kaayohan sa Pag-sync sa mga Web Server

Ang mga nag-unang bentaha sa paghimo og backup sa web server nga adunay rsync mao ang mga musunud:

  1. Ang Rsync nag-sync lang niadtong mga byte ug block sa datos nga nausab.
  2. Ang Rsync adunay katakus sa pagsusi ug pagtangtang niadtong mga file ug direktoryo sa backup server nga natangtang gikan sa nag-unang web server.
  3. Kini nag-atiman sa mga pagtugot, pagpanag-iya ug espesyal nga mga hiyas samtang nagkopya sa data sa layo.
  4. Gisuportahan usab niini ang SSH protocol sa pagbalhin sa datos sa paagi nga naka-encrypt aron makasiguro ka nga luwas ang tanang datos.
  5. Ang Rsync naggamit sa compression ug decompression nga pamaagi samtang nagbalhin sa datos nga nagkonsumo og gamay nga bandwidth.

Giunsa Pag-sync ang Duha ka Apache Web Server

Magpadayon kita sa pag-set up sa rsync aron makahimo og salamin sa imong web server. Dinhi, mogamit ko og duha ka server.

  1. IP Address: 192.168.0.100
  2. Hostname: webserver.example.com

  1. IP Address: 192.168.0.101
  2. Hostname: backup.example.com

Dinhi niini nga kaso ang data sa web server sa webserver.example.com makita sa backup.example.com. Ug aron mahimo kini una, kinahanglan naton i-install ang Rsync sa parehas nga server sa tabang sa pagsunod sa mando.

 yum install rsync        [On Red Hat based systems]
 apt-get install rsync    [On Debian based systems]

Mahimo namon nga i-setup ang rsync nga adunay gamut nga tiggamit, apan alang sa mga hinungdan sa seguridad, mahimo ka maghimo usa ka dili pribilihiyo nga tiggamit sa panguna nga webserver ie webserver.example.com aron makadagan ang rsync.

 useradd tecmint
 passwd tecmint

Dinhi naghimo ako og usa ka user nga tecmint ug gi-assign ang usa ka password sa user.

Panahon na aron sulayan ang imong rsync setup sa imong backup server (ie backup.example.com) ug sa pagbuhat niini, palihug i-type ang mosunod nga sugo.

 rsync -avzhe ssh [email :/var/www/ /var/www
[email 's password:

receiving incremental file list
sent 128 bytes  received 32.67K bytes  5.96K bytes/sec
total size is 12.78M  speedup is 389.70

Imong makita nga ang imong rsync nagtrabaho karon sa hingpit nga maayo ug pag-sync sa datos. Gigamit nako ang/var/www sa pagbalhin; mahimo nimong usbon ang lokasyon sa folder sumala sa imong mga panginahanglan.

Karon, nahuman na kami sa mga pag-setup sa rsync ug karon panahon na sa pag-setup sa usa ka cron alang sa rsync. Ingon nga gamiton namon ang rsync sa SSH protocol, ang ssh mangayo alang sa pag-authenticate ug kung dili kami maghatag usa ka password sa cron dili kini molihok. Aron hapsay ang pagtrabaho sa cron, kinahanglan namon nga i-setup ang mga wala’y password nga ssh logins para sa rsync.

Dinhi sa kini nga pananglitan, gibuhat ko kini ingon gamut aron mapreserbar usab ang mga pagpanag-iya sa file, mahimo usab nimo kini alang sa mga alternatibong tiggamit.

Una, maghimo kami usa ka publiko ug pribado nga yawe nga adunay pagsunod sa mga mando sa backups server (ie backup.example.com).

 ssh-keygen -t rsa -b 2048

Kung mosulod ka niini nga sugo, palihug ayaw paghatag og passphrase ug i-klik ang enter para sa Empty passphrase aron ang rsync cron dili magkinahanglan og bisan unsang password alang sa pag-sync sa data.

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
9a:33:a9:5d:f4:e1:41:26:57:d0:9a:68:5b:37:9c:23 [email 
The key's randomart image is:
+--[ RSA 2048]----+
|          .o.    |
|           ..    |
|        ..++ .   |
|        o=E *    |
|       .Sooo o   |
|       =.o o     |
|      * . o      |
|     o +         |
|    . .          |
+-----------------+

Karon, ang among Public ug Private nga yawe nahimo na ug kinahanglan namon nga ipaambit kini sa panguna nga server aron mailhan sa panguna nga web server kini nga backup nga makina ug tugutan kini nga maka-login nga wala’y pangutana bisan unsang password samtang nag-sync sa data.

 ssh-copy-id -i /root/.ssh/id_rsa.pub [email 

Karon sulayi ang pag-log in sa makina, gamit ang ssh '[email ', ug susiha ang .ssh/authorized_keys.

 [email 

Karon, nahuman na kami sa pagpaambit sa mga yawe. Aron mahibal-an ang labi ka lawom bahin sa password sa SSH nga dili kaayo pag-login, mahimo nimong basahon ang among artikulo bahin niini.

  1. SSH Passwordless Login in sa 5 Easy Steps

Mag-setup kita og cron para niini. Aron mag-setup og cron, palihug ablihi ang crontab file gamit ang mosunod nga sugo.

 crontab –e

Kini magbukas sa /etc/crontab file aron ma-edit gamit ang imong default editor. Dinhi Sa kini nga pananglitan, nagsulat ako usa ka cron aron ipadagan kini matag 5 minuto aron ma-sync ang datos.

*/5        *        *        *        *   rsync -avzhe ssh [email :/var/www/ /var/www/

Ang labaw sa cron ug rsync nga sugo yano nga nag-sync sa/var/www/gikan sa nag-unang web server ngadto sa usa ka backup server sa matag 5 minuto. Mahimo nimong usbon ang configuration sa lokasyon sa oras ug folder sumala sa imong mga panginahanglan. Aron mahimong labi ka mamugnaon ug ipasadya sa Rsync ug Cron nga mando, mahimo nimong susihon ang among mas detalyado nga mga artikulo sa:

  1. 10 Rsync nga mga Sugo sa Pag-sync sa mga File/Folder sa Linux
  2. 11 Mga Ehemplo sa Pag-iskedyul sa Cron sa Linux