Aukšto pasiekiamumo web serveris

Iš Žinynas.
Jump to navigation Jump to search

Aukšto pasiekiamumo web serveris (Angl. High availability Linux web server). Pamoka apie tai, kaip sukurti aukšto pasiekiamumo web serverį jūsų svarbiems projektams. Pamoka toli gražu ne baigta, jei atsiras žmonių - įkels papildymą su DRBD. Formuosime Linux klusterį su "Heartbeat" programa CentOS 5.x sistemai.

Ko mums reikės:[keisti]

  • 2 VPS serverių su įdentiškom OS.
  • Abiejuose serveriuose bus naudojama Apache web serveris.
  • Abu serveriai turi būti vienodos virtualizacijos (pvz.: OpenVZ).

1. Vienas serveris bus mūsų pagrindinis, todėl jo IP (pvz.: AA.xx.xx.xx) pridedam prie eth0.[keisti]

ifconfig eth0 AA.xx.xx.xx

2. Priskiriam "hostname" mūsų serveriams.[keisti]

AA.xx.xx.xx - node01 (pagrindinis) BB.xx.xx.xx - node02 (atsarginis "slave")

hostname node01
hostname node02

Tam jog įsitikintumėte ar teisingai priskyrėte "hostname", kiekviename VPS'e įrašykit:

uname -n

Turėtų rodyti node01 arba node02 atitinkamai.

Dėmesio, CC.xx.xx.xx bus mūsų virtualus IP adresas kuris bus naudojamas mūsų Apache web serveriui.

3. Siunčiamės ir instaliuojam "Heartbeat" programą ant abiejų serverių.[keisti]

yum install heartbeat

4. Programas turime tinkamai sukonfigūruoti. Konfigūravimas pagrinde atliekamas 3 failų pagalba:[keisti]

   authkeys
   ha.cf
   haresources

4. Pradedam konfiguraciją (node01 serveryje), bet prieš tai perkeliam failus į atitinkamus katalogus:[keisti]

cp /usr/share/doc/heartbeat-VERSIJA/authkeys /etc/ha.d/
cp /usr/share/doc/heartbeat-VERSIJA/ha.cf /etc/ha.d/
cp /usr/share/doc/heartbeat-VERSIJA/haresources /etc/ha.d/

5. Pirma konfiguruojam authkeys failą. Naudosim 2 identifikavimo metodą sha1.[keisti]

vi /etc/ha.d/authkeys

Ir įklijuojam šias eilutes:

auth 2
2 sha1 test-ha

Suteikiam šiam failui reikalingas teises:

chmod 600 /etc/ha.d/authkeys

Judam prie mūsų antro konfiguracijos failo ha.cf .

vi /etc/ha.d/ha.cf

Ir įklijuojam žemiau esantį tekstą:

logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 30
initdead 120
bcast eth0
udpport 694
auto_failback on
node node01
node node02

6. Paskutinis konfiguracijos failas haresources. Šiame faile pateikiame duomenys apie tai kokius servisus norite aktyvuoti kaip "aukšto pasiekiamumo". Mūsų atveju - web serveris httpd.[keisti]

vi /etc/ha.d/haresources

Ir įklijuojam žemiau esantį tekstą:

node01 CC.xx.xx.xx httpd

7. Nukopijuojam /etc/ha.d/ aplanką į node02 serverį.[keisti]

8. Konfiguruojam patį httpd servisą aukštam pasiekiamumui.[keisti]

vi /etc/httpd/conf/httpd.conf

Ir įklijuojam žemiau esantį tekstą:

Listen CC.xx.xx.xx:80

Pastaba: Tai mūsų virtualus IP adresas, nesumaišykit.

9. Nukopijuojam /etc/httpd/conf/httpd.conf į node02.[keisti]

10. Sukuriam index.html failus abiejuose serveriuose.[keisti]

node01:

echo "node01 apache test serveris" > /var/www/html/index.html

node02:

echo "node02 apache test serveris" > /var/www/html/index.html

11. Paleidžiame "Heartbeat" programą serveriuose node01 ir node02.[keisti]

/etc/init.d/heartbeat start

12. Atidarom naršyklėje http://CC.xx.xx.xx . Turėtų rodyti node01 index.html failą.[keisti]

13. Dabar sustabdome node01 "Heartbeat" servisą.[keisti]

/etc/init.d/heartbeat stop

Ir vėl įrašome į naršyklės langą http://CC.xx.xx.xx . Turėtų rodyti node02 index.html failą.

Pabaiga[keisti]

Viskas, klusteris paruoštas. Pamoka labai supaprastinta, kaip jau minėjau prie "Heartbeat" reiktų naudoti DRBD programą duomenų sinchronizavimui tarp node serverių.

Naudingos nuorodos:[keisti]

   Linux HA (Heartbeat) dokumentacija/user manual
   DRBD
   Pamokos originali nuoroda (ENG)

Dėmesio! Straipsnis kopijuotas iš uzdarbis.lt. Originalaus straipsnio nuoroda.