Instalējiet Linux serveri augstas pieejamības klasterī

Satura rādītājs

Cik reizes mums ir vajadzīgi pakalpojumi, vai drīzāk, lai tie vienmēr būtu pieejami, un cik reizes mums ir gadījies, ka mūsu servera cietais disks ir bojāts un mums nav rezerves, labi, domājot par tiem Apstākļos, es nolēmu to izveidot apmācība, lai nodrošinātu, ka mūsu serveri vai drīzāk mūsu pakalpojumi vienmēr ir tiešsaistē.

Ņemot vērā, ka apmācība ir paredzēta pieredzējušiem Linux lietotājiem, es nepieskaršos tādām tēmām kā bāzes sistēmas instalēšana, ko es izmantošu šoreiz CentOS 6 64 bitu pēdējā atjauninājumā. Tāpat es minēšu tikai to, kas ir absolūti nepieciešams klasteru darbībai (augstas pieejamības serveri).

Es arī komentēju, ka šī rokasgrāmata ir vērsta uz nepieciešamību uzturēt tīmekļa pakalpojumu vienmēr aktīvu, lai gan esmu to veiksmīgi izmantojis kopā ar citiem pakalpojumiem, es domāju, ka sākumā vai vienkāršāk sakot, vienkāršākais ir izveidot servera klasteru tīmekli.

Bez liekas pieķeršanās pāriesim pie labajām lietām.

Sistēmas prasības.1. RAM atmiņa 1 GB
2. Cietais disks 80 GB
3. Celeron procesors
4. Klasteru datu nodalījums (neatkarīgi no izmēra, kuru vēlaties izveidot)
5. CentOS 6 operētājsistēma (jaunākajā atjauninājumā)

Ja jūs atbilstat prasībām, sāksim Linux klasteru uzstādīšana.

Nākamā lieta ir instalēt DRBD abu serveru nodalījumu sinhronizēšanai, jo tas ir nepieciešams palaist čaulā šādus norādījumus:

1. Pievienojiet ELRepo sistēmu repozitoriju sarakstam

 [root @ node1 ~] rpm -ivh http://elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm

2. Instalējiet utilītas drbd (Distributed Replicated Block Device) un kmod paketes

 [root @ node1 ~] yum install -y kmod-drbd83 drbd83-utils
(Personīgi es izmantoju 8.3, jo 8.4 man radīja problēmas ar dažiem izplatījumiem)

3. Sistēmas kodolam tiek pievienots vai ievietots Drbd

 [root @ node1 ~] modprobe drbd

4. Jāizveido resursa fails drbd
Tas atrodas vietnē /etc/drbd.d/mydrbd.res; kur mydrbd.res ir faila nosaukums, un to var mainīt ikviens, kam mēs vēlamies, ja vien mēs saglabājam paplašinājumu .res; Šis fails jāizveido abos serveros vai, ja fails ir pareizi konfigurēts, tas tiek kopēts uz otro mezglu; konfigurācija būtu vairāk vai mazāk šāda:

 resurss mydrbd {#šis ir protokola C resursa nosaukums; startēšana {wfc-timeout 180; degr-wfc-timeout 120;} # 180 sekundes, gaidot vergu ierīci, 120 sekundes, ja tā neatbild, tā ir bojāta un paliek kā sekundārais disks {on-io-error atvienoties; } net {cram-hmac-alg "sha1"; shared-secret "slepenā atslēga";} #Šajā daļā ir norādīta atslēga ar sha1 šifrēšanu, šī atslēga ir paredzēta komunikācijai starp diviem mezgliem. syncer {rate 100M;} #sinhronizācijas ātrums, nav nozīmes tam, ka mums ir Gigabit tīkla karte, tā nedarbojas pie 1000M, maksimālais ieteicamais ātrums ir 100M (esmu to instalējis ar 10M un tas darbojas lieliski, nedaudz lēni pirmā sinhronizācija, bet tad jūs neredzat atšķirību) mezglā 1 {device / dev / drbd0; # šeit mēs norādām, kura ierīce ir rezervēta drbd, mums var būt vairākas ierīces dažādiem datiem vai dažādi pakalpojumi, piemēram, SAMBA, MySQL, cita starpā disks / dev / md2; #precizējiet nodalījumu, kas tiks izmantots drbd adresei 172.16.0.1:7788; # Mēs norādām IP ārpus mūsu tīkla diapazona, ir vērts pieminēt, ka tīkla kabelim jābūt savienotam tieši starp serveriem, neizmantojot slēdzi vai centrmezglu, ja tās ir nesenas modeļa tīkla kartes, krustošanas kabelis nav nepieciešams. iekšējais meta disks; } mezglā2 {# otrā specifikācijām ir jābūt tādām pašām kā pirmajām, mainās tikai IP adrese, tai jābūt vienai un tai pašai ostai, tas ir tāpēc, ka, ja mums būs kopā 2 klasteri, tie būs pretrunā un nedarbosies attiecīgi, ja mēs vēlamies, lai būtu vairāki klasteri, ieteicams izmantot dažādas ostas, pats par sevi saprotams, ka šīm ostām jābūt vienādām abos mezglos. ierīce / dev / drbd0; disks / dev / md2; adrese 172.16.0.2:7788; iekšējais meta disks; }}

PALIELINĀT

5. Tālāk ir sniegta resursdatora konfigurācijaTas notiek tāpēc, ka serveri tiek meklēti, izmantojot sinhronizācijas IP, nevis vietējā tīkla IP, un tādējādi mēs izvairāmies no konfliktiem ar pakalpojumiem:

 / etc / hosts 192.168.1.1 mezgls1 #mezgla1 nosaukums vietējā tīkla segmentā 192.168.1.2 mezgls2 #mezgla2 nosaukums lokālā tīkla segmentā 172.16.0.1 mezgls1 #mezgla1 nosaukums sinhronizācijas tīkla segmentā 172.16.0.2 mezgls2 #nosaukums no mezgla2 sinhronizācijā tīkla segments

6. Drbd uzglabāšanas vienība ir inicializēta

 [root @ node1 ~] drbdadm create-md disk1

7. Sākas drbd pakalpojums jeb deamon

 /etc/init.d/drbd start

8. Mezglā, kuru vēlamies būt primārais, izpildām šādu komandu

 drbdadm-vienaudžu primārā diska pārrakstīšana

9. Mēs uzraugām abu mezglu sinhronizāciju
Šim nolūkam mēs izpildām:

 kaķis / proc / drbd
Atbilde no iepriekš minētās komandas ir aptuveni šāda:
 version: 8.3.15 (api: 88 / proto: 86-97) GIT hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by phil @ Build32R6, 2012-12-20 20:23:49 1: cs: SyncSource ro: Primary / Secondary date: UpT / Nekonsekventi C rn- ns: 1060156 nr: 0 dw: 33260 dr: 1034352 al: 14 bm: 62 lo: 9 pe: 78 ua: 64 ap: 0 ep: 1 wo: f oos: 31424 [===== =============>.] sinhronizēts: 97,3% (31424/1048508) K finišs: 0:00:01 ātrums: 21,240 (15,644) K / sek # Šeit mēs varam redzēt, ka sinhronizācija sasniedz 97,3%, un tiek norādīts, ka šis ir primārais mezgls, un sekundārais mezgls šķiet neatbilstošs, jo sinhronizācija vēl nav pabeigta. #Kad esat pabeidzis, mēs atkal palaižam cat / proc / drbd, un mums ir šāds: versija: 8.3.15 (api: 88 / proto: 86-97) GIT-hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by phil @ Build32R6, 2012-12-20 20: 23: 49 1: cs: Connected ro: Primary / Secondary ds: UpToDate / UpToDate C r- ns: 1081628 nr: 0 dw: 33260 dr: 1048752 al: 14 bm: 64 lo: 0 pe: 0 ua: 0 ap: 0 ep: 1 wo: f oos: 0 # Atgriežot ziņojumu UpToDate, mēs apzināmies, ka sinhronizācija ir pabeigta un drbd nodalījumi ir tieši tādi paši.

10. Nākamā lieta ir formatēt mūsu ierīci drbdŠim nolūkam mēs izpildām:

 mkfs.ext3 / dev / drbd1
Es izmantoju ext3, jo tas man ir devis labu stabilitāti, bet mēs varētu izmantot arī ext4, es neiesaku izmantot jebkāda veida nodalījumus zem ext3.

Līdz šim mēs jau esam spējuši manuāli uzstādīt / dev / drbd1 nodalījumu jebkurā sistēmas piestiprināšanas vietā, manā gadījumā montāžai izmantoju / home, jo katram no abos mezglos reģistrētajiem lietotājiem ir savs katalogs tīmekļa lapām, tāpēc ES skrienu:

 mount -t ext3 / dev / drbd1 / home
Un es sāku veidot lietotājus datu replikācijai abos serveros, šāds ir sirdsdarbības uzstādīšana, lietojumprogramma, ko izmanto, lai uzraudzītu serverus savā starpā un kas būs atbildīgs par attiecīgo izmaiņu veikšanu, ja primārais kāda iemesla dēļ nokrīt un sekundāro pārvērš par primāro, lai nodrošinātu sistēmas funkcionalitāti.

Priekš sirdsdarbības uzstādīšana jāveic tikai šādas darbības. Repozitorijs ir instalēts lejupielādei ar šādu komandu:

 rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Rediģējiet failu:
 epel.repo /etc/yum.repos.d/epel.repo 
mainīt rindu # 6 ‘Enable = 1 by enable = 0’; jūs varat izmantot vi vai nano redaktorus, kā vēlaties.
 [epel] name = Papildu pakotnes Enterprise Linux 6 - $ basearch # baseurl = http: //download.fedoraproject.org/pub/epel/6/$basearch mirrorlist = http: //mirrors.fedoraproject.org/metalink? repo = epel -6 & arch = $ basearch failovermethod = prioritāte iespējota = 0 # Šī ir rinda, kas mums ir jārediģē Instalējiet sirdsdarbību ar šādu komandu: yum -enablerepo = epel install heartbeat Kad instalēšana būs pabeigta, tā mums pateiks kaut ko līdzīgu līdz: Uzstādīts: sirdsdarbība .i686 0: 3.0.4-1.el6 Pabeigts! 
Kad instalēšanas process ir pabeigts, nākamā lieta, kas jādara, ir rediģēt 3 būtiskos failus, lai sirdsdarbība darbotos; atrodas /etc/ha.d
  • authkeys
  • ha.cf
  • zaķu resursi

Mēs atveram failu authkeys ar šādu komandu:

 vi /etc/ha.d/authkeys
Tiek pievienotas šādas rindas:
 auth 1 1 sha1 taustiņš savienojumam starp sirdspukstiem # Šajā rindā mēs definējam, kura būs katra mezgla sirdspukstu atslēga, lai sazinātos savā starpā, tā var būt tāda pati kā drbd izmantotā vai atšķirīga.
Mēs mainām failu atļaujas authkeys lai to varētu lasīt tikai saknē:
 chmod 600 /etc/ha.d/authkeys
Tagad mēs rediģējam otro failu:
 vi /etc/ha.d/ha.cf
Mēs pievienojam šādas rindas:
 logfile / var / log / ha-log # sistēmas žurnāls ir iespējots nākotnes kļūdām logfacility local0 keepalive 2 deadtime 30 # sistēma nogaida 30 sekundes, lai paziņotu mezglu1 par nedarbojamu initdead 120 # sistēma gaida 120 sekundes, līdz mezgla startēšana gaida otru . bcast eth0 # ir norādīta Ethernet karte, caur kuru tiks pārsūtīta saziņa starp serveriem, ir ļoti svarīgi pievērst uzmanību, jo šeit mēs definējam, kura tīkla karte nonāk vietējā tīklā un kurai virzīt sinhronizāciju udpport 694 # sinhronizācijas ports ir norādīts , tāpat kā drbd, mums var būt vairāki serveri, un katrs pāris ar atbilstošo portu ir definēts kā auto_failback off #, atzīmējot to kā izslēgtu, mēs neļaujam mezglam 1, kad tas ir bojāts un bojāts, atgriezties kā primārajam vai mēģināt atgriezties, tādējādi radot konfliktu ar citu mezglu mezglu # mēs norādām abu mezglu nosaukumus. 

PALIELINĀT

Lai pabeigtu konfigurāciju, mums ir jārediģē zaķu resursu fails ar komandu:

 vi /etc/ha.d/resursi
Pievienojiet šādas rindas:
 node1 192.168.1.10/24/eth0 drbddisk :: mydrbd failu sistēma ::/ dev/ drbd0 ::/ home :: ext3 #šī līnija ir atbildīga par datu nodalījuma uzstādīšanu mezglā, uz kuru atsaucas kā primāro mezglu1 192.168.1.10/24/ eth0 httpd #šī līnija ir atbildīga par apache pakalpojuma vai tīmekļa servera definēšanu uz mezglu, kas minēts kā primārais

PALIELINĀT

Trīs faili ir jākopē uz mezglu2, par to parūpēsies šāda komanda:

 scp -r /etc/ha.d/root@node2:/etc/
Fails ir jārediģē httpd.conf lai tā klausītos virtuālā ip pieprasījumus, šajā gadījumā 192.168.1.10:
 vi /etc/httpd/conf/httpd.conf
Līnija tiek pievienota vai mainīta Klausieties 192.168.1.10:80
Modificētais fails tiek kopēts uz otro serveri:
 scp /etc/httpd/conf/httpd.conf root @ node2: /etc /httpd /conf /
Mēs sākam sirdsdarbības pakalpojumu abos mezglos:
 /etc/init.d/heartbeat start
Līdz ar to mums ir gatavs mūsu augstas pieejamības serveris, ir tikai jāievada mūsu interneta pārlūkprogramma un jāieliek ip 192.168.1.10 vai jāinstalē jūsu izvēlēts panelis domēna administrēšanai un jārada atbilstošiem lietotājiem piekļuve reģistrētajām lapām vai domēniem. serverī.

Augstas pieejamības serveri var izmantot, kā jau minēts šīs apmācības sākumā, kā: e -pasta serveris, tīmekļa serveris, datu bāzes serveris, samba serveris starp citiem; Tāpat tas palīdz mums novērst informācijas zudumu aparatūras kļūmju dēļ, un mēs varam to vairāk pastiprināt, veicot reidus uz diska vienībām, izmantojot aparatūru vai programmatūru, nekad nav par daudz, lai diski būtu reidi, lai uzturētu sistēmu.

Tomēr augstas pieejamības serveris nav atbrīvots no problēmām vai kļūdām, ja mezgls ir bojāts, mēs varam doties uz sirdsdarbības žurnālu, lai redzētu, kas noticis, tas tiek panākts, piekļūstot failam, kas piešķirts zaļo resursu konfigurācijā /etc/ha.d

Tādā pašā veidā var gadīties, ka, restartējot abus serverus kāda iemesla dēļ, tie nesākas kā primāri / sekundāri un sākas kā primārie / nepazīstamie un nepazīstamie / sekundārie.

PALIELINĀT

Lai to atrisinātu, mums jāveic šādas darbības.

Kritušā mezgla apvalkā mēs ierakstām:

 drbdadm sekundārais resurss
Sekojoši:
 drbdadm atvienot resursu
Un tad:
 drbdadm---discard-my-data savienojuma resurss
Visbeidzot, izdzīvojušajā mezglā vai primārajā mēs ierakstām:
 drbdadm savienojuma resurss
Tagad tas sāks mezglu atkārtotu sinhronizāciju no izdzīvojušā mezgla uz nokritušo mezglu, tas sākas tūlīt, nospiežot taustiņu "Ievadiet" instrukcijā 4.

Šeit notikušais ir pazīstams kā Sadalītas smadzenes, tas notiek, ja kāda iemesla dēļ primārais mezgls neizdodas un ir bojāts, kad tas ir noticis, ir ļoti ieteicams padziļināti pārskatīt un analizēt kritušo mezglu un pirms tā atkārtotas iekļaušanas klasterī, lai atrisinātu jebkuru esošo problēmu. Nepieciešams pārinstalēt visu šī mezgla operētājsistēmu un bez problēmām iekļaut to klasterī kā sekundāru sinhronizācijai, un, ja tas tā būtu, pēc sinhronizācijas mainiet to uz primāro.

Visbeidzot, es vēlos uzsvērt regulāra klasteru stāvokļa pārskatīšanaMēs labi zinām, ka, lai sasniegtu augstu veiktspēju, vienmēr ir labi būt soli priekšā datoru katastrofām; Tā kā kā IT personālam ir jāuzņemas atbildība par uzņēmuma vai uzņēmumu, kuriem mēs piederam, datu aprūpi, kā papildu piezīme, manuprāt, ir vērts ieteikt, lai mezgliem un rezerves daļām vienmēr būtu rezerves kopija. tādējādi tiek garantēta informācijas drošība.

Instalējiet un konfigurējiet Ubuntu serveri

Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave