timp de citire: 8 minute
disponibilitate ridicată este descrierea unui sistem conceput pentru a fi tolerant la erori, foarte fiabil, funcționează continuu fără intervenție sau având un singur punct de eșec. Aceste sisteme sunt foarte căutate pentru a crește disponibilitatea și timpul de funcționare necesar pentru a menține o infrastructură în funcțiune fără probleme. Următoarele caracteristici definesc un sistem de disponibilitate ridicată.
- High Availability Clustering
- toleranță la erori
- fiabilitate și fiabilitate
- manipularea erorii orchestrate
- scalabilitate
- disponibilitate& five 9 ‘s Uptime
- Heartbeat
- Cluster Architecture
- Engineered Availability
- implementare necomplicată
- cele mai bune practici obiective
- Proiectare
- disponibilitate
- implementare
- evaluare& testare
- replicarea
- monitorizare& urmărire
- concluzie
High Availability Clustering
high-availability server clusters (aka clustere HA) este definit ca un grup de servere care acceptă aplicații sau servicii care pot fi utilizate în mod fiabil cu o cantitate minimă de nefuncționare. Aceste clustere de servere funcționează folosind un tip de software specializat care utilizează redundanța pentru a atinge niveluri critice de funcționare a five9. În prezent, aproximativ 60% dintre întreprinderi au nevoie de cinci sau mai mult9 pentru a furniza servicii vitale pentru afacerile lor.
software-ul de înaltă disponibilitate valorifică software-ul redundant instalat pe mai multe sisteme prin gruparea sau gruparea unui grup de servere care se concentrează pe un obiectiv comun în cazul în care componentele eșuează. Fără această formă de grupare, dacă aplicația sau site-ul web se blochează, serviciul nu va fi disponibil până când serverele nu sunt reparate. Ha clustering abordează aceste situații prin detectarea defecțiunilor și repornirea sau înlocuirea rapidă a serverului sau serviciului sau serverului cu un nou proces care nu necesită intervenție umană. Acesta este definit ca un model „failover”.
ilustrația de mai jos demonstrează un cluster simplu cu două noduri cu disponibilitate ridicată.
clusterele de înaltă disponibilitate sunt adesea folosite pentru baze de date critice, partajare de date, aplicații și site-uri web de comerț electronic răspândite într-o rețea. Implementările cu disponibilitate ridicată construiesc redundanță într-un cluster pentru a elimina orice punct unic de eșec, inclusiv în mai multe conexiuni de rețea și stocare de date, care pot fi conectate redundant prin rețele de zone de stocare diverse din punct de vedere geografic.
serverele cu disponibilitate ridicată în cluster utilizează de obicei o metodologie de replicare numită Heartbeat care este utilizată pentru a monitoriza starea și sănătatea fiecărui nod din cluster printr-o conexiune de rețea privată. O circumstanță critică pe care toate programele de clustering trebuie să o poată aborda se numește split-brain, care apare atunci când toate legăturile interne private coboară simultan, dar nodurile din cluster continuă să ruleze. Dacă se întâmplă acest lucru, fiecare nod din cluster poate determina incorect că toate celelalte noduri au scăzut și încearcă să pornească servicii pe care alte noduri le pot rula în continuare. Această condiție a instanțelor duplicate care rulează servicii similare, care ar putea provoca corupția datelor în sistem.
o versiune tipică a software-ului de înaltă disponibilitate oferă atribute care includ atât redundanță hardware, cât și software. Aceste caracteristici includ:
- detectarea și descoperirea automată a componentelor hardware și software.
- alocarea autonomă a rolurilor active și contingente elementelor noi.
- detectarea serviciilor software eșuate, a componentelor hardware și a altor construcții de sistem.
- monitorizarea și notificarea componentelor redundante și când trebuie activate.
- abilitatea de a scala clusterul pentru a se adapta modificărilor necesare fără intervenție externă.
toleranță la erori
toleranța la erori este definit ca capacitatea infrastructurii unui sistem de a anticipa și de a rezista erorilor și de a oferi un răspuns automat la aceste probleme dacă sunt întâlnite. Calitatea primară a acestor sisteme este factorii de proiectare avansați, care pot fi solicitați în cazul în care apare o problemă. A fi capabil să configurați o infrastructură care să prevadă fiecare soluție posibilă este o sarcină considerabilă care implică cunoștințele și experiența pentru a contracara preocupările multiple înainte ca acestea să apară. Arhitecții de sistem care proiectează astfel de cadre vor avea metodologiile care prevăd mijloacele de atenuare a acestor probleme în avans și capacitatea de a implementa aceste cadre.
următoarele metodologii de redundanță sunt disponibile și ar trebui revizuite în etapele inițiale de proiectare și implementare.
- N + 1 Model – acest concept deduce suma echipamentelor necesare (pe care le vom numi ‘N’) pentru a menține întregul cadru în funcțiune, cu o copie de rezervă suplimentară independentă pentru fiecare dintre componentele ‘N’ în caz de defecțiune.
- Model N + 2-Similar cu Modelul N + 1, dar cu un strat suplimentar de protecție dacă două componente ar trebui să eșueze.
- 2n Model – această modalitate are o copie de rezervă dublă redundantă pentru fiecare element pentru a se asigura că cadrul sistemului este pe deplin funcțional.
- 2n + 1 Model-din nou, acest model este similar cu modelul 2N, dar cu o componentă suplimentară pentru a adăuga un strat terțiar de protecție la cadrul sistemului.
pe măsură ce modelele progresează de la NX la 2NX, factorul de cost crește exponențial și pentru sistemele cu adevărat redundante care necesită timp de funcționare. Aceste modalități sunt esențiale pentru stabilitate și disponibilitate.
fiabilitate și fiabilitate
unul dintre chiriașii centrali ai unui sistem de disponibilitate ridicată este uptime. Uptime este de primă importanță, mai ales dacă scopul unui sistem este de a oferi un serviciu esențial, cum ar fi sistemele 911 care răspund situațiilor emergente. În afaceri, având un sistem de disponibilitate ridicată este necesară pentru a asigura un serviciu vital rămâne on-line. Un exemplu ar fi un ISP sau alt serviciu care nu poate tolera pierderea funcției. Aceste sisteme trebuie proiectate cu disponibilitate ridicată și toleranță la erori pentru a asigura fiabilitatea și disponibilitatea, reducând în același timp timpul de nefuncționare.
manipularea erorii orchestrate
în cazul în care apare o eroare, sistemul se va adapta și va compensa problema în timp ce rămâne în sus și online. Construirea acestui tip de sistem necesită gândire și planificare pentru neașteptate. Posibilitatea de a anticipa problemele în avans și planificarea rezolvării acestora este una dintre principalele calități ale unui sistem de disponibilitate ridicată.
scalabilitate
în cazul în care sistemul întâmpină o problemă ca un vârf de trafic sau o creștere a utilizării resurselor, capacitatea sistemului de a scala pentru a satisface aceste nevoi ar trebui să fie automată și imediată. Construirea unor astfel de caracteristici în sistem va oferi capacitatea sistemului de a răspunde rapid la orice modificare a funcționalității sistemice a proceselor arhitecturilor.
disponibilitate& five 9 ‘s Uptime
Five 9′ S este standardul industrial de măsură a uptime-ului. Această măsurare poate fi legată de sistemul în sine, de procesele sistemului într-un cadru sau de programul care funcționează în interiorul unei infrastructuri. Această estimare este adesea legată de programul livrat clienților sub forma unui site web sau a unei aplicații web. O disponibilitate a sistemelor poate fi măsurată ca procent de timp în care sistemele sunt disponibile folosind această ecuație: x = (n – y) * 100/n. această formulă denotă că unde „n” este cantitatea totală de minute dintr-o lună calendaristică și „y” este cantitatea de minute în care serviciul este inaccesibil într-o lună calendaristică. Tabelul de mai jos prezintă timpul de nefuncționare legat de procentul de „9” reprezentat.
după cum putem vedea, cu cât este mai mare numărul de „9”, cu atât este oferit mai mult timp de funcționare. Scopul unui sistem de înaltă disponibilitate este de a atinge o cantitate minimă de potențial de nefuncționare pentru a se asigura că sistemul este întotdeauna disponibil pentru a furniza serviciile desemnate.
Heartbeat
una dintre principalele componente de înaltă disponibilitate se numește Heartbeat. Heartbeat este un demon care funcționează cu un software de gestionare a clusterului, cum ar fi Pacemaker, care este proiectat special pentru gestionarea resurselor de clustering de înaltă disponibilitate. Cele mai importante caracteristici ale sale sunt:
- niciun număr maxim specific sau fix de noduri – bătăile inimii pot fi utilizate pentru a construi clustere mari, precum și cele elementare.
- monitorizarea resurselor: resursele pot fi repornite automat sau mutate într-un alt nod la eșec.
- un mecanism de garduri necesar pentru a elimina nodurile eșuate din cluster.
- o gestionare rafinată a resurselor bazată pe politici, inter-dependențe de resurse și constrângeri.
- o regulă bazată pe timp setată pentru a permite politici diferite în funcție de un interval de timp definit.
- un grup de script-uri de resurse (pentru software-ul ca Apache, DB2, Oracle, PostgreSQL, etc.) a inclus un management mai granular.
- o interfață grafică pentru configurarea, controlul și monitorizarea resurselor și nodurilor.
Cluster Architecture
Engineered Availability
primul segment al unui sistem foarte disponibil este utilizarea clar concepută a serverelor de aplicații grupate care sunt proiectate în avans pentru a distribui sarcina între întregul cluster, ceea ce include capacitatea de failover la un sistem secundar și, eventual, terțiar.
a doua divizie include necesitatea scalabilității bazei de date. Aceasta implică cerința de scalare, fie pe orizontală, fie pe verticală, utilizând replicarea master multiplă și un echilibrator de sarcină pentru a îmbunătăți stabilitatea și timpul de funcționare al bazei de date.
a treia caracteristică este diversitatea geografică. Acest lucru asigură că, în cazul în care un dezastru natural lovește o singură locație, eșecul nu va împiedica capacitatea de a furniza serviciul.
a patra și, eventual, cea mai importantă componentă este de a oferi o replicare de rezervă și metodologia de recuperare în caz de dezastru. Capacitatea de a asigura o copie de rezervă funcțională garantează că datele noastre sunt în siguranță. Folosind cea mai recentă strategie de backup (3-2-3) afirmă că ar trebui să aveți trei copii ale datelor dvs., pe două tipuri diferite de media, în trei locații geografice diverse offsite pentru recuperare în caz de dezastru.
implementare necomplicată
când discutați tema implementărilor necomplicate, acestea ar trebui să fie mapate în mod specific la cerințele dvs. specifice de afaceri. Următoarele trăsături vor beneficia de cadrul nostru operațional, indiferent de verticala industriei:
- cerințe modeste de instruire
- productivitate crescută
- ciclu de viață extins
- eficiența costurilor
- eficiența operațională
- implementare rapidă
- riscuri de securitate reduse
- integrare simplă
- management simplificat
aceste caracteristici definesc multe dintre aspectele principale necesare pentru a asigura o soluție extrem de fiabilă, tolerantă la erori, de grupare. Disponibilitatea ridicată, în centrul său, ar trebui proiectată ținând cont de aceste caracteristici. Capabilități precum acestea sunt tangibile cheie care sunt active necesare la adoptarea opțiunilor de implementare.
cele mai bune practici obiective
Proiectare
scopul principal al oricărei obiectivul de cea mai bună practică de înaltă disponibilitate este proiectarea, instalarea, implementarea, integrarea și aderarea optimă la o convenție standard la cel mai mic cost rezonabil și complexitatea minimă, atingând în același timp obiectivele de referință declarate de eliminare a fiecărui punct de defecțiune din sistem.
disponibilitate
În primul rând, trebuie definit un obiectiv determinat înainte de proiectarea sistemului. Aceasta include stabilirea obiectivului punctului de recuperare (RPO). RPO este cea mai mare cantitate de nefuncționare pe care compania dvs. este dispusă să o piardă în timpul unei întreruperi majore. Hardware-ul HA, software-ul și serviciile auxiliare ar trebui să aibă toate un RPO definit și testat.
implementare
apoi, sistemul ar trebui să fie construit cu hardware-ul cel mai robust, rentabil disponibile. Aceasta include sisteme care sunt rezistente la pene de curent și defecțiuni hardware, care acoperă totul, de la hard disk-uri, componente de rețea, Sistemul de operare și aplicația în sine care cuprinde întreaga stivă de software.
evaluare& testare
odată ce sistemul este construit, un linchpin integral testează sistemul nostru țintă pentru a se asigura că sistemul de failover este gata să treacă dacă sursa eșuează. Acest lucru necesită pregătirea configurațiilor noastre de rețea, a serverelor, a software-ului de replicare sincronă în timp real și trecerea de la procesarea producției sursă la sistemul țintă care procesează trecerea la un moment dat. Această metodă utilizată în acest scenariu este cunoscută sub numele de sistem „standby la cald”. În plus, aceasta include configurarea unui program de testare regimentat, deoarece sistemul este retestat în mod regulat.
replicarea
asigurarea unei iterații reproductibile și repetabile a întregii stive de software în mai multe regiuni este esențială pentru durabilitatea constantă, livrabilitatea și soliditatea cadrului aplicației. Cealaltă zonă semnificativă de servicii este segmentul hardware replicabil, care completează software-ul și cadrele de monitorizare. Posibilitatea de a se baza pe o metodologie de duplicare dedicată este fundamentală pentru a garanta un sistem complet tolerant la erori și fiabil.
monitorizare& urmărire
În cele din urmă, monitorizarea continuă, evaluarea și observarea ar trebui să fie strict reglementate pentru a asigura îndeplinirea obiectivelor de performanță. Orice abatere de la normă trebuie investigată și evaluată pentru a determina impactul varianței asupra sistemului. Odată stabilită dispoziția respectivă, ar trebui efectuată o analiză ulterioară pentru a stabili dacă ar trebui adoptate modificări care să includă ajustarea sau modificările necesare pentru a aduce sistemul într-o nouă stare stabilă.
concluzie
scopul principal al unui sistem de înaltă disponibilitate este de a preveni și elimina toate punctele unice de eșec. Aceasta ar trebui să includă mai multe planuri de acțiune care au fost testate și puse în aplicare, gata să reacționeze independent și imediat la orice perturbări, perturbări și eșecuri ale serviciului. Aceasta include nereguli hardware, software și aplicații. Eradicarea timpilor morți poate fi realizată cu planificarea și implementarea compusă, calificată a unui sistem. Un ochi critic este necesar pentru a imagina și a se pregăti pentru orice eveniment sau dezastru, care ar putea împiedica obiectivul principal al obiectivului de uptime declarat și așteptat. Un sistem de disponibilitate ridicată bine instituit poate atinge acest obiectiv cu o planificare și proiectare corespunzătoare, reducând sau eliminând întreruperile și maximizând disponibilitatea.
planificare atentă + metodologii de implementare fiabile + platforme software stabile + infrastructură Hardware solidă + operațiuni tehnice netede + obiective de Management Prudente + securitate consecventă a datelor + sisteme de redundanță previzibile + soluții robuste de rezervă + Opțiuni de recuperare Multiple = 100% Uptime
echipele noastre de asistență talentate sunt dotate cu tehnicieni Linux experimentați și administratori de sistem care au cunoștințe intime despre mai multe tehnologii de găzduire web, în special cele discutate în acest articol.
dacă sunteți un server Vps complet gestionat, Cloud dedicat, VMware Private Cloud, Server părinte privat sau un proprietar de server dedicat și nu vă simțiți confortabil să efectuați oricare dintre pașii descriși, putem fi contactați prin telefon @800.580.4985, un chat sau un bilet de asistență pentru a vă ajuta în acest proces.