ക്യൂബർനെറ്റ്‌സ്

·

2 min read

ഇത് കഴിഞ്ഞ പോസ്റ്റിന്റെ തുടർച്ചയല്ല. പകരം ഇപ്പോളുള്ള ഒരു പ്രമുഖ ടെക്നോളജിയെ പറ്റിയുള്ളതാണ്. ക്‌ളൗഡ്‌ കമ്പ്യൂട്ടിങ്ങിന്റെ പുതിയ മുഖമായാണ് ക്യൂബർനെറ്റ്‌സ് അറിയപ്പെടുന്നത്. നിങ്ങൾ ഒരു സീനിയർ ഡെവലപ്പറാണോ? അല്ലെങ്കിൽ ക്‌ളൗഡ്‌ കമ്പ്യൂട്ടിങ് മേഖലയിൽ പ്രാവീണ്യമുള്ളയാളാണോ? അങ്ങനെയെങ്കിൽ ഈ പേര് നിങ്ങൾ കേട്ടിട്ടുണ്ടാകും. എന്താണ് ക്യൂബർനെറ്റ്‌സ്? ഒരു കണ്ടെയ്നർ ഓർക്കസ്ട്രഷൻ ടൂളാണ് ക്യൂബർനെറ്റ്‌സ്. എന്ന് പറഞ്ഞാൽ എന്താണർത്ഥം? നോക്കാം.

നിങ്ങൾ ഒരു വെബ് അപ്ലിക്കേഷൻ ഡെവലപ് ചെയ്യുകയാണെന്നിരിക്കട്ടെ. ഇന്ന് അത് പോലൊരു പ്രൊജക്റ്റ് പൂർത്തീകരിക്കാനായി പല ഫ്രെയിംവർക്കുകൾ നിലവിലുണ്ട്. ഇത്തരത്തിലുള്ള ഒരു ഫ്രെയിംവർക് ഉപയോഗിച്ച നിങ്ങൾ ഒരു വെബ് അപ്ലിക്കേഷൻ ഡെവലപ്പ് ചെയ്തു. പ്രൊഡക്ഷൻ സെർവറിൽ ഹോസ്റ്റ് ചെയ്യാൻ പാകത്തിന് അത് പൂർത്തിയായി. നിങ്ങൾ എങ്ങനെ അത് ഹോസ്റ്റ് ചെയ്യും. നിങ്ങൾ ഡെവലപ് ചെയ്ത ഒരു ആപ്ലിക്കേഷൻ ഇന്ന് ഒരു സെർവറിൽ ഹോസ്റ്റ് ചെയ്യാൻ പല മാർഗ്ഗങ്ങൾ നിലവിലുണ്ട്.

ഒന്നാമത്തെ മാർഗ്ഗം ഒരു ഫിസിക്കൽ സെർവറിൽ ഹോസ്റ്റ് ചെയ്യുക എന്നതാണ്. നിങ്ങൾ നിങ്ങൾക്കിഷ്ടപ്പെട്ട ഒരു സെർവർ കമ്പ്യൂട്ടർ വാങ്ങുന്നു. ലിനക്സോ വിൻഡോസോ പ്രാവീണ്യമുള്ള ഓപ്പറേറ്റിംഗ്‌ സിസ്റ്റം തിരഞ്ഞെടുക്കുന്നു. നിങ്ങൾക്ക് വേണ്ട സെർവർ സ്റ്റാക് ഫ്രെയിംവർക് ഉപയോഗിക്കുന്നു. അതുമല്ലെങ്കിൽ മോഡുലാർ ആയി സ്റ്റാക്കിലെ ഓരോ ഘടകവും നിങ്ങള്കിഷ്ടപ്പെട്ട വിധത്തിൽ ഇൻസ്റ്റാൾ ചെയ്യുന്നു.ഓപ്പറേറ്റിംഗ് സിസ്റ്റം മുതൽ സെർവർ എൻജിൻ വരെ നിങ്ങൾ സാവധാനം ഇൻസ്റ്റാൾ ചെയ്യുന്നു. ആവശ്യത്തിനുള്ള മെമ്മറിയും നിങ്ങൾ ഉണ്ടെന്ന് ഉറപ്പുവരുത്തുന്നു. ഇനി നിങ്ങളുടെ ഡിപ്ലോയ് ചെയ്യാൻ സജ്ജമായ ആപ്പ്ളിക്കേഷന് ആവശ്യമായ എല്ലാ ഡിപെൻഡൻസികളും ഇൻസ്റ്റാൾ ചെയ്യുന്നു. ചെയ്യാൻ ഒരുപാടുണ്ട് അല്ലെ.. സെർവറിന്റെ മുകളിലെ പണികൾ തന്നെ ധാരാളമുണ്ട്. നിങ്ങൾ ചെയ്യുന്നതെല്ലാം ഒറ്റ പ്രതീക്ഷയിലാണ്. നിങ്ങൾ പ്രതീക്ഷിക്കുന്ന ട്രാഫിക് തന്നെ ഉണ്ടാകുന്നു. പക്ഷെ പ്രതീക്ഷിച്ച ട്രാഫിക് ഇല്ലെങ്കിലോ?അത്ര നല്ല സെർവർ വേണ്ടായിരുന്നോ? ഇനി പ്രതീക്ഷിച്ചതിന് മുകളിൽ ട്രാഫിക് വന്നാലോ? കാര്യങ്ങൾ വീണ്ടും സങ്കീർണമാകും. കുറച്ചുകാലം മുൻപ് വരെ ഇങ്ങനെയൊക്കെത്തന്നെയാണ് ഹോസ്റ്റ് ചെയ്തിരുന്നത്. അതല്പം ബുദ്ധിമുട്ടാണ് അല്ലെ..

രണ്ടാമത്തെ മാർഗ്ഗം ഒരു വിർച്ച്വൽ സെർവർ ഉപയോഗിക്കുക എന്നതാണ്. ഇവിടെയാണ് ക്‌ളൗഡ്‌ കമ്പ്യൂട്ടിങ് ആരംഭിക്കുന്നത്. ക്‌ളൗഡ്‌ ഹോസ്റ്റിംഗിന്റെ പ്രത്യേകതകൾ എന്തെല്ലാമാണ്? ഒരു സെർവർ കമ്പ്യൂട്ടർ സ്വന്തമായി വാങ്ങി പരിപാലിക്കുന്നതിന് പകരം സെർവർ വാടകക്കെടുക്കുന്ന പരിപാടിയാണിത്. അങ്ങനെ വാടകക്ക് കൊടുക്കുന്ന നൂറുകണക്കിന് കമ്പനികൾ ഇന്നുണ്ട്. ഇവിടെ നിങ്ങള്ക്ക് ആവശ്യമുള്ള സെർവർ തുച്ഛമായ തുകക്ക് വാങ്ങി ഉപയോഗിക്കാം. സെർവർ പരിപാലനം നിങ്ങളുടെ ജോലിയല്ല. അതിനാൽ നിങ്ങൾക്ക് നിങ്ങളുടെ ഡെവെലപ്മെന്റിൽ നന്നായി ശ്രദ്ധിക്കാം. പിന്നീട കൂടുതൽ ട്രാഫിക് വന്നാൽ സെർവർ കപ്പാസിറ്റി വർദ്ധിപ്പിക്കാം. ഇതിനെയാണ് സ്കെയിലിംഗ് എന്ന് വിളിക്കുന്നത്. പല വലിയ പ്രശ്നങ്ങൾ പരിഹരിക്കപ്പെട്ടു.എന്നാൽ ഇപ്പോഴും ചില പ്രശ്നങ്ങൾ ബാക്കി നിൽക്കുന്നുണ്ട്. എന്തെല്ലാമാണത്?

നിങ്ങൾ ഡെവലപ് ചെയ്തത് ആമസോൺ പോലെ ഒരു വലിയ ആപ്ലിക്കേഷൻ ആണെന്ന് സങ്കൽപ്പിക്കുക. ഒരുപാട് സംവിധാങ്ങൾ നല്കുന്നതുകൊണ്ട് ഒരുപാട് കോഡും ഉണ്ടാകുമല്ലോ.ഈ മുഴുവൻ കോഡും നിങ്ങൾ ടെസ്റ്റ് ചെയ്തത് നിങ്ങളുടെ സ്വന്തം കംപ്യൂട്ടറിലാണെന്ന് കരുതുക. ഈ വെബ് അപ്ലിക്കേഷന് ആവശ്യമായ മുഴുവൻ ഡിപെൻഡൻസികളും നിങ്ങളുടെ കംപ്യൂട്ടറിലുണ്ട്. നിങ്ങളുടെ കമ്പ്യൂട്ടറിൽ നിന്നും അത് നേരെ സെർവറിലേക്ക് എങ്ങനെ കോപ്പി ചെയ്യും? ഡിപെൻഡൻസികൾ എങ്ങനെ കണ്ടെത്തും? അതിന്റെ വേർഷൻ ഏതായിരുന്നു? അപ്പ്ലിക്കേഷന്റെ വലുപ്പം കൂടുമ്പോൾ ഇതെല്ലാം വെല്ലുവിളികളായി മാറും.ഇനി അപ്പ്ലിക്കേഷന്റെ എല്ലാ ഭാഗവും ഒറ്റ സെർവറിൽ സൂക്ഷിച്ചാൽ മറ്റൊരു പ്രശ്നവുമുണ്ട്. മൊത്തം റിസോർസുകൾ ലോഡ് കൂടിയ മൊഡ്യൂൾ ഉപയോഗിച്ചാൽ മറ്റ് മൊഡ്യൂളുകൾ സ്ലോ ആകാൻ സാധ്യതയുണ്ട്.

അതുകൊണ്ട് ഇത്തരം വൻ പ്രൊജെക്ടുകളെ സഹായിക്കാൻ, ഡെവലപ്പർമാരുടെയും ക്‌ളൗഡ്‌ എഞ്ചിനിയർമാരുടെയും ജോലി കുറക്കാൻ വേണ്ടി വന്ന പുത്തൻ സംവിധാനമാണ് കണ്ടൈനറൈസേഷൻ. അതാണ് മൂന്നാമത്തെ സംവിധാനം. ഒരു USB ഡിസ്‌കിൽ ഡോക്യുമെന്റ് കൊണ്ടുപോകുന്നതുപോലെ, ഒരു വെബ് അപ്ലിക്കേഷൻ കൊണ്ടുപോകാൻ സാധിച്ചാൽ അത് ഒരുപാട് ജോലികൾ കുറയ്ക്കും,ശരിയല്ലേ. അതാണ് കണ്ടൈനറൈസേഷൻ ചെയ്യുന്നത്. അപ്പ്ലിക്കേഷന്റെ പല ഭാഗങ്ങൾ ഡെവലപ് ചെയ്യുമ്പോൾ കണ്ടൈനറൈസേഷൻ ഉപയോഗിച്ചാൽ ഒരു കണ്ടെയ്നർ ഇമേജായി ഈ ഭാഗങ്ങൾ മാറ്റാം. സെർവറിലും ഈ ഫയൽ ഈസിയായി ഇൻസ്‌റ്റാളും ചെയ്യാം. കോണ്ഫിഗറേഷനും ഡിപെൻഡൻസിയും എല്ലാം അതുപോലെ തന്നെ സെർവറിൽ എത്തും. ഏതെങ്കിലും ഭാഗത്തു എന്തെങ്കിലും പ്രശനം വന്നാൽ മൊത്തം കോഡ് തിരുത്താതെ ആവശ്യമുള്ള ഭാഗം മാത്രം തിരുത്തിയാൽ മതി. അപ്‌ഡേറ്റുകളുടെ കാര്യവും അങ്ങനെ തന്നെ. കണ്ടെയ്നറുകളിലെ മുഖ്യൻ ഇപ്പോൾ ഡോക്കറാണ്.