Tupperware: Facebook's Kubernetes මිනීමරුවා?

Tupperware සමඟ ඕනෑම පරිමාණයකින් පොකුරු කාර්යක්ෂම සහ විශ්වාසනීය කළමනාකරණය

Tupperware: Facebook's Kubernetes මිනීමරුවා?

අද දින Systems@ පරිමාණ සම්මන්ත්‍රණය අපි Tupperware හඳුන්වා දුන්නෙමු, එය අපගේ පොකුරු කළමනාකරණ පද්ධතිය වන අතර එය අපගේ සේවාවන් සියල්ලම පාහේ ක්‍රියාත්මක වන මිලියන ගණනක් සේවාදායකයන් හරහා කන්ටේනර් සංවිධානය කරයි. අපි මුලින්ම Tupperware යෙදෙව්වේ 2011 දී, එතැන් සිට අපගේ යටිතල පහසුකම් වර්ධනය වී ඇත 1 දත්ත මධ්යස්ථානය සමස්තයක් ලෙස භූ-බෙදාහැරි දත්ත මධ්‍යස්ථාන 15ක්. මේ කාලය පුරාම ටපර්වෙයාර් නිශ්චලව නොසිටි අතර අප සමඟ වර්ධනය විය. රාජ්‍ය සේවා සඳහා පහසු සහය, සියලු දත්ත මධ්‍යස්ථාන සඳහා තනි පාලක පැනලයක් සහ තථ්‍ය කාලය තුළ සේවා අතර ධාරිතාව බෙදා හැරීමේ හැකියාව ඇතුළුව Tupperware පළමු පන්තියේ පොකුරු කළමනාකරණය සපයන ආකාරය අපි ඔබට පෙන්වන්නෙමු. අපගේ යටිතල පහසුකම් වර්ධනය වන විට අප ඉගෙන ගත් පාඩම් ද අපි බෙදා ගන්නෙමු.

Tupperware විවිධ කාර්යයන් ඉටු කරයි. යෙදුම් සංවර්ධකයින් යෙදුම් බෙදා හැරීමට සහ කළමනාකරණය කිරීමට එය භාවිතා කරයි. එය යෙදුම් කේතය සහ පරායත්තයන් රූපයකට ඇසුරුම් කර එය බහාලුම් ලෙස සේවාදායකයන් වෙත ලබා දෙයි. කන්ටේනර් එකම සේවාදායකයේ යෙදුම් අතර හුදකලාව සපයන අතර එමඟින් සංවර්ධකයින් යෙදුම් තර්කනය සමඟ කටයුතු කරන අතර සේවාදායකයන් සොයා ගැනීම හෝ යාවත්කාලීන කළමනාකරණය කිරීම ගැන කරදර විය යුතු නැත. ටපර්වෙයාර් සේවාදායකයේ ක්‍රියාකාරිත්වය ද නිරීක්ෂණය කරන අතර, එය අසාර්ථක වීමක් සොයා ගන්නේ නම්, එය ගැටළු සහගත සේවාදායකයෙන් බහාලුම් මාරු කරයි.

ධාරිතා සැලසුම් ඉංජිනේරුවන් අයවැය සහ සීමාවන් මත පදනම්ව කණ්ඩායම් සඳහා සේවාදායක ධාරිතාව වෙන් කිරීමට Tupperware භාවිතා කරයි. ඔවුන් සේවාදායක භාවිතය වැඩි දියුණු කිරීමට ද එය භාවිතා කරයි. දත්ත මධ්‍යස්ථාන ක්‍රියාකරුවන් දත්ත මධ්‍යස්ථාන හරහා බහාලුම් නිසි ලෙස බෙදා හැරීමට සහ නඩත්තු කිරීමේදී බහාලුම් නැවැත්වීමට හෝ ගෙන යාමට Tupperware වෙත හැරේ. මෙයට ස්තූතියි, සේවාදායකයන්, ජාල සහ උපකරණ නඩත්තු කිරීම සඳහා අවම මානව මැදිහත්වීමක් අවශ්ය වේ.

ටපර්වෙයාර් ගෘහ නිර්මාණ ශිල්පය

Tupperware: Facebook's Kubernetes මිනීමරුවා?

Tupperware PRN ගෘහ නිර්මාණ ශිල්පය අපගේ දත්ත මධ්‍යස්ථානවල එක් කලාපයකි. කලාපය ආසන්නයේ පිහිටා ඇති දත්ත මධ්‍යස්ථාන ගොඩනැගිලි කිහිපයකින් (PRN1 සහ PRN2) සමන්විත වේ. එක් කලාපයක සියලුම සේවාදායකයන් කළමනාකරණය කරන එක් පාලන පැනලයක් සෑදීමට අපි සැලසුම් කරමු.

යෙදුම් සංවර්ධකයින් Tupperware රැකියා ආකාරයෙන් සේවා සපයයි. කාර්යයක් බහු බහාලුම් වලින් සමන්විත වන අතර, ඒවා සියල්ලම සාමාන්‍යයෙන් එකම යෙදුම් කේතය ක්‍රියාත්මක කරයි.

බහාලුම් සැපයීම සහ ඔවුන්ගේ ජීවන චක්‍රය කළමනාකරණය කිරීම සඳහා Tupperware වගකිව යුතුය. එය සංරචක කිහිපයකින් සමන්විත වේ:

  • Tupperware frontend මඟින් ඔබට Tupperware සමඟ අන්තර් ක්‍රියා කළ හැකි පරිශීලක අතුරුමුහුණත, CLI සහ අනෙකුත් ස්වයංක්‍රීයකරණ මෙවලම් සඳහා API සපයයි. ඔවුන් Tupperware රැකියා හිමිකරුවන්ගෙන් සම්පූර්ණ අභ්යන්තර ව්යුහය සඟවයි.
  • Tupperware Scheduler යනු බහාලුම් සහ රැකියා ජීවන චක්‍රය කළමනාකරණය කිරීම සඳහා වගකිව යුතු පාලන පැනලයකි. එය කලාපීය සහ ගෝලීය මට්ටමින් යොදවා ඇත, එහිදී කලාපීය කාලසටහන්කරු එක් කලාපයක සේවාදායකයන් කළමනාකරණය කරන අතර ගෝලීය කාලසටහන්කරු විවිධ කලාපවල සේවාදායකයන් කළමනාකරණය කරයි. උපලේඛකයා කැබලිවලට බෙදා ඇති අතර, සෑම කැබැල්ලක්ම රැකියා කට්ටලයක් කළමනාකරණය කරයි.
  • Tupperware's Scheduler Proxy අභ්‍යන්තර ඛණ්ඩනය සඟවා Tupperware භාවිතා කරන්නන් සඳහා පහසු තනි වීදුරු කවුළුවක් සපයයි.
  • ටපර්වෙයාර් වෙන් කරන්නා සේවාදායකයන්ට බහාලුම් පවරයි. උපලේඛකයා බහාලුම් නැවැත්වීම, ආරම්භ කිරීම, යාවත්කාලීන කිරීම සහ අසාර්ථක වීම හසුරුවයි. දැනට, එක් වෙන් කරන්නෙකුට කැබලිවලට බෙදීමකින් තොරව මුළු කලාපයම කළමනාකරණය කළ හැකිය. (පාරිභාෂිතයේ වෙනස සටහන් කරන්න. උදාහරණයක් ලෙස, Tupperware හි උපලේඛනය පාලක පැනලයට අනුරූප වේ. කුබර්නෙට්ස්, සහ ටපර්වෙයාර් වෙන් කරන්නා කුබර්නෙටේස් හි උපලේඛකයක් ලෙස හැඳින්වේ.)
  • සම්පත් තැරැව්කරු සේවාදායකය සහ සේවා සිදුවීම් සඳහා සත්‍යයේ මූලාශ්‍රය ගබඩා කරයි. අපි සෑම දත්ත මධ්‍යස්ථානයක් සඳහාම එක් සම්පත් තැරැව්කරුවෙකු ක්‍රියාත්මක කරන අතර, එය එම දත්ත මධ්‍යස්ථානයේ සේවාදායකයන් පිළිබඳ සියලු තොරතුරු ගබඩා කරයි. සම්පත් තැරැව්කරු සහ ධාරිතා කළමනාකරණ පද්ධතිය හෝ සම්පත් ප්‍රතිපාදන පද්ධතිය ගතිකව තීරණය කරන්නේ කුමන කාලසටහන් බෙදා හැරීම පාලනය කරන්නේ කුමන සේවාදායකයද යන්නයි. සෞඛ්‍ය පරීක්‍ෂණ සේවාව සේවාදායකයන් අධීක්‍ෂණය කරන අතර සම්පත් තැරැව්කරු තුළ ඔවුන්ගේ සෞඛ්‍යය පිළිබඳ දත්ත ගබඩා කරයි. සේවාදායකයකට ගැටළු තිබේ නම් හෝ නඩත්තු අවශ්‍ය නම්, සම්පත් තැරැව්කරු විබෙදුම්කරුට සහ උපලේඛකයාට කන්ටේනර් නැවැත්වීමට හෝ වෙනත් සේවාදායකයන් වෙත ගෙන යන ලෙස පවසයි.
  • Tupperware Agent යනු බහාලුම් සකස් කර ඉවත් කරන සෑම සේවාදායකයකම ක්‍රියාත්මක වන ඩීමන් ය. යෙදුම් බහාලුමක් තුළ ක්‍රියාත්මක වන අතර එමඟින් ඒවාට වැඩි හුදකලාවක් සහ ප්‍රතිනිෂ්පාදනයක් ලබා දේ. මත පසුගිය වසරේ පද්ධති @ පරිමාණ සමුළුව රූප, btrfs, cgroupv2 සහ systemd භාවිතයෙන් තනි Tupperware බහාලුම් නිර්මාණය කරන ආකාරය අපි දැනටමත් විස්තර කර ඇත.

Tupperware හි සුවිශේෂී ලක්ෂණ

ටපර්වෙයාර් බොහෝ ආකාරවලින් Kubernetes සහ වැනි අනෙකුත් පොකුරු කළමනාකරණ පද්ධති වලට සමාන වේ මෙසෝස්, නමුත් වෙනස්කම් ද ඇත:

  • රාජ්ය සේවා සඳහා ගොඩනඟන ලද සහාය.
  • අභිප්‍රාය, පොකුරු ඉවත් කිරීම සහ නඩත්තුව මත පදනම්ව බහාලුම් බෙදා හැරීම ස්වයංක්‍රීය කිරීම සඳහා විවිධ දත්ත මධ්‍යස්ථානවල සේවාදායකයන් සඳහා තනි පාලක පැනලයක්.
  • විශාලනය සඳහා පාලක පැනලයේ පැහැදිලි බෙදීම.
  • ප්‍රත්‍යාස්ථ පරිගණනය මඟින් ඔබට තථ්‍ය කාලය තුළ සේවා අතර බලය බෙදා හැරීමට ඉඩ සලසයි.

විශාල ගෝලීය හවුල් සේවාදායක සමූහයක් හරහා විවිධ අස්ථායී සහ රාජ්‍ය යෙදුම් සඳහා සහය දැක්වීම සඳහා අපි මෙම සිසිල් විශේෂාංග සංවර්ධනය කළෙමු.

රාජ්ය සේවා සඳහා ගොඩනඟන ලද සහාය.

Tupperware ෆේස්බුක්, ඉන්ස්ටග්‍රෑම්, මැසෙන්ජර් සහ වට්ස්ඇප් සඳහා අඛණ්ඩ නිෂ්පාදන දත්ත ගබඩා කරන විවිධ තීරණාත්මක රාජ්‍ය සේවා ක්‍රියාත්මක කරයි. මේවා ප්‍රධාන වටිනාකම් යුගල විශාල ගබඩා විය හැක (උදා. ZippyDB) සහ දත්ත ගබඩා අධීක්ෂණය (උදාහරණයක් ලෙස, ODS ගෝරිල්ලා и ස්කූබා) ජාල ඇනහිටීම් හෝ විදුලිය ඇනහිටීම් ඇතුළුව, බහාලුම් සැපයීම මහා පරිමාණ බාධාවන්ට ඔරොත්තු දිය හැකි බව පද්ධතිය සහතික කළ යුතු නිසා, රාජ්ය සේවා පවත්වාගෙන යාම පහසු නැත. දෝෂ සහිත වසම් හරහා බහාලුම් බෙදා හැරීම වැනි සාම්ප්‍රදායික තාක්ෂණික ක්‍රම, රාජ්‍ය රහිත සේවා සඳහා හොඳින් ක්‍රියා කරන අතර, රාජ්‍ය සේවා සඳහා අමතර සහාය අවශ්‍ය වේ.

උදාහරණයක් ලෙස, සේවාදායකයේ අසාර්ථක වීමක් එක් දත්ත සමුදා අනුරුවක් ලබා ගත නොහැකි නම්, ඔබ 50 ක සංචිතයකින් සේවාදායකයන් 10 ක හරය යාවත්කාලීන කරන ස්වයංක්‍රීය නඩත්තු කිරීම සක්‍රීය කළ යුතුද? තත්වය මත රඳා පවතී. මෙම සර්වර් 50 න් එකකට එකම දත්ත ගබඩාවේ තවත් අනුරුවක් තිබේ නම්, එකවර අනුරූ 2 ක් නැති නොකර බලා සිටීම වඩා හොඳය. පද්ධති නඩත්තුව සහ කාර්ය සාධනය පිළිබඳ ගතිකව තීරණ ගැනීම සඳහා, අපට අභ්‍යන්තර දත්ත අනුකරණය සහ එක් එක් රාජ්‍ය සේවාවල ස්ථානගත කිරීමේ තර්කනය පිළිබඳ තොරතුරු අවශ්‍ය වේ.

TaskControl අතුරුමුහුණත දත්ත ලබා ගැනීමට බලපාන තීරණවලට බලපෑම් කිරීමට රාජ්‍ය සේවාවලට ඉඩ දෙයි. මෙම අතුරුමුහුණත භාවිතා කරමින්, උපලේඛකයා බහාලුම් මෙහෙයුම් (නැවත ආරම්භ කිරීම, යාවත්කාලීන කිරීම, සංක්‍රමණය, නඩත්තු කිරීම) පිළිබඳ බාහිර යෙදුම් වෙත දැනුම් දෙයි. රාජ්‍ය සේවාවක් මඟින් ටපර්වෙයාර් වෙත එක් එක් මෙහෙයුම සිදු කිරීමට ආරක්ෂිත වන්නේ කවදාදැයි පවසන පාලකයක් ක්‍රියාත්මක කරන අතර, මෙම මෙහෙයුම් තාවකාලිකව මාරු කිරීමට හෝ ප්‍රමාද කිරීමට හැකිය. ඉහත උදාහරණයේ දී, දත්ත සමුදා පාලකයට Tupperware හට සේවාදායක 49න් 50ක් යාවත්කාලීන කරන ලෙස පැවසිය හැක, නමුත් දැනට විශේෂිත සේවාදායකයක් (X) පමණක් තබන්න. එහි ප්‍රතිඵලයක් වශයෙන්, කර්නල් යාවත්කාලීන කාලසීමාව ගෙවී ගියහොත් සහ දත්ත සමුදායට තවමත් ගැටළු සහගත අනුරුව ප්‍රතිසාධනය කිරීමට නොහැකි නම්, Tupperware තවමත් X සේවාදායකය යාවත්කාලීන කරයි.

Tupperware: Facebook's Kubernetes මිනීමරුවා?

Tupperware හි බොහෝ රාජ්‍ය සේවා TaskControl භාවිතා කරන්නේ කෙලින්ම නොව, Facebook හි රාජ්‍ය සේවා නිර්මාණය කිරීමේ පොදු වේදිකාවක් වන ShardManager හරහා ය. Tupperware සමඟින්, දත්ත මධ්‍යස්ථාන හරහා බහාලුම් බෙදා හැරිය යුතු ආකාරය සඳහා සංවර්ධකයින්ට ඔවුන්ගේ අභිප්‍රාය නියම කළ හැක. ShardManager සමඟින්, සංවර්ධකයින් දත්ත කොටස් බහාලුම් හරහා බෙදා හැරිය යුතු ආකාරය සඳහා ඔවුන්ගේ අභිප්‍රාය සඳහන් කරයි. ShardManager එහි යෙදුම්වල දත්ත ස්ථානගත කිරීම සහ ප්‍රතිනිර්මාණය කිරීම පිළිබඳව දැනුවත් වන අතර සෘජු යෙදුම් සම්බන්ධයකින් තොරව බහාලුම් මෙහෙයුම් උපලේඛනගත කිරීමට TaskControl අතුරුමුහුණත හරහා Tupperware සමඟ සන්නිවේදනය කරයි. මෙම අනුකලනය රාජ්‍ය සේවා කළමනාකරණය බෙහෙවින් සරල කරයි, නමුත් TaskControl වැඩි හැකියාවක් ඇත. උදාහරණයක් ලෙස, අපගේ විස්තීර්ණ වෙබ් ස්ථරය අස්ථායී වන අතර බහාලුම් වෙත යාවත්කාලීන කිරීමේ වේගය ගතිකව සීරුමාරු කිරීමට TaskControl භාවිතා කරයි. අවසානයේ වෙබ් ස්ථරයට බහු මෘදුකාංග නිකුතු ඉක්මනින් සම්පූර්ණ කිරීමට හැකියාව ඇත ලබා ගැනීමේ හැකියාවෙන් තොරව දිනකට.

දත්ත මධ්‍යස්ථානවල සේවාදායක කළමනාකරණය කිරීම

Tupperware ප්‍රථම වරට 2011 දී දියත් කරන විට, සෑම සේවාදායක පොකුරක්ම වෙනම කාලසටහන්කරුවෙකු විසින් කළමනාකරණය කරන ලදී. එකල ෆේස්බුක් පොකුරක් යනු එක් ජාල ස්විචයකට සම්බන්ධ සර්වර් රාක්ක සමූහයක් වූ අතර දත්ත මධ්‍යස්ථානයේ පොකුරු කිහිපයක් තිබුණි. කාලසටහන්කරුට කළමනා කළ හැක්කේ එක් පොකුරක් තුළ පමණක් වන අතර, එයින් අදහස් වන්නේ කාර්යය පොකුරු කිහිපයක් හරහා පැතිර යා නොහැකි බවයි. අපගේ යටිතල පහසුකම් වර්ධනය විය, අපි වැඩි වැඩියෙන් පොකුරු කපා හැරියෙමු. Tupperware හට වෙනස් කිරීමකින් තොරව කාර්යය ඉවත් කරන ලද පොකුරේ සිට වෙනත් පොකුරු වෙත ගෙන යාමට නොහැකි වූ බැවින්, එයට යෙදුම් සංවර්ධකයින් සහ දත්ත මධ්‍යස්ථාන ක්‍රියාකරුවන් අතර විශාල උත්සාහයක් සහ ප්‍රවේශමෙන් සම්බන්ධීකරණය අවශ්‍ය විය. විසන්ධි කිරීමේ ක්‍රියා පටිපාටි හේතුවෙන් සේවාදායකයන් මාස ගණනක් අක්‍රිය වූ විට මෙම ක්‍රියාවලිය සම්පත් නාස්ති වීමට හේතු විය.

පොකුරු විසන්ධි කිරීමේ ගැටලුව විසඳීමට සහ වෙනත් ආකාරයේ නඩත්තු කටයුතු සම්බන්ධීකරණය කිරීමට අපි සම්පත් තැරැව්කරුවකු නිර්මාණය කළෙමු. සම්පත් තැරැව්කරු සේවාදායකයක් හා සම්බන්ධ සියලුම භෞතික තොරතුරු නිරීක්ෂණය කරන අතර එක් එක් සේවාදායකය පාලනය කරන්නේ කුමන කාලසටහන්කරුද යන්න ගතිකව තීරණය කරයි. කාලසටහන් කරන්නන් වෙත ගතිකව සේවාදායකය සම්බන්ධ කිරීම කාලසටහන්කරුට විවිධ දත්ත මධ්‍යස්ථානවල සේවාදායකයන් කළමනාකරණය කිරීමට ඉඩ සලසයි. Tupperware කාර්යයක් තවදුරටත් තනි පොකුරකට සීමා නොවන බැවින්, Tupperware පරිශීලකයින්ට දෝෂ සහිත වසම් හරහා බහාලුම් බෙදා හැරිය යුතු ආකාරය සඳහන් කළ හැක. උදාහරණයක් ලෙස, සංවර්ධකයෙකුට ඔහුගේ අභිප්‍රාය ප්‍රකාශ කළ හැක (කියන්න: "PRN කලාපයේ වැරදි වසම් 2ක් මත මගේ රැකියාව ක්‍රියාත්මක කරන්න") නිශ්චිත ලද හැකි කලාප සඳහන් නොකර. Tupperware විසින්ම මෙම අභිප්‍රාය ක්‍රියාත්මක කිරීමට සුදුසු සේවාදායකයන් සොයා ගනු ඇත, පොකුර හෝ සේවාව ඉවත් කළද.

සමස්ත ගෝලීය පද්ධතියට සහාය වීමට පරිමාණය කළ හැකිය

ඓතිහාසික වශයෙන්, අපගේ යටිතල පහසුකම් තනි කණ්ඩායම් සඳහා කැප වූ සේවාදායක සංචිත සිය ගණනකට බෙදා ඇත. ඛණ්ඩනය වීම සහ ප්‍රමිතීන් නොමැතිකම හේතුවෙන්, අපට ඉහළ මෙහෙයුම් පිරිවැයක් දැරීමට සිදු වූ අතර, අක්‍රිය සේවාදායකයන් නැවත භාවිතා කිරීම වඩාත් අපහසු විය. ගිය අවුරුද්දේ සමුළුවේදී පද්ධති @ පරිමාණය අපි ඉදිරිපත් කළා සේවාවක් ලෙස යටිතල පහසුකම් (IaaS), අපගේ යටිතල පහසුකම් විශාල තනි සේවාදායක උද්‍යානයක් බවට ඒකාබද්ධ කළ යුතුය. නමුත් තනි සර්වර් පාර්ක් එකකට තමන්ගේම දුෂ්කරතා ඇත. එය නිශ්චිත අවශ්යතා සපුරාලිය යුතුය:

  • පරිමාණය අපි සෑම කලාපයකම දත්ත මධ්‍යස්ථාන එකතු කරන විට අපගේ යටිතල පහසුකම් වර්ධනය විය. සේවාදායකයන් කුඩා හා වඩා බලශක්ති කාර්යක්ෂම වී ඇත, එබැවින් සෑම කලාපයකම තවත් බොහෝ ඒවා ඇත. එහි ප්‍රතිඵලයක් වශයෙන්, එක් කලාපයකට එක් කාලසටහන්කරුවෙකුට එක් එක් කලාපය තුළ සිය දහස් ගණනක සේවාදායකයන් මත ධාවනය කළ හැකි බහාලුම් ගණන හැසිරවිය නොහැක.
  • විශ්වසනීයත්වය උපලේඛනය එතරම් විශාල කළ හැකි වුවද, උපලේඛකයේ විශාල විෂය පථය යනු දෝෂ ඇතිවීමේ වැඩි අවදානමක් පවතින අතර මුළු බහාලුම් කලාපයක්ම කළමනාකරණය කළ නොහැකි විය හැකිය.
  • වැරදි ඉවසීම. විශාල යටිතල පහසුකම් බිඳවැටීමකදී (උදාහරණයක් ලෙස, ජාල බිඳවැටීමක් හෝ විදුලිය ඇනහිටීමක් හේතුවෙන් කාලසටහන ක්රියාත්මක කරන සේවාදායකයන් අසමත් වේ), සෘණාත්මක ප්රතිවිපාක බලපෑ යුත්තේ කලාපයේ සේවාදායක කොටසකට පමණි.
  • භාවිතයේ පහසුව. ඔබට එක් කලාපයක් සඳහා ස්වාධීන උපලේඛන කිහිපයක් ධාවනය කිරීමට අවශ්‍ය බව පෙනේ. නමුත් පහසු ඉදිරිදර්ශනයකින්, කලාපයක හවුල් සංචිතයට ඇතුල් වීමේ තනි ලක්ෂ්‍යයක් ධාරිතාව සහ රැකියා කළමනාකරණය කිරීම පහසු කරයි.

විශාල හවුල් සංචිතයක් පවත්වාගෙන යාමේ ගැටළු විසඳීම සඳහා අපි උපලේඛනය කැබලිවලට බෙදුවෙමු. සෑම උපලේඛන ඛණ්ඩයක්ම කලාපය තුළ තමන්ගේම රැකියා සමූහයක් කළමනාකරණය කරන අතර, මෙය උපලේඛකයා හා සම්බන්ධ අවදානම අඩු කරයි. බෙදාගත් සංචිතය වර්ධනය වන විට, අපට තවත් උපලේඛන කැබලි එකතු කළ හැක. Tupperware භාවිතා කරන්නන් සඳහා, කැබලි සහ උපලේඛන ප්‍රොක්සි එක පාලක පැනලයක් ලෙස පෙනේ. ඔවුන්ට කාර්යයන් සංවිධානය කරන තුණ්ඩ තොගයක් සමඟ වැඩ කිරීමට අවශ්‍ය නැත. Scheduler shards මූලික වශයෙන් අප භාවිතා කළ පොකුරු උපලේඛනවලට වඩා මූලික වශයෙන් වෙනස් වේ, ජාල ස්ථලකය අනුව බෙදාගත් සේවාදායක සංචිතය ස්ථිතික ලෙස බෙදීමකින් තොරව පාලක පැනලය කොටස් කළ විට.

ඉලාස්ටික් කම්පියුටින් සමඟ භාවිත කාර්යක්ෂමතාව වැඩි දියුණු කරන්න

අපගේ යටිතල පහසුකම් විශාල වන තරමට, යටිතල පහසුකම් පිරිවැය ප්‍රශස්ත කිරීමට සහ බර අඩු කිරීමට අපගේ සේවාදායකයන් කාර්යක්ෂමව භාවිතා කිරීම වඩාත් වැදගත් වේ. සේවාදායක භාවිතයේ කාර්යක්ෂමතාව වැඩි කිරීමට ක්රම දෙකක් තිබේ:

  • ප්‍රත්‍යාස්ථ පරිගණනය - නිස්කලංක වේලාවන් තුළ මාර්ගගත සේවාවන් පරිමාණය කිරීම සහ යන්ත්‍ර ඉගෙනීම සහ MapReduce රැකියා වැනි නොබැඳි වැඩ බර සඳහා නිදහස් සේවාදායක භාවිතා කරන්න.
  • අධි බර පැටවීම - කණ්ඩායම් වැඩ බර අඩු ප්‍රමුඛතාවයකින් ක්‍රියාත්මක වන පරිදි සබැඳි සේවා සහ කණ්ඩායම් වැඩ බර එකම සේවාදායකයන් මත තබන්න.

අපගේ දත්ත මධ්‍යස්ථානවල ඇති බාධකය බලශක්ති භාවිතය. එම නිසා, අපි වැඩි සැකසුම් බලයක් සපයන කුඩා, බලශක්ති කාර්යක්ෂම සේවාදායකයන්ට කැමැත්තෙමු. අවාසනාවකට, කුඩා CPU සහ මතකය සහිත කුඩා සේවාදායකයන් මත, අධි බර පැටවීම අඩු ඵලදායී වේ. ඇත්ත වශයෙන්ම, අපට කුඩා ප්‍රොසෙසර සම්පත් සහ මතකය පරිභෝජනය කරන එක් කුඩා බලශක්ති කාර්යක්ෂම සේවාදායකයක් මත කුඩා සේවා බහාලුම් කිහිපයක් තැබිය හැකිය, නමුත් විශාල සේවාවන්ට මෙම තත්වය තුළ අඩු කාර්ය සාධනයක් ඇත. එබැවින්, අපගේ විශාල සේවාවන්හි සංවර්ධකයින්ට සම්පූර්ණ සේවාදායකයන් භාවිතා කරන පරිදි ඒවා ප්‍රශස්ත කරන ලෙස අපි උපදෙස් දෙමු.


මූලික වශයෙන්, අපි elastic computing භාවිතයෙන් භාවිත කාර්යක්ෂමතාව වැඩි දියුණු කරමු. ප්‍රවෘත්ති සංග්‍රහය, පණිවිඩකරණ විශේෂාංගය සහ ඉදිරිපස වෙබ් ස්ථරය වැනි අපගේ ප්‍රධාන සේවාවන් බොහොමයක් දවසේ වේලාව අනුව වෙනස් වේ. අපි නිහඬ වේලාවන් තුළ මාර්ගගත සේවාවන් හිතාමතාම අඩු කරන අතර යන්ත්‍ර ඉගෙනීම සහ MapReduce රැකියා වැනි නොබැඳි වැඩ බර සඳහා නිදහස් සේවාදායකයන් භාවිතා කරමු.

Tupperware: Facebook's Kubernetes මිනීමරුවා?

විශාල සේවාවන් ප්‍රධාන පරිත්‍යාගශීලීන් සහ ප්‍රත්‍යාස්ථ ධාරිතාවේ ප්‍රධාන පාරිභෝගිකයන් වන අතර සම්පූර්ණ සේවාදායකයන් භාවිතා කිරීමට ප්‍රශස්ත කර ඇති නිසා සම්පූර්ණ සර්වර් ප්‍රත්‍යාස්ථ ධාරිතාවේ ඒකක ලෙස සැපයීම වඩාත් සුදුසු බව අපි අත්දැකීමෙන් දනිමු. නිශ්ශබ්ද වේලාවන් තුළ සේවාදායකය ඔන්ලයින් සේවාවෙන් මුදා හරින විට, සම්පත් තැරැව්කරු එය මත නොබැඳි වැඩ බර ක්‍රියාත්මක කිරීමට කාලසටහන්කරුට සේවාදායකය බදු දෙයි. සබැඳි සේවාව උපරිම බරක් අත්විඳින්නේ නම්, සම්පත් තැරැව්කරු ණයට ගත් සේවාදායකය ඉක්මනින් සිහිපත් කරන අතර, උපලේඛකයා සමඟ එක්ව එය සබැඳි සේවාව වෙත ආපසු ලබා දෙයි.

උගත් පාඩම් සහ අනාගතය සඳහා සැලසුම්

පසුගිය වසර 8 තුළ, අපි Facebook හි ශීඝ්‍ර වර්ධනයට සමගාමීව Tupperware සංවර්ධනය කරමින් සිටිමු. අපි ඉගෙන ගත් දේ බෙදා ගන්නා අතර එය වේගයෙන් වර්ධනය වන යටිතල පහසුකම් කළමනාකරණය කිරීමට අන් අයට උපකාර වනු ඇතැයි බලාපොරොත්තු වෙමු:

  • පාලක පැනලය සහ එය කළමනාකරණය කරන සේවාදායකයන් අතර නම්‍යශීලී සම්බන්ධතාවයක් සකසන්න. මෙම නම්‍යශීලීභාවය පාලක පැනලයට විවිධ දත්ත මධ්‍යස්ථානවල සේවාදායකයන් කළමනාකරණය කිරීමට ඉඩ සලසයි, පොකුරු ඉවත් කිරීම සහ නඩත්තු කිරීම ස්වයංක්‍රීය කිරීමට උපකාරී වේ, සහ ප්‍රත්‍යාස්ථ පරිගණනය භාවිතයෙන් ගතික ධාරිතාව වෙන් කිරීම සක්‍රීය කරයි.
  • කලාපයේ තනි පාලක පැනලයක් සමඟ, කාර්යයන් සමඟ වැඩ කිරීම වඩාත් පහසු වන අතර විශාල හවුල් සේවාදායක සමූහයක් කළමනාකරණය කිරීමට පහසු වේ. පරිමානයේ හෝ දෝෂ ඉවසීමේ හේතූන් මත එහි අභ්‍යන්තර ව්‍යුහය වෙන් වුවද, පාලක පැනලය තනි පිවිසුම් ලක්ෂ්‍යයක් පවත්වාගෙන යන බව සලකන්න.
  • ප්ලගින ආකෘතියක් භාවිතා කරමින්, පාලක පැනලයට ඉදිරි බහාලුම් මෙහෙයුම් පිළිබඳ බාහිර යෙදුම් දැනුම් දිය හැක. එපමණක් නොව, බහාලුම් කළමනාකරණය අභිරුචිකරණය කිරීමට රාජ්‍ය සේවාවන්ට ප්ලගින අතුරුමුහුණත භාවිතා කළ හැකිය. මෙම ප්ලගින ආකෘතිය සමඟින්, පාලක පැනලය විවිධ රාජ්‍ය සේවාවන් කාර්යක්ෂමව සපයන අතරම සරල බවක් ලබා දෙයි.
  • කණ්ඩායම් රැකියා, යන්ත්‍ර ඉගෙනීම සහ වෙනත් හදිසි නොවන සේවා සඳහා පරිත්‍යාගශීලීන්ගේ සේවාවන්ගෙන් සම්පූර්ණ සේවාදායකයන් ඉවත් කරන ඉලාස්ටික් පරිගණනය කුඩා, බලශක්ති කාර්යක්ෂම සේවාදායකවල කාර්යක්ෂමතාව වැඩි දියුණු කිරීමේ ප්‍රශස්ත ක්‍රමය බව අපි විශ්වාස කරමු.

අපි ක්‍රියාත්මක කරන්න පටන් ගන්නවා විතරයි තනි ගෝලීය හවුල් සේවාදායක ඇණිය. දැනට අපගේ සේවාදායකයන්ගෙන් 20% ක් පමණ හවුල් සංචිතයක ඇත. 100% සාක්ෂාත් කර ගැනීම සඳහා, හවුල් ගබඩා තටාකයක් නඩත්තු කිරීම, නඩත්තු කිරීම ස්වයංක්‍රීය කිරීම, හරස් කුලී නිවැසියන්ගේ අවශ්‍යතා කළමනාකරණය කිරීම, සේවාදායක භාවිතය වැඩිදියුණු කිරීම සහ යන්ත්‍ර ඉගෙනීමේ වැඩ බර සඳහා සහය වැඩි දියුණු කිරීම ඇතුළු බොහෝ ගැටලු විසඳිය යුතුය. මේ අභියෝග භාරගෙන අපේ ජයග්‍රහණ බෙදාගන්න අපිට ඉවසිල්ලක් නැහැ.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න