Өндөр хүртээмжтэй хадгалах сан дээрээ програм хангамжийг баталгаажуулах нь яагаад чухал вэ (99,9999%)

Өндөр хүртээмжтэй хадгалах сан дээрээ програм хангамжийг баталгаажуулах нь яагаад чухал вэ (99,9999%)

Програм хангамжийн аль хувилбар нь хамгийн "зөв" бөгөөд "ажилладаг" вэ? Хадгалах систем нь 99,9999%-ийн алдааны тэсвэрлэх чадварыг баталгаажуулдаг бол энэ нь програм хангамжийн шинэчлэлгүйгээр ч тасралтгүй ажиллана гэсэн үг үү? Эсвэл эсрэгээр, хамгийн дээд зэргийн алдааг тэсвэрлэхийн тулд та үргэлж хамгийн сүүлийн үеийн програм хангамжийг суулгах ёстой юу? Бид өөрсдийн туршлага дээрээ үндэслэн эдгээр асуултад хариулахыг хичээх болно.

Жижиг танилцуулга

Үйлдлийн систем эсвэл төхөөрөмжийн драйвер гэх мэт програм хангамжийн хувилбар бүр нь ихэвчлэн төхөөрөмжийн ашиглалтын хугацаа дуустал "харагдахгүй" эсвэл "нээлттэй" байж болох согог/алдаа болон бусад "онцлогуудыг" агуулдаг гэдгийг бид бүгд ойлгодог. зөвхөн тодорхой нөхцөлд. Ийм нюансуудын тоо, ач холбогдол нь програм хангамжийн нарийн төвөгтэй байдал (функциональ байдал), түүнийг боловсруулах явцад туршилтын чанараас хамаарна. 

Ихэнхдээ хэрэглэгчид "үйлдвэрээс гарсан програм хангамж" (алдарт "энэ нь ажилладаг, тиймээс үүнтэй бүү хутгалдах") дээр үлддэг эсвэл үргэлж хамгийн сүүлийн хувилбарыг суулгадаг (тэдний ойлголтоор хамгийн сүүлийн үеийн хувилбар нь хамгийн сайн ажилладаг гэсэн үг). Бид өөр арга хэрэглэдэг - ашигласан бүх зүйлийн хувилбарын тэмдэглэлийг хардаг mClouds үүлэн дотор тоног төхөөрөмж тус бүрт тохирох программ хангамжийг сайтар сонго.

Тэдний хэлснээр бид туршлагаараа ийм дүгнэлтэд хүрсэн. Үйл ажиллагааныхаа жишээг ашиглан, хэрэв та програм хангамжийн шинэчлэлт, тайлбарыг цаг алдалгүй хянахгүй бол хадгалалтын системийн 99,9999% найдвартай байдал нь яагаад юу ч биш болохыг танд хэлэх болно. Манай хэрэг нь ямар ч үйлдвэрлэгчийн техник хангамжид ижил төстэй нөхцөл байдал үүсч болзошгүй тул ямар ч үйлдвэрлэгчийн хадгалах систем хэрэглэгчдэд тохиромжтой.

Шинэ хадгалах системийг сонгох

Өнгөрсөн оны сүүлээр манай дэд бүтцэд сонирхолтой мэдээлэл хадгалах систем нэмэгдсэн: IBM FlashSystem 5000 шугамын бага загвар нь худалдан авах үед Storwize V5010e гэж нэрлэгддэг байсан. Одоо энэ нь FlashSystem 5010 нэрээр зарагдаж байгаа боловч үнэн хэрэгтээ энэ нь ижил Spectrum Virtualize-тэй ижил техник хангамжийн суурь юм. 

Удирдлагын нэгдсэн систем байгаа нь IBM FlashSystem-ийн гол ялгаа юм. Залуу цувралын загваруудын хувьд энэ нь илүү бүтээмжтэй загваруудаас бараг ялгаатай биш юм. Тодорхой загварыг сонгох нь зөвхөн тохирох техник хангамжийн суурийг бий болгодог бөгөөд тэдгээрийн шинж чанар нь нэг юмуу өөр функцийг ашиглах боломжтой эсвэл илүү өндөр түвшний өргөтгөх боломжийг олгодог. Програм хангамж нь техник хангамжийг тодорхойлж, энэ платформд шаардлагатай, хангалттай ажиллагааг хангадаг.

Өндөр хүртээмжтэй хадгалах сан дээрээ програм хангамжийг баталгаажуулах нь яагаад чухал вэ (99,9999%)IBM FlashSystem 5010

Манай 5010 загварын тухай товчхон. Энэ бол анхан шатны давхар хянагч блок хадгалах систем юм. Энэ нь NLSAS, SAS, SSD дискийг багтаах боломжтой. Энэ хадгалах загвар нь NVMe хөтчүүдийн гүйцэтгэлийг шаарддаггүй асуудлуудыг шийдвэрлэхэд зориулагдсан тул NVMe байршуулалтыг үүн дотор ашиглах боломжгүй.

Хадгалах системийг архивын мэдээлэл эсвэл байнга ханддаггүй өгөгдлийг хадгалах зорилгоор худалдаж авсан. Тиймээс түүний үйл ажиллагааны стандарт багц нь бидний хувьд хангалттай байсан: Tiering (Easy Tier), Thin Provision. NLSAS дискний 1000-2000 IOPS түвшний гүйцэтгэл нь бидний хувьд хангалттай байсан.

Бидний туршлага - бид програмыг цаг тухайд нь шинэчилээгүй

Одоо програм хангамжийн шинэчлэлийн талаар. Худалдан авах үед систем нь Spectrum Virtualize програм хангамжийн бага зэрэг хуучирсан хувилбартай байсан, тухайлбал, 8.2.1.3.

Бид програм хангамжийн тайлбарыг судалж, шинэчлэлт хийхээр төлөвлөсөн 8.2.1.9. Хэрэв бид арай илүү үр дүнтэй байсан бол энэ нийтлэл байхгүй байх байсан - энэ алдаа сүүлийн үеийн програм хангамж дээр гарахгүй байх байсан. Гэсэн хэдий ч тодорхой шалтгааны улмаас энэ системийг шинэчлэх ажлыг хойшлуулсан.

Үүний үр дүнд шинэчлэлтийн бага зэрэг саатал нь линк дээрх тайлбарт байгаа шиг маш тааламжгүй дүр төрхийг бий болгосон. https://www.ibm.com/support/pages/node/6172341

Тиймээ, энэ хувилбарын програм хангамжид APAR (Эрх бүхий хөтөлбөрийн шинжилгээний тайлан) HU02104 хамааралтай байсан. Энэ нь дараах байдлаар харагдаж байна. Ачааллын дор, тодорхой нөхцөлд кэш дүүрч эхэлдэг бөгөөд дараа нь систем хамгаалалтын горимд шилждэг бөгөөд энэ нь усан санд зориулсан I/O-г идэвхгүй болгодог. Манай тохиолдолд RAID 3 горимд RAID бүлгийн 6 дискийг салгаж байгаа мэт харагдсан. Салалт 6 минутын турш явагдана. Дараа нь усан сан дахь эзлэхүүн рүү нэвтрэх эрх сэргээгдэх болно.

Хэрэв хэн нэгэн IBM Spectrum Virtualize-ийн контекст дэх логик объектуудын бүтэц, нэршлийн талаар мэдэхгүй бол би одоо товч тайлбарлах болно.

Өндөр хүртээмжтэй хадгалах сан дээрээ програм хангамжийг баталгаажуулах нь яагаад чухал вэ (99,9999%)Хадгалах системийн логик элементүүдийн бүтэц

Дискүүдийг MDisk (Managed Disk) гэж нэрлэдэг бүлэгт цуглуулдаг. MDisk нь сонгодог RAID (0,1,10,5,6) эсвэл виртуалчлагдсан DRAID (Distributed RAID) байж болно. DRAID ашиглах нь массивын гүйцэтгэлийг нэмэгдүүлэх боломжийг олгодог, учир нь... Бүлэг дэх бүх дискийг ашиглах бөгөөд бүтэлгүйтсэн дискний бүх өгөгдлийг биш, зөвхөн тодорхой блокуудыг сэргээх шаардлагатай тул дахин бүтээх хугацаа багасах болно.

Өндөр хүртээмжтэй хадгалах сан дээрээ програм хангамжийг баталгаажуулах нь яагаад чухал вэ (99,9999%)RAID-5 горимд Distributed RAID (DRAID) ашиглах үед өгөгдлийн блокуудыг дискээр хуваарилах.

Мөн энэ диаграмм нь нэг дискний эвдрэл гарсан тохиолдолд DRAID дахин бүтээх хэрхэн ажилладаг логикийг харуулж байна:

Өндөр хүртээмжтэй хадгалах сан дээрээ програм хангамжийг баталгаажуулах нь яагаад чухал вэ (99,9999%)Нэг диск эвдэрсэн үед DRAID дахин бүтээх логик

Дараа нь нэг буюу хэд хэдэн MDisk нь Pool гэж нэрлэгддэг хэсгийг бүрдүүлдэг. Нэг усан сан дотор өөр өөр RAID/DRAID түвшний MDisk-ийг ижил төрлийн дискэн дээр ашиглахыг зөвлөдөггүй. Бид энэ талаар хэт гүнзгийрүүлэхгүй, учир нь ... Бид үүнийг дараах нийтлэлүүдийн аль нэгэнд оруулахаар төлөвлөж байна. Үнэн хэрэгтээ, Pool нь хостуудад нэг буюу өөр блок хандалтын протоколыг ашиглан танилцуулсан Ботьуудад хуваагддаг.

Тиймээс, бид дээр дурдсан нөхцөл байдлын үр дүнд APAR HU02104, гурван дискний логик эвдрэлийн улмаас MDisk ажиллахаа больсон бөгөөд энэ нь эргээд Pool болон холбогдох ботьуудын эвдрэлд хүргэсэн.

Эдгээр системүүд нь нэлээд ухаалаг учир IBM Storage Insights үүлэнд суурилсан хяналтын системд холбогдож, асуудал гарвал IBM-ийн дэмжлэг рүү автоматаар үйлчилгээний хүсэлт илгээдэг. Аппликейшн үүсгэгдсэн бөгөөд IBM-ийн мэргэжилтнүүд алсаас оношилгоо хийж, системийн хэрэглэгчтэй холбогддог. 

Үүний ачаар асуудал маш хурдан шийдэгдэж, манай системийг өмнө нь сонгосон 8.2.1.9 програм хангамж болгон шинэчлэх талаар дэмжлэг үзүүлэх үйлчилгээнээс шуурхай зөвлөмжийг хүлээн авсан бөгөөд тэр үед аль хэдийн засварлагдсан байсан. Энэ нь баталж байна холбогдох хувилбарын тэмдэглэл.

Үр дүн ба бидний зөвлөмж

"Бүх зүйл сайхан төгсдөг" гэдэг үг байдаг. Програм хангамжийн алдаа нь ноцтой асуудал үүсгээгүй - серверүүд аль болох хурдан сэргээгдэж, өгөгдөл алдагдахгүй. Зарим үйлчлүүлэгчид виртуал машинуудыг дахин эхлүүлэх шаардлагатай болсон ч ерөнхийдөө бид бүх дэд бүтцийн элементүүд болон үйлчлүүлэгч машинуудын нөөцлөлтийг өдөр бүр хийдэг тул илүү сөрөг үр дагаварт бэлэн байсан. 

99,9999%-ийн хүртээмжтэй найдвартай системүүд хүртэл анхаарал хандуулж, цаг тухайд нь засвар үйлчилгээ шаарддаг гэдгийг бид баталгаажуулсан. Нөхцөл байдлын үндсэн дээр бид хэд хэдэн дүгнэлт хийж, санал бодлоо хуваалцаж байна.

  • Шинэчлэлтүүдийг гаргахад хяналт тавьж, эгзэгтэй асуудлуудыг засахын тулд Хувилбарын тэмдэглэлийг судалж, төлөвлөсөн шинэчлэлтүүдийг цаг тухайд нь хийх нь зайлшгүй чухал юм.

    Энэ бол зохион байгуулалттай, тэр ч байтугай нэлээд тодорхой цэг бөгөөд үүнд анхаарлаа хандуулах нь үнэ цэнэтэй зүйл биш юм шиг санагдаж байна. Гэсэн хэдий ч энэ "түвшин" дээр та маш амархан бүдэрч чадна. Чухамдаа энэ мөчид дээр дурдсан бэрхшээлийг нэмж оруулсан юм. Шинэчлэх журмыг боловсруулахдаа маш болгоомжтой байгаарай, тэдгээрийн хэрэгжилтийг сайтар хянаж байгаарай. Энэ цэг нь "сахилга бат" гэсэн ойлголттой илүү холбоотой.

  • Системийг хамгийн сүүлийн үеийн програм хангамжийн хувилбартай байлгах нь үргэлж дээр юм. Түүгээр ч барахгүй одоогийнх нь илүү том тоон тэмдэглэгээтэй биш, харин хожим гарах огноотой юм. 

    Жишээлбэл, IBM нь хадгалах системдээ зориулж хамгийн багадаа хоёр програм хангамжийн хувилбарыг шинэчилдэг. Үүнийг бичиж байх үед эдгээр нь 8.2 ба 8.3 юм. 8.2-ын шинэчлэлтүүд эрт гарах болно. 8.3-ийн ижил төстэй шинэчлэлтийг ихэвчлэн бага зэрэг сааталтайгаар гаргадаг.

    8.3 хувилбар нь хэд хэдэн функциональ давуу талтай, жишээлбэл, нэг буюу хэд хэдэн шинэ диск нэмэх замаар MDisk-ийг (DRAID горимд) өргөтгөх чадвартай (энэ функц нь 8.3.1 хувилбараас хойш гарч ирсэн). Энэ бол нэлээд энгийн функц боловч 8.2-т харамсалтай нь ийм функц байхгүй байна.

  • Хэрэв ямар нэг шалтгааны улмаас шинэчлэх боломжгүй бол Spectrum Virtualize програм хангамжийн 8.2.1.9 ба 8.3.1.0 хувилбараас өмнөх хувилбаруудад (дээр тайлбарласан алдаа хамааралтай бол) гарах эрсдэлийг бууруулахын тулд IBM-ийн техникийн дэмжлэг зөвлөж байна. доорх зурагт үзүүлсэн шиг усан сангийн түвшинд системийн гүйцэтгэлийг хязгаарлах (зургийг GUI-ийн оросжуулсан хувилбараар авсан). 10000 IOPS-ийн утгыг жишээ болгон харуулсан бөгөөд таны системийн онцлогоос хамааран сонгосон.

Өндөр хүртээмжтэй хадгалах сан дээрээ програм хангамжийг баталгаажуулах нь яагаад чухал вэ (99,9999%)IBM-ийн хадгалалтын гүйцэтгэлийг хязгаарлах

  • Хадгалах системийн ачааллыг зөв тооцоолох, хэт ачааллаас зайлсхийх шаардлагатай. Үүнийг хийхийн тулд та IBM хэмжигч (хэрэв танд хандах боломжтой бол), эсвэл түншүүдийн тусламж эсвэл гуравдагч талын нөөцийг ашиглаж болно. Хадгалах систем дээрх ачааллын профайлыг ойлгох нь зайлшгүй шаардлагатай, учир нь MB/s болон IOPS-ийн гүйцэтгэл нь дор хаяж дараах параметрүүдээс хамааран ихээхэн ялгаатай байна.

    • үйлдлийн төрөл: унших эсвэл бичих,

    • үйлдлийн блокийн хэмжээ,

    • нийт оролт гаралтын урсгал дахь унших, бичих үйлдлийн хувь.

    Мөн үйлдлийн хурд нь өгөгдлийн блокуудыг хэрхэн уншихаас хамаарна: дараалсан эсвэл санамсаргүй дарааллаар. Хэрэглээний тал дээр олон тооны өгөгдөлд хандах үйлдлийг гүйцэтгэхэд хамааралтай үйлдлүүд гэсэн ойлголт байдаг. Үүнийг бас анхаарч үзэхийг зөвлөж байна. Энэ бүхэн нь үйлдлийн системийн гүйцэтгэлийн тоолуур, хадгалах систем, серверүүд/гипервайзеруудын өгөгдлийн нийлбэрийг харахаас гадна програмууд, DBMS болон дискний нөөцийн бусад "хэрэглэгч"-ийн үйл ажиллагааны шинж чанаруудын талаархи ойлголтод тусална.

  • Эцэст нь, нөөцлөлтийг шинэчилж, ажиллаж байгаа эсэхийг шалгаарай. Нөөцлөлтийн хуваарийг бизнесийн хувьд хүлээн зөвшөөрөгдсөн RPO утгууд дээр үндэслэн тохируулах ёстой бөгөөд хүлээн зөвшөөрөгдсөн RTO утгыг баталгаажуулахын тулд нөөцлөлтийн бүрэн бүтэн байдлыг үе үе шалгаж байх ёстой (хэд хэдэн нөөц програм хангамжийн үйлдвэрлэгчид өөрсдийн бүтээгдэхүүндээ автомат баталгаажуулалтыг хэрэгжүүлсэн байдаг).

Дуустал нь уншсан танд баярлалаа.
Бид таны асуулт, сэтгэгдэлд хариулахад бэлэн байна. Мөн Таныг манай телеграм сувагт бүртгүүлэхийг урьж байна, Бид тогтмол урамшуулал (IaaS-ийн хөнгөлөлт, VPS дээр 100% хүртэл сурталчилгааны кодыг бэлэглэх) зохион байгуулдаг, сонирхолтой мэдээ бичиж, Habr блог дээр шинэ нийтлэлүүдийг зарладаг.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх