Përvoja e krijimit të një ruajtjeje Ceph me kapacitet transmetimi një tebibajt në sekondë

Një inxhinier nga kompania Clyso përmblodhi përvojën e krijimit të një klasteri ruajtjeje të bazuar në sistemin e shpërndarë dhe rezistent ndaj dështimeve Ceph, me gjerësi bande që tejkalon një tebibajt në sekondë. Theksohet se ky është klasteri i parë i bazuar në Ceph që ka arritur një tregues të tillë, por për të marrë rezultatin e paraqitur, inxhinierëve iu desh të kapërcenin një sërë vështirësish jo aq të dukshme.

PĂ«r shembull, pĂ«r tĂ« rritur performancĂ«n me 10-20%, mjaftoi qĂ« nĂ« serverĂ« tĂ« aktivizohej nĂ« cilĂ«simet e kursimit tĂ« energjisĂ« tĂ« BIOS vetĂ«m modaliteti i performancĂ«s maksimale dhe tĂ« çaktivizohej c-state (c-state ndryshon parametrat e kursimit tĂ« energjisĂ« nĂ« varĂ«si tĂ« ngarkesĂ«s, gjĂ« qĂ« ndikon te Ceph). Gjithashtu doli se, gjatĂ« pĂ«rdorimit tĂ« disqeve NVMe, kerneli Linux shpenzon shumĂ« kohĂ« nĂ« pĂ«rpunimin e spin-lock gjatĂ« pĂ«rditĂ«simit tĂ« hartĂ«zimit IOMMU. Çaktivizimi i IOMMU nĂ« kernel çoi nĂ« njĂ« rritje tĂ« dukshme tĂ« performancĂ«s nĂ« testet e shkrimit dhe leximit tĂ« blloqeve me madhĂ«si 4MB.

MegjithatĂ«, çaktivizimi i IOMMU nuk e zgjidhi problemin e rĂ«nies sĂ« performancĂ«s gjatĂ« shkrimit tĂ« rastĂ«sishĂ«m tĂ« blloqeve me madhĂ«si 4KB. Duke hetuar shkakun, inxhinierĂ«t hasĂ«n nĂ« korrigjime nĂ« skriptet e ndĂ«rtimit tĂ« Ceph nga projektet Gentoo dhe Ubuntu, tĂ« cilat pĂ«rfshinin ndĂ«rtimin me opsionin RelWithDebInfo, pasi me tĂ« nĂ« GCC pĂ«rdorej modaliteti i optimizimit “-O2”, ku performanca e Ceph rritej ndjeshĂ«m. RĂ«nie tĂ« performancĂ«s shkaktonte edhe kompilimi me bibliotekĂ«n TCMalloc. Ndryshimi i flamujve tĂ« kompilimit dhe ndĂ«rprerja e pĂ«rdorimit tĂ« TCMalloc çuan nĂ« uljen trefish tĂ« kohĂ«s sĂ« paketimit (compaction) dhe nĂ« dyfishimin e performancĂ«s sĂ« operacioneve tĂ« rastĂ«sishme tĂ« shkrimit me blloqe 4K. NĂ« fund, u krye edhe optimizimi shtesĂ« i cilĂ«simeve tĂ« Reef RocksDB dhe i grupeve tĂ« vendosjes (PG).

Klasteri Ă«shtĂ« formuar nga 68 nyje tĂ« bazuara nĂ« serverĂ«sh Dell PowerEdge R6615 me CPU AMD EPYC 9454P 48C/96T. Çdo nyje pĂ«rmban 10 disqe NVMe Dell 15.36TB, dy adaptorĂ« Ethernet 100GbE Mellanox ConnectX-6 dhe 192 GB RAM. Softueri bazohet nĂ« Ubuntu 20.04.6 dhe Ceph 17.2.7. NĂ« klaster, nĂ« 63 nyje janĂ« ngritur 630 OSD (Object Storage Daemon, proces nĂ« sfond qĂ« menaxhon ruajtjen e tĂ« dhĂ«nave nĂ« hapĂ«sirĂ«n lokale, nga njĂ« OSD pĂ«r çdo disk NVMe), tre procese MON (monitor, qĂ« ndjek gjendjen e klasterit) dhe njĂ« proces MGR (Manager, shĂ«rbim menaxhues). MadhĂ«sia e ruajtjes Ă«shtĂ« 8.2 PB.

Gjerësia e brezit gjatë operacioneve sekuenciale të leximit me blloqe 4M arriti në 1025 GiB/s, ndërsa në shkrim 270 GiB/s. Gjatë leximit të rastësishëm me blloqe 4KB, performanca ishte 25.5 milionë operacione leximi në sekondë dhe 4.9 milionë në shkrim. Aktivizimi i enkriptimit e uli gjerësinë e brezit të leximit afërsisht në 750 GiB/s. Me përdorimin e kodeve të korrigjimit të gabimeve EC62, gjerësia e brezit ishte 547 GiB/s në lexim dhe 387 GiB/s në shkrim (shpejtësia e shkrimit doli më e lartë se pa kodet e korrigjimit), ndërsa në akses të rastësishëm u arritën 3.4M IOPS në lexim dhe 936K IOPS në shkrim.

Përvoja e krijimit të një ruajtjeje Ceph me kapacitet transmetimi një tebibajt në sekondë
Përvoja e krijimit të një ruajtjeje Ceph me kapacitet transmetimi një tebibajt në sekondë

Gjithashtu, vlen të theksohet se në shtator një prag i ngjashëm i gjerësisë së brezit, në nivel tebibajt për sekondë, u arrit në klasterin ekzabajt të ruajtjes së CERN, i realizuar mbi bazën e sistemit të hapur të ruajtjes së shpërndarë EOS, të ndërtuar mbi protokollin XRootD.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster