ISP පද්ධතිය, සමාව දී සමුගන්න! අපි අපගේ සේවාදායක පාලන පැනලය ලිව්වේ ඇයි සහ කෙසේද

ISP පද්ධතිය, සමාව දී සමුගන්න! අපි අපගේ සේවාදායක පාලන පැනලය ලිව්වේ ඇයි සහ කෙසේද

ආයුබෝවන්! අපි "Hosting Technologies" වන අතර වසර 5 කට පෙර දියත් කරන ලදී VDSina - සංවර්ධකයින් සඳහා විශේෂයෙන් නිර්මාණය කරන ලද පළමු vds සත්කාරකත්වය. DigitalOcean මෙන් එය පහසු කිරීමට අපි උත්සාහ කරමු, නමුත් රුසියානු සහාය, ගෙවීම් ක්‍රම සහ රුසියාවේ සේවාදායකයන් සමඟ. නමුත් DigitalOcean යනු විශ්වසනීයත්වය සහ මිල පමණක් නොව, එය සේවාවක් ද වේ.

ISPsystem වෙතින් මෘදුකාංගය සිසිල් සේවාවක් වෙත යන ගමනේදී අපගේ දෑත් බැඳ දැමූ කඹයක් බවට පත් විය. වසර තුනකට පෙර, අපි Billmanager බිල්පත් සහ VMmanager සේවාදායක පාලක පැනලය භාවිතා කළ අතර අපගේම පාලක පැනලය නොමැතිව හොඳ සේවාවක් සැපයීම පාහේ කළ නොහැකි බව ඉක්මනින් අවබෝධ කර ගත්තෙමු.

ISP පද්ධතිය පහසුව විනාශ කළ ආකාරය

දෝෂ

අපට දෝෂය නිවැරදි කිරීමට නොහැකි විය - සෑම අවස්ථාවකම අපට වෙනත් කෙනෙකුගේ සහායට ලියා බලා සිටීමට සිදු විය. ඕනෑම ගැටලුවකට විසඳුම තෙවන පාර්ශවීය සමාගමක ප්රතිචාරය අවශ්ය විය.

ISP පද්ධති සහාය සාමාන්‍යයෙන් ප්‍රතිචාර දැක්වූ නමුත් නිවැරදි කිරීම් පැමිණියේ නිකුතු කිහිපයකට පසුව පමණි, පසුව සෑම විටම නොවේ සහ සියල්ලම නොවේ. සමහර විට විවේචනාත්මක දෝෂ සති කිහිපයක් සඳහා නිවැරදි කරන ලදී. අපට ගනුදෙනුකරුවන්ට සහතික වීමට, සමාව අයැදීමට සහ දෝෂය නිවැරදි කිරීමට ISP පද්ධතිය බලා සිටීමට සිදු විය.

අක්‍රීය කාල තර්ජනය

යාවත්කාලීන කිරීම් මඟින් නව දෝෂ ඇති කරන අනපේක්ෂිත අක්‍රීය කාලයන් ජනනය කළ හැකිය.

සෑම යාවත්කාලීනයක්ම ලොතරැයියක් විය: මට බිල්පත් ආවරණය කිරීමට සහ යාවත්කාලීන දෙවිවරුන්ට පූජා කිරීමට සිදු විය - යාවත්කාලීන කිරීම කිහිප වතාවක්ම විනාඩි 10-15 ක් අක්‍රිය වීමට හේතු විය. මෙම අවස්ථාවේදී අපගේ පරිපාලකයින් ඔවුන්ගේ ඇස් මත වාඩි වී සිටියහ - අක්‍රිය කාලය කොපමණ කාලයක් පවතිනු ඇත්දැයි අපි කිසි විටෙකත් දැන සිටියේ නැත සහ ISP පද්ධතිය නව යාවත්කාලීනයක් නිකුත් කිරීමට තීරණය කරන්නේ කවදාදැයි අනාවැකි කිව නොහැක.

පස්වන පරම්පරාවේදී, Billmanager වඩා හොඳ විය, නමුත් අවශ්‍ය විශේෂාංග වෙත ප්‍රවේශය ලබා ගැනීම සඳහා, මට බීටා ස්ථාපනය කිරීමට සිදු විය, එය දැනටමත් සෑම සතියකම යාවත්කාලීන කර ඇත. යමක් කැඩී ගියහොත්, වෙනත් සංවර්ධකයින්ට යමක් නිවැරදි කිරීමට හැකි වන පරිදි මට ප්‍රවේශය ලබා දීමට සිදු විය.

අපහසු පැනල් අතුරු මුහුණත

සෑම දෙයක්ම විවිධ පුවරු වලට බෙදා විවිධ ස්ථාන වලින් පාලනය විය. උදාහරණයක් ලෙස, පාරිභෝගිකයින් Billmanager හරහා ගෙවූ අතර, ඔවුන්ට VMManager හි VDS නැවත ආරම්භ කිරීමට හෝ නැවත ස්ථාපනය කිරීමට සිදු විය. සේවාදායකයෙකුට උපකාර කිරීමට, ඔහුගේ සේවාදායකයේ බර පරීක්ෂා කිරීමට හෝ ඔහු භාවිතා කරන OS එක බැලීමට අපගේ කාර්ය මණ්ඩලයට කවුළු අතර මාරු වීමට සිදු විය.

එවැනි අතුරු මුහුණතක් සඳහා කාලය ගත වේ - අපගේ සහ අපගේ සේවාදායකයින්. එවැනි තත්වයක් තුළ DigitalOcean වැනි කිසිදු පහසුවක් පිළිබඳ ප්රශ්නයක් නොමැත.

නිතර API යාවත්කාලීන කිරීම් සහිත කෙටි ජීවන චක්‍ර

අපි අපේම ප්ලගීන ලියා ඇත - උදාහරණයක් ලෙස, VMManager හි නොමැති අමතර ගෙවීම් ක්‍රම සහිත ප්ලගිනයක්.

මෑත වසරවලදී, VMManager සාපේක්ෂව කෙටි ජීවන චක්‍රයක් ඇති අතර, නව අනුවාද වල, API හි විචල්‍යයන් හෝ ශ්‍රිතවල නම් අත්තනෝමතික ලෙස වෙනස් විය හැකිය - මෙය අපගේ ප්ලගීන බිඳ දැමීය. පැරණි අනුවාද සඳහා සහය ඉක්මනින් ඉවත් කරන ලද අතර යාවත්කාලීන කිරීමට සිදු විය.

වෙනස් කළ නොහැක

වඩාත් නිවැරදිව, එය හැකි ය, නමුත් අතිශයින්ම අකාර්යක්ෂමයි. බලපත්‍ර සීමාවන් ඔබට ප්‍රභව කේතයට වෙනස්කම් කිරීමට ඉඩ නොදේ, ඔබට ලිවිය හැක්කේ ප්ලගීන පමණි. උපරිම ප්ලගීන - සමහර මෙනු අයිතම, පියවරෙන් පියවර විශාරදයෙක්. ISP පද්ධතිය බහුකාර්යතාව සඳහා නිර්මාණය කර ඇත, නමුත් අපට විශේෂිත විසඳුම් අවශ්ය විය.

ඒ නිසා මගේම මණ්ඩලයක් ලියන්න තීරණය මෝරා තිබුණා. අපි ඉලක්ක තබා ඇත:

  • දෝෂ, දෝෂ සඳහා ඉක්මනින් ප්‍රතිචාර දක්වන්න සහ සේවාලාභියා බලා සිටීමට ඉඩ නොදී ඒවා ඔබම නිවැරදි කිරීමට හැකි වන්න.
  • කාර්ය ප්‍රවාහ සහ සේවාදායක අවශ්‍යතා සඳහා අතුරු මුහුණත නිදහසේ වෙනස් කරන්න.
  • පිරිසිදු සහ තේරුම්ගත හැකි නිර්මාණයක් සමඟින් උපයෝගීතාව වැඩි කරන්න.

ඒ වගේම අපි සංවර්ධනය ආරම්භ කළා.

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

අපිට ස්වයංපෝෂිත සංවර්ධන කණ්ඩායමක් ඉන්නවා, ඒ නිසා අපිම පැනලය ලිව්වා.
ප්‍රධාන කාර්යය ඉංජිනේරුවන් තිදෙනෙකු විසින් සිදු කරන ලදී - තාක්ෂණික අධ්‍යක්ෂ සර්ජි ගෘහ නිර්මාණ ශිල්පය ඉදිරිපත් කර සේවාදායක නියෝජිතයා ලිවීය, ඇලෙක්සි බිල්පත් කිරීම සිදු කළේය, ඉදිරිපස කෙළවර එකලස් කළේ අපගේ ඉදිරිපස ආටිෂ් විසිනි.

පියවර 1: සේවාදායක නියෝජිතයා

සේවාදායක නියෝජිතයා යනු පුස්තකාලය කළමනාකරණය කරන පයිතන් වෙබ් සේවාදායකයකි ලිබ්වර්ට්, එය අනෙක් අතට පාලනය කරයි Qemu-kvm හයිපර්වයිසර්.

නියෝජිතයා සේවාදායකයේ සියලුම සේවාවන් කළමනාකරණය කරයි: vds නිර්මාණය කිරීම, නැවැත්වීම, මකා දැමීම, මෙහෙයුම් පද්ධති ස්ථාපනය කිරීම, පරාමිති වෙනස් කිරීම සහ යනාදිය libvirt පුස්තකාලය හරහා. ලිපිය ප්‍රකාශයට පත් කරන අවස්ථාවේදී, මේවා විවිධ කාර්යයන් හතළිහකට වඩා වැඩි වන අතර, ඒවා සේවාදායකයාගේ කාර්යය සහ අවශ්‍යතා අනුව අපි අතිරේක කරමු.

න්‍යායාත්මකව, libvirt බිල්පත් වලින් සෘජුවම පාලනය කළ හැක, නමුත් මේ සඳහා වැඩිපුර කේත අවශ්‍ය වූ අතර අපි මෙම කාර්යයන් නියෝජිතයා සහ බිල්පත් අතර වෙන් කිරීමට තීරණය කළෙමු - බිල්පත් කිරීම JSON API හරහා නියෝජිතයා වෙත ඉල්ලීම් කරයි.

කිසිදු අතුරු මුහුණතක් අවශ්‍ය නොවන නිසාත්, සේවාදායක කොන්සෝලයෙන් එය කෙලින්ම පරීක්‍ෂා කිරීමට හැකි වූ නිසාත් අප කළ පළමු දෙය නියෝජිතයාය.

සේවාදායක නියෝජිතයා අපට දුන් දේ: සෑම කෙනෙකුටම ජීවිතය සරල කරන ස්ථරයක් දර්ශනය වී ඇත - බිල්පත් කිරීම සඳහා සම්පූර්ණ විධාන පොකුරක් යැවීමට අවශ්‍ය නැත, නමුත් ඉල්ලීමක් කරන්න. සහ නියෝජිතයා අවශ්ය සියල්ල සිදු කරනු ඇත: උදාහරණයක් ලෙස, එය තැටි ඉඩ සහ RAM වෙන් කරනු ඇත.

පියවර 2. බිල්පත් කිරීම

අපගේ සංවර්ධක ඇලෙක්ස් සඳහා, මෙය පළමු පාලක පැනලය නොවේ - ඇලෙක්ස් දිගු කලක් සත්කාරකත්වයේ සිට ඇත, එබැවින් ඔහු සාමාන්‍යයෙන් සේවාදායකයාට අවශ්‍ය දේ සහ සත්කාරකයට අවශ්‍ය දේ තේරුම් ගත්තේය.

අපි අප අතර බිල්පත් කිරීම "පාලක පැනලය" ලෙස හඳුන්වමු: එහි මුදල් සහ සේවා පමණක් නොව, ඔවුන්ගේ කළමනාකරණය, පාරිභෝගික සහාය සහ තවත් බොහෝ දේ අඩංගු වේ.

ISPSystem මෘදුකාංගයෙන් මාරුවීම සඳහා, ගනුදෙනුකරුවන් සඳහා පෙර ක්‍රියාකාරීත්වය සම්පූර්ණයෙන්ම ආරක්ෂා කිරීම, පැරණි බිල්පත් වලින් පරිශීලකයින්ගේ සියලුම මූල්‍ය ක්‍රියා නව බිල්පත් වෙත මාරු කිරීම මෙන්ම ඒවා අතර ඇති සියලුම සේවාවන් සහ සම්බන්ධතාද අවශ්‍ය විය. අපි වත්මන් නිෂ්පාදනයේ ඇති දේ අධ්යයනය කළා, පසුව තරඟකරුවන්ගේ විසඳුම්, ප්රධාන වශයෙන් DO සහ Vultr. අපි ISPsystem වෙතින් පැරණි නිෂ්පාදන සමඟ වැඩ කළ අයගෙන් ප්‍රතිපෝෂණ රැස් කර, අවාසි සහ වාසි දෙස බැලුවෙමු.

නව බිල්පත් සඳහා අට්ටි දෙකක් භාවිතා කරන ලදී: සම්භාව්‍ය PHP, MySQL (සහ අනාගතයේදී එය PostgreSQL වෙත මාරු වීමට සැලසුම් කර ඇත), Yii2 පසුපෙළේ රාමුවක් ලෙස සහ ඉදිරිපස VueJS. Stacks එකින් එක ස්වාධීනව ක්‍රියා කරයි, විවිධ පුද්ගලයින් විසින් සංවර්ධනය කර ඇත, සහ JSON API භාවිතයෙන් සන්නිවේදනය කරයි. සංවර්ධනය සඳහා එදත් අදත් භාවිතා කරනවා පීඑච්පීඑස්ටර්ම් и වෙබ්ස්ටෝම් JetBrains වෙතින් සහ ඔවුන්ට ඉතා ආදරය කරන්න (ඒයි යාලුවනේ!)

පැනලය මොඩියුලර් පදනමක් මත නිර්මාණය කර ඇත: ගෙවීම් පද්ධති මොඩියුල, වසම් රෙජිස්ට්රාර් මොඩියුලය හෝ, උදාහරණයක් ලෙස, SSL සහතික මොඩියුලය. ඔබට පහසුවෙන් නව විශේෂාංගයක් එක් කිරීමට හෝ පැරණි එකක් ඉවත් කිරීමට හැකිය. "දෘඪාංග දෙසට" ප්රතිවිරුද්ධ දිශාවට ඇතුළුව, ව්යාප්තිය සඳහා පදනම වාස්තුවිද්යාත්මකව සකස් කර ඇත.
ISP පද්ධතිය, සමාව දී සමුගන්න! අපි අපගේ සේවාදායක පාලන පැනලය ලිව්වේ ඇයි සහ කෙසේද
අපිට මොනවද ලැබුණේ: අපට සම්පූර්ණ පාලනය ඇති පාලක පැනලයක්. දැන් දෝශ නිරාකරණය කර ඇත්තේ සති ගණනින් නොව පැය වලින් වන අතර නව විශේෂාංග ක්‍රියාත්මක කරනු ලබන්නේ පාරිභෝගිකයින්ගේ ඉල්ලීම මත මිස ISPSystem හි ඉල්ලීම මත නොවේ.

පියවර 3 අතුරු මුහුණත

ISP පද්ධතිය, සමාව දී සමුගන්න! අපි අපගේ සේවාදායක පාලන පැනලය ලිව්වේ ඇයි සහ කෙසේද
අතුරු මුහුණත අපගේ කණ්ඩායමේ මොළයයි.

පළමුව, අපි අතුරු මුහුණතේ කිසිවක් මූලික වශයෙන් වෙනස් නොකර ISPsystem API හරහා ඇඩෝනයක් කළහොත් කුමක් සිදුවේදැයි අපි සොයා බැලුවෙමු. එය එසේ වූ අතර අපි මුල සිටම සියල්ල කිරීමට තීරණය කළෙමු.

අපි විශ්වාස කළේ ප්රධාන දෙය වන්නේ අතුරු මුහුණත තාර්කික කිරීම, පිරිසිදු හා අවම මෝස්තරයක් සහිතව, එවිට අපට අලංකාර පැනලයක් ලැබෙනු ඇත. මූලද්‍රව්‍යවල පිහිටීම Megaplan හි සාකච්ඡා කරන ලද අතර දැන් පාලක පැනලයේ පරිශීලකයින් දකින අතුරු මුහුණත ක්‍රමයෙන් උපත ලබයි.

අපි දැනටමත් ISPsystem සඳහා ගෙවීම් ප්ලගීන සාදා ඇති නිසා, බිල්පත් පිටුවේ සැලසුම මුලින්ම දර්ශනය විය.

ඉදිරි අන්තය

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

ඉදිරිපස පිටුපසට සම්බන්ධ කිරීම

ඉදිරි අන්තය තල්ලු දැනුම්දීම් හරහා පසු අන්තයට සම්බන්ධ කර ඇත. මට වෙහෙස මහන්සි වී මගේම හසුරුවන්නා ලිවීමට සිදු විය, නමුත් දැන් පිටුවේ තොරතුරු ක්ෂණිකව පාහේ යාවත්කාලීන වේ.

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

පියවර 4. පරීක්ෂණ සහ සංක්‍රමණ යෝජනා ක්‍රමය

සෑම දෙයක්ම ආරම්භ වූ විට සහ පළමු පරීක්ෂණ සමත් වූ විට, සංක්රමණය පිළිබඳ ප්රශ්නය මතු විය. පළමුවෙන්ම, අපි බිල්පත් ස්ථාපනය කර සේවාදායක නියෝජිතයා සමඟ එහි ක්රියාකාරිත්වය පරීක්ෂා කිරීම ආරම්භ කළෙමු.

ඊට පස්සේ අපි පැරණි බිල්පත් වලින් දත්ත ගබඩාව අලුත් එකට මාරු කරන සරල පිටපතක් ලිව්වා.

Billmanager, VMmanager සහ Manager's IPmanager යන පැරණි දත්ත තුනකින් දත්ත එක් නව දත්ත සමුදායකට ඒකාබද්ධ කර ඇති බැවින් මට වචනාර්ථයෙන් සියල්ල පරීක්ෂා කර නැවත පරීක්ෂා කිරීමට සිදු විය. නව පැනලයක් සංවර්ධනය කිරීමේ ක්‍රියාවලියේදී අපට හමු වූ වඩාත්ම දුෂ්කර දෙය පරීක්ෂණ සංක්‍රමණය විය හැකිය.

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

ඊට පස්සේ අපි අලුත් පැනලයේ ලිපිනය සහ බිල්පත් සමඟ ගනුදෙනුකරුවන්ට ලිපි යවා යළි-යොමුවීමක් කළා.

අවසානයේ: ඒකට පන තියනවා!

සතුටුදායක අවසානය

අපගේ මෘදුකාංගයේ වැඩ කරන පළමු පැය වල සිට, සංක්‍රාන්තියේ සියලු සතුට අපට දැනුනි. කේතය සම්පූර්ණයෙන්ම අපගේ සහ පහසු ගෘහ නිර්මාණ ශිල්පයක් සහිත වූ අතර අතුරු මුහුණත පිරිසිදු හා තාර්කික විය.
ISP පද්ධතිය, සමාව දී සමුගන්න! අපි අපගේ සේවාදායක පාලන පැනලය ලිව්වේ ඇයි සහ කෙසේද
නව පැනලය දියත් කිරීමෙන් පසු පළමු සමාලෝචනය

ගනුදෙනුකරුවන්ට සංක්‍රමණය පහසු කිරීම සඳහා බර අවම වූ 2017 නව වසර ආසන්නයේ දෙසැම්බර් මාසයේදී අපි සංක්‍රාන්ති ක්‍රියාවලිය දියත් කළෙමු - කිසිවෙකු නිවාඩු දින ආසන්නයේ වැඩ නොකරයි.

අපගේ පද්ධතියට මාරුවීමේදී (සාමාන්‍ය විශ්වසනීයත්වය සහ පහසුව හැර) අපට ලැබුණු ප්‍රධානතම දෙය නම් ප්‍රධාන පාරිභෝගිකයින් සඳහා ඉක්මනින් ක්‍රියාකාරීත්වය එක් කිරීමට ඇති හැකියාවයි - ඔවුන්ගේ මුහුණ වීමට මිස ඔවුන්ගේ බූරුවා වීමට.

ඊළඟට කුමක්ද?

අපි වර්ධනය වෙමින් පවතී, දත්ත ප්රමාණය, පාරිභෝගිකයින්, පාරිභෝගික දත්ත වර්ධනය වේ. මට Memcached සේවාදායකයක් සහ විවිධ කාර්යයන් සහිත පෝලිම් කළමනාකරුවන් දෙදෙනෙකු පසුබිමට එක් කිරීමට සිදු විය. ඉදිරිපසට හැඹිලි සහ තමන්ගේම පෝලිම් ඇත.

ඇත්ත වශයෙන්ම, නිෂ්පාදනය දියුණු වී වඩාත් සංකීර්ණ වූ විට අපට තවමත් වික්‍රමාන්විතයන් තිබුණි, උදාහරණයක් ලෙස අපි HighLoad එකතු කළ විට.

මීළඟ ලිපියෙන්, Hi-CPU ගාස්තුව දියත් කළ ආකාරය අපි ඔබට කියන්නෙමු: දෘඪාංග, මෘදුකාංග, අප විසින් විසඳන ලද කාර්යයන් සහ අප කළ දේ ගැන.

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

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