Zakaj je pomembno preveriti veljavnost programske opreme v pomnilniku visoke razpoložljivosti (99,9999%)

Zakaj je pomembno preveriti veljavnost programske opreme v pomnilniku visoke razpoložljivosti (99,9999%)

Katera različica vdelane programske opreme je najbolj "pravilna" in "delujoča"? Če sistem za shranjevanje zagotavlja toleranco napak 99,9999 %, ali to pomeni, da bo deloval brez prekinitev tudi brez posodobitve programske opreme? Ali pa bi morali, nasprotno, za največjo toleranco napak vedno namestiti najnovejšo vdelano programsko opremo? Na ta vprašanja bomo poskušali odgovoriti na podlagi naših izkušenj.

Majhen uvod

Vsi razumemo, da vsaka različica programske opreme, pa naj gre za operacijski sistem ali gonilnik za napravo, pogosto vsebuje napake/hrošče in druge »lastnosti«, ki se morda ne »pojavijo« do konca življenjske dobe opreme ali »odprejo«. samo pod določenimi pogoji. Število in pomen takšnih nians je odvisen od kompleksnosti (funkcionalnosti) programske opreme in od kakovosti testiranja med njenim razvojem. 

Uporabniki pogosto ostanejo na "tovarniško vdelani programski opremi" (slavno "deluje, zato se ne zapletajte z njo") ali vedno namestijo najnovejšo različico (po njihovem razumevanju najnovejša pomeni najbolj delujočo). Uporabljamo drugačen pristop - pogledamo opombe ob izdaji za vse uporabljene v oblaku mClouds opremo in skrbno izberite ustrezno vdelano programsko opremo za vsak kos opreme.

Do tega zaključka smo prišli, kot pravijo, z izkušnjami. Na našem primeru delovanja vam bomo povedali, zakaj obljubljena 99,9999% zanesljivost sistemov za shranjevanje ne pomeni nič, če ne spremljate sproti posodobitev in opisov programske opreme. Naš primer je primeren za uporabnike sistemov za shranjevanje katerega koli proizvajalca, saj se podobna situacija lahko zgodi s strojno opremo katerega koli proizvajalca.

Izbira novega sistema za shranjevanje

Konec lanskega leta smo v našo infrastrukturo dodali zanimiv sistem za shranjevanje podatkov: mlajši model iz linije IBM FlashSystem 5000, ki se je ob nakupu imenoval Storwize V5010e. Zdaj se prodaja pod imenom FlashSystem 5010, vendar je v resnici ista strojna osnova z istim Spectrum Virtualize znotraj. 

Prisotnost enotnega sistema upravljanja je, mimogrede, glavna razlika med IBM FlashSystem. Pri modelih mlajših serij se praktično ne razlikuje od modelov bolj produktivnih. Izbira določenega modela zagotavlja le ustrezno strojno osnovo, katere lastnosti omogočajo uporabo ene ali druge funkcionalnosti ali zagotavljajo višjo stopnjo razširljivosti. Programska oprema identificira strojno opremo in zagotavlja potrebno in zadostno funkcionalnost za to platformo.

Zakaj je pomembno preveriti veljavnost programske opreme v pomnilniku visoke razpoložljivosti (99,9999%)IBM FlashSystem 5010

Na kratko o našem modelu 5010. To je vstopni sistem za shranjevanje blokov z dvojnim krmilnikom. Lahko sprejme NLSAS, SAS, SSD diske. Namestitev NVMe v njem ni na voljo, saj je ta model shranjevanja nameščen za reševanje težav, ki ne zahtevajo zmogljivosti pogonov NVMe.

Shranjevalni sistem je bil kupljen za shranjevanje arhivskih informacij oziroma podatkov, do katerih ni pogosto dostopa. Zato nam je zadostoval standardni nabor njegove funkcionalnosti: Tiering (Easy Tier), Thin Provision. Tudi zmogljivost na diskih NLSAS na ravni 1000-2000 IOPS je bila za nas povsem zadovoljiva.

Naše izkušnje - kako nismo pravočasno posodobili vdelane programske opreme

Zdaj o sami posodobitvi programske opreme. Sistem je imel ob nakupu že nekoliko zastarelo različico programske opreme Spectrum Virtualize in sicer 8.2.1.3.

Preučili smo opise vdelane programske opreme in načrtovali posodobitev na 8.2.1.9. Če bi bili malo bolj učinkoviti, tega članka ne bi bilo – napaka se ne bi pojavila pri novejši vdelani programski opremi. Vendar je bila posodobitev tega sistema zaradi določenih razlogov odložena.

Posledično je rahla zamuda posodobitve povzročila izjemno neprijetno sliko, kot je v opisu na povezavi: https://www.ibm.com/support/pages/node/6172341

Da, v vdelani programski opremi te različice je bil pomemben tako imenovani APAR (Pooblaščeno poročilo o analizi programa) HU02104. Videti je takole. Pod obremenitvijo se v določenih okoliščinah predpomnilnik začne prelivati, nato sistem preide v zaščitni način, v katerem onemogoči V/I za bazen. V našem primeru je bilo videti kot odklop 3 diskov za skupino RAID v načinu RAID 6. Prekinitev povezave traja 6 minut. Nato se obnovi dostop do zvezkov v bazenu.

Če kdo ne pozna strukture in poimenovanja logičnih entitet v kontekstu IBM Spectrum Virtualize, bom zdaj na kratko razložil.

Zakaj je pomembno preveriti veljavnost programske opreme v pomnilniku visoke razpoložljivosti (99,9999%)Struktura logičnih elementov pomnilniškega sistema

Diski so zbrani v skupine, imenovane MDisk (Managed Disk). MDisk je lahko klasičen RAID (0,1,10,5,6) ali virtualiziran - DRAID (Distributed RAID). Uporaba DRAID vam omogoča povečanje zmogljivosti polja, ker... Uporabljeni bodo vsi diski v skupini, čas obnove pa se bo skrajšal, ker bo treba obnoviti le določene bloke in ne vseh podatkov z okvarjenega diska.

Zakaj je pomembno preveriti veljavnost programske opreme v pomnilniku visoke razpoložljivosti (99,9999%)Porazdelitev podatkovnih blokov po diskih pri uporabi porazdeljenega RAID (DRAID) v načinu RAID-5.

In ta diagram prikazuje logiko, kako deluje ponovna izgradnja DRAID v primeru okvare enega diska:

Zakaj je pomembno preveriti veljavnost programske opreme v pomnilniku visoke razpoložljivosti (99,9999%)Logika ponovne izdelave DRAID, ko en disk odpove

Nato eden ali več diskov MDisk tvori tako imenovani bazen. Znotraj istega bazena ni priporočljivo uporabljati MDisk z različnimi nivoji RAID/DRAID na diskih iste vrste. V to se ne bomo spuščali pregloboko, ker... nameravamo to obravnavati v enem od naslednjih člankov. No, pravzaprav je bazen razdeljen na zvezke, ki so gostiteljem predstavljeni z uporabo enega ali drugega protokola za blokiranje dostopa.

Torej smo zaradi situacije, opisane v APAR HU02104, zaradi logične okvare treh diskov je MDisk prenehal delovati, kar je posledično povzročilo okvaro bazena in pripadajočih volumnov.

Ker so ti sistemi precej pametni, jih je mogoče povezati s sistemom za spremljanje v oblaku IBM Storage Insights, ki samodejno pošlje servisno zahtevo IBM-ovi podpori, če pride do težave. Ustvari se aplikacija in IBM-ovi strokovnjaki na daljavo izvedejo diagnostiko in vzpostavijo stik z uporabnikom sistema. 

Zahvaljujoč temu je bila težava precej hitro odpravljena in služba za podporo je prejela takojšnje priporočilo za posodobitev našega sistema na predhodno izbrano strojno programsko opremo 8.2.1.9, ki je bila takrat že popravljena. Potrjuje ustrezno opombo ob izdaji.

Rezultati in naša priporočila

Kot pravi pregovor: "vse je dobro, kar se dobro konča." Napaka v vdelani programski opremi ni povzročila resnih težav - strežniki so bili obnovljeni v najkrajšem možnem času in brez izgube podatkov. Nekateri odjemalci so morali ponovno zagnati virtualne stroje, na splošno pa smo bili pripravljeni na več negativnih posledic, saj dnevno delamo varnostne kopije vseh infrastrukturnih elementov in odjemalskih strojev. 

Prejeli smo potrditev, da tudi zanesljivi sistemi z 99,9999% obljubljeno razpoložljivostjo zahtevajo pozornost in pravočasno vzdrževanje. Glede na situacijo smo sami potegnili številne zaključke in delili svoja priporočila:

  • Nujno je spremljati izdajo posodobitev, preučiti opombe ob izdaji za popravke potencialno kritičnih težav in pravočasno izvesti načrtovane posodobitve.

    To je organizacijska in celo precej očitna točka, na katero se zdi, da se ni vredno osredotočati. Vendar pa se na tej "ravni podlagi" zlahka spotaknete. Pravzaprav je bil ta trenutek tisti, ki je dodal zgoraj opisane težave. Bodite zelo previdni pri pripravi posodobitvenih predpisov in ne manj skrbno spremljajte skladnost z njimi. Ta točka se bolj nanaša na koncept »discipline«.

  • Vedno je bolje imeti sistem z najnovejšo različico programske opreme. Poleg tega aktualna ni tista z večjo številčno oznako, temveč tista s poznejšim datumom izdaje. 

    Na primer, IBM posodablja vsaj dve izdaji programske opreme za svoje sisteme za shranjevanje. V času tega pisanja sta to 8.2 in 8.3. Posodobitve za 8.2 pridejo prej. Podobna posodobitev za 8.3 je običajno izdana z majhno zamudo.

    Izdaja 8.3 ima številne funkcionalne prednosti, na primer možnost razširitve MDisk (v načinu DRAID) z dodajanjem enega ali več novih diskov (ta funkcija se je pojavila od različice 8.3.1). To je dokaj osnovna funkcionalnost, vendar v 8.2 te funkcije žal ni.

  • Če posodobitev iz kakršnega koli razloga ni mogoča, potem za različice programske opreme Spectrum Virtualize pred različicama 8.2.1.9 in 8.3.1.0 (kjer je zgoraj opisana napaka ustrezna) IBM-ova tehnična podpora priporoča, da se zmanjša tveganje njenega pojava. omejevanje zmogljivosti sistema na ravni bazena, kot je prikazano na spodnji sliki (slika je bila posneta v rusificirani različici GUI). Vrednost 10000 IOPS je prikazana kot primer in je izbrana glede na značilnosti vašega sistema.

Zakaj je pomembno preveriti veljavnost programske opreme v pomnilniku visoke razpoložljivosti (99,9999%)Omejitev zmogljivosti IBM-ovega pomnilnika

  • Potrebno je pravilno izračunati obremenitev skladiščnih sistemov in se izogniti preobremenitvi. Če želite to narediti, lahko uporabite bodisi IBM sizer (če imate dostop do njega), bodisi pomoč partnerjev ali vire tretjih oseb. Nujno je treba razumeti profil obremenitve sistema za shranjevanje, ker Zmogljivost v MB/s in IOPS se močno razlikuje glede na vsaj naslednje parametre:

    • vrsta operacije: branje ali pisanje,

    • velikost operacijskega bloka,

    • odstotek operacij branja in pisanja v celotnem V/I toku.

    Na hitrost delovanja vpliva tudi način branja podatkovnih blokov: zaporedno ali v naključnem vrstnem redu. Pri izvajanju več operacij dostopa do podatkov na strani aplikacije obstaja koncept odvisnih operacij. Priporočljivo je tudi to upoštevati. Vse to lahko pomaga videti celotno količino podatkov iz števcev zmogljivosti operacijskega sistema, sistema za shranjevanje, strežnikov/hipervizorjev, kot tudi razumevanje funkcij delovanja aplikacij, DBMS-jev in drugih "porabnikov" diskovnih virov.

  • In končno, poskrbite, da bodo varnostne kopije posodobljene in delujoče. Razpored varnostnega kopiranja mora biti konfiguriran na podlagi sprejemljivih vrednosti RPO za podjetje in občasne preglede celovitosti varnostnih kopij je treba preveriti (kar nekaj prodajalcev programske opreme za varnostno kopiranje ima v svojih izdelkih implementirano samodejno preverjanje), da se zagotovi sprejemljiva vrednost RTO.

Hvala, ker ste prebrali do konca.
Pripravljeni smo odgovoriti na vaša vprašanja in komentarje v komentarjih. tudi Vabimo vas, da se naročite na naš telegram kanal, v katerem izvajamo redne akcije (popusti na IaaS in nagradna igra za promocijske kode do 100% na VPS), pišemo zanimive novice in objavljamo nove članke na blogu Habr.

Vir: www.habr.com

Dodaj komentar