തുടർച്ചയായ വിന്യാസം സംഘടിപ്പിക്കുന്നതിനുള്ള 3 ജനപ്രിയ ഉപകരണങ്ങൾ (തുടർച്ചയായ വിന്യാസം)
സോഫ്റ്റ്വെയറിലെ വിവിധ പ്രവർത്തനങ്ങൾ വേഗത്തിലും സുരക്ഷിതമായും കാര്യക്ഷമമായും നടപ്പിലാക്കാൻ ഉപയോഗിക്കുന്ന സോഫ്റ്റ്വെയർ വികസനത്തിലെ ഒരു പ്രത്യേക സമീപനമാണ് തുടർച്ചയായ വിന്യാസം.
അന്തിമമായ ഉൽപ്പന്നം ഉപയോക്താവിന് വേഗത്തിൽ എത്തിക്കാൻ ഡവലപ്പറെ അനുവദിക്കുന്ന വിശ്വസനീയമായ ഒരു ഓട്ടോമേറ്റഡ് പ്രോസസ്സ് സൃഷ്ടിക്കുക എന്നതാണ് പ്രധാന ആശയം. അതേ സമയം, ഉൽപാദനത്തിൽ നിരന്തരമായ മാറ്റങ്ങൾ വരുത്തുന്നു - ഇത് തുടർച്ചയായ ഡെലിവറി പൈപ്പ്ലൈൻ (സിഡി പൈപ്പ്ലൈൻ) എന്ന് വിളിക്കുന്നു.
ഞങ്ങൾ ഓർമ്മിപ്പിക്കുന്നു:"Habr"-ന്റെ എല്ലാ വായനക്കാർക്കും - "Habr" പ്രൊമോഷണൽ കോഡ് ഉപയോഗിച്ച് ഏതെങ്കിലും സ്കിൽബോക്സ് കോഴ്സിൽ ചേരുമ്പോൾ 10 റൂബിൾസ് കിഴിവ്.
ഒഴുക്ക് നിയന്ത്രിക്കുന്നതിന്, പണമടച്ചതും പൂർണ്ണമായും സൗജന്യവും ഉൾപ്പെടെയുള്ള വിപുലമായ ടൂളുകൾ നിങ്ങൾക്ക് ഉപയോഗിക്കാം. എല്ലാ പ്രോഗ്രാമർമാർക്കും ഉപയോഗപ്രദമാകുന്ന ഡെവലപ്പർമാർക്കിടയിൽ ഏറ്റവും പ്രചാരമുള്ള മൂന്ന് പരിഹാരങ്ങൾ ഈ ലേഖനം വിവരിക്കുന്നു.
ജെങ്കിൻസ്
പൂർണ്ണമായും സ്വയം ഉൾക്കൊള്ളുന്ന ഓപ്പൺ സോഴ്സ് ഓട്ടോമേഷൻ സെർവർ. നിർമ്മാണം, ടെസ്റ്റിംഗ്, ഷിപ്പിംഗ് അല്ലെങ്കിൽ സോഫ്റ്റ്വെയർ വിന്യസിക്കൽ എന്നിവയുമായി ബന്ധപ്പെട്ട എല്ലാത്തരം ജോലികളും ഓട്ടോമേറ്റ് ചെയ്യുന്നതിന് ഇത് പ്രവർത്തിക്കുന്നത് മൂല്യവത്താണ്.
ഏറ്റവും കുറഞ്ഞ പിസി ആവശ്യകതകൾ:
256 MB റാം, 1 GB ഫയൽ സ്പേസ്.
ഒപ്റ്റിമൽ:
1 ജിബി റാം, 50 ജിബി ഹാർഡ് ഡ്രൈവ്.
പ്രവർത്തിക്കാൻ, നിങ്ങൾക്ക് അധിക സോഫ്റ്റ്വെയറും ആവശ്യമാണ് - Java Runtime Environment (JRE) പതിപ്പ് 8.
ആർക്കിടെക്ചർ (ഡിസ്ട്രിബ്യൂട്ടഡ് കമ്പ്യൂട്ടിംഗ്) ഇതുപോലെ കാണപ്പെടുന്നു:
ജെൻകിൻസ് സെർവർ ഒരു ഇൻസ്റ്റാളേഷനാണ്, അത് ജിയുഐ ഹോസ്റ്റിംഗിനും അതുപോലെ തന്നെ മുഴുവൻ ബിൽഡും ഓർഗനൈസുചെയ്യുന്നതിനും നടപ്പിലാക്കുന്നതിനും ഉത്തരവാദിയാണ്.
ജെങ്കിൻസ് നോഡ്/സ്ലേവ്/ബിൽഡ് സെർവർ - മാസ്റ്ററിന് (മാസ്റ്റർ നോഡ്) വേണ്ടി ബിൽഡ് വർക്ക് ചെയ്യാൻ കോൺഫിഗർ ചെയ്യാവുന്ന ഉപകരണങ്ങൾ.
Linux-നുള്ള ഇൻസ്റ്റാളേഷൻ
ആദ്യം നിങ്ങൾ സിസ്റ്റത്തിലേക്ക് ജെങ്കിൻസ് ശേഖരം ചേർക്കേണ്ടതുണ്ട്:
ഇതിനുശേഷം, സ്ഥിരസ്ഥിതി പോർട്ട് 8080 വഴി ജെങ്കിൻസ് സിസ്റ്റത്തിൽ ലഭ്യമാകും.
പ്രവർത്തനക്ഷമത പരിശോധിക്കാൻ, നിങ്ങൾ ബ്രൗസറിൽ വിലാസം തുറക്കേണ്ടതുണ്ട് ലോക്കൽഹോസ്റ്റിൽ:8080. റൂട്ട് ഉപയോക്താവിനുള്ള പ്രാരംഭ രഹസ്യവാക്ക് നൽകാൻ സിസ്റ്റം നിങ്ങളോട് ആവശ്യപ്പെടും. /var/lib/jenkins/secrets/initialAdminPassword എന്ന ഫയലിലാണ് ഈ പാസ്വേഡ് സ്ഥിതി ചെയ്യുന്നത്.
ഇപ്പോൾ എല്ലാം പോകാൻ തയ്യാറാണ്, നിങ്ങൾക്ക് CI/CD ഫ്ലോകൾ സൃഷ്ടിക്കാൻ തുടങ്ങാം. വർക്ക് ബെഞ്ചിന്റെ ഗ്രാഫിക്കൽ ഇന്റർഫേസ് ഇതുപോലെ കാണപ്പെടുന്നു:
ജെങ്കിൻസ് ശക്തികൾ:
മാസ്റ്റർ/സ്ലേവ് ആർക്കിടെക്ചർ നൽകുന്ന സ്കേലബിളിറ്റി;
REST XML/JSON API യുടെ ലഭ്യത;
പ്ലഗിനുകൾക്ക് നന്ദി, ധാരാളം വിപുലീകരണങ്ങൾ ബന്ധിപ്പിക്കുന്നതിനുള്ള കഴിവ്;
സജീവവും നിരന്തരം വികസിക്കുന്നതുമായ സമൂഹം.
പരിഗണന:
അനലിറ്റിക്കൽ ബ്ലോക്ക് ഇല്ല;
വളരെ ഉപയോക്തൃ-സൗഹൃദ ഇന്റർഫേസ് അല്ല.
ടീംസിറ്റി
JetBrains-ൽ നിന്നുള്ള വാണിജ്യ വികസനം. ലളിതമായ സജ്ജീകരണവും മികച്ച ഇന്റർഫേസും ഉള്ള സെർവർ നല്ലതാണ്. സ്ഥിരസ്ഥിതി കോൺഫിഗറേഷന് ധാരാളം ഫംഗ്ഷനുകൾ ഉണ്ട്, കൂടാതെ ലഭ്യമായ പ്ലഗിന്നുകളുടെ എണ്ണം നിരന്തരം വർദ്ധിച്ചുകൊണ്ടിരിക്കുന്നു.
Java Runtime Environment (JRE) പതിപ്പ് 8 ആവശ്യമാണ്.
സെർവർ ഹാർഡ്വെയർ ആവശ്യകതകൾ നിർണായകമല്ല:
റാം - 3,2 ജിബി;
പ്രോസസ്സർ - ഡ്യുവൽ കോർ, 3,2 GHz;
1 Gb/s ശേഷിയുള്ള ആശയവിനിമയ ചാനൽ.
ഉയർന്ന പ്രകടനം നേടാൻ സെർവർ നിങ്ങളെ അനുവദിക്കുന്നു:
60 ബിൽഡ് കോൺഫിഗറേഷനുകളുള്ള 300 പ്രോജക്ടുകൾ;
ബിൽഡ് ലോഗിനായി 2 MB അലോക്കേഷൻ;
50 നിർമ്മാണ ഏജന്റുമാർ;
വെബ് പതിപ്പിൽ 50 ഉപയോക്താക്കളുമായും IDE-യിലെ 30 ഉപയോക്താക്കളുമായും പ്രവർത്തിക്കാനുള്ള കഴിവ്;
ബാഹ്യ VCS-ന്റെ 100 കണക്ഷനുകൾ, സാധാരണയായി പെർഫോഴ്സ്, സബ്വേർഷൻ. ശരാശരി മാറ്റ സമയം 120 സെക്കൻഡ് ആണ്;
പ്രതിദിനം 150-ലധികം പരിഷ്കാരങ്ങൾ;
ഒരു സെർവറിൽ ഡാറ്റാബേസുമായി പ്രവർത്തിക്കുന്നു;
JVM സെർവർ പ്രോസസ്സ് ക്രമീകരണങ്ങൾ: -Xmx1100m -XX:MaxPermSize=120m.
പ്രവർത്തിക്കുന്ന അസംബ്ലികളെ അടിസ്ഥാനമാക്കിയുള്ളതാണ് ഏജന്റ് ആവശ്യകതകൾ. കണക്റ്റുചെയ്ത എല്ലാ ഏജന്റുമാരെയും നിരീക്ഷിക്കുകയും അനുയോജ്യത ആവശ്യകതകളെ അടിസ്ഥാനമാക്കി ഈ ഏജന്റുമാർക്ക് ക്യൂവിലുള്ള അസംബ്ലികൾ വിതരണം ചെയ്യുകയും ഫലങ്ങൾ റിപ്പോർട്ട് ചെയ്യുകയും ചെയ്യുക എന്നതാണ് സെർവറിന്റെ പ്രധാന ദൗത്യം. ഏജന്റുമാർ വിവിധ പ്ലാറ്റ്ഫോമുകളിലും ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിലും കൂടാതെ മുൻകൂട്ടി കോൺഫിഗർ ചെയ്ത പരിതസ്ഥിതിയിലും വരുന്നു.
ബിൽഡ് ഫലങ്ങളെക്കുറിച്ചുള്ള എല്ലാ വിവരങ്ങളും ഡാറ്റാബേസിൽ സംഭരിച്ചിരിക്കുന്നു. പ്രാഥമികമായി ഇത് ചരിത്രവും മറ്റ് സമാന ഡാറ്റയും, VCS മാറ്റങ്ങൾ, ഏജന്റുമാർ, ബിൽഡ് ക്യൂകൾ, ഉപയോക്തൃ അക്കൗണ്ടുകൾ, അനുമതികൾ എന്നിവയാണ്. ഡാറ്റാബേസിൽ ബിൽഡ് ലോഗുകളും ആർട്ടിഫാക്റ്റുകളും മാത്രം ഉൾപ്പെടുന്നില്ല.
Linux-നുള്ള ഇൻസ്റ്റാളേഷൻ
ഒരു Tomcat servlet കണ്ടെയ്നർ ഉപയോഗിച്ച് TeamCity സ്വമേധയാ ഇൻസ്റ്റാൾ ചെയ്യാൻ, നിങ്ങൾ TeamCity ആർക്കൈവ് ഉപയോഗിക്കണം: TeamCity .tar.gz. ഡൗൺലോഡ് നിങ്ങൾക്ക് അത് ഇവിടെ നിന്ന് ലഭിക്കും.
tar -xfz TeamCity.tar.gz
/bin/runAll. sh [ആരംഭിക്കുക|നിർത്തുക]
നിങ്ങൾ ആദ്യം ആരംഭിക്കുമ്പോൾ, അസംബ്ലി ഡാറ്റ സംഭരിക്കുന്ന ഡാറ്റാബേസിന്റെ തരം നിങ്ങൾ തിരഞ്ഞെടുക്കേണ്ടതുണ്ട്.
ഡിഫോൾട്ട് കോൺഫിഗറേഷൻ പ്രവർത്തിക്കുന്നു ലോക്കൽഹോസ്റ്റിൽഒരേ പിസിയിൽ പ്രവർത്തിക്കുന്ന ഒരു രജിസ്റ്റർ ചെയ്ത ബിൽഡ് ഏജന്റിനൊപ്പം :8111/.
ടീംസിറ്റിയുടെ ശക്തികൾ:
ലളിതമായ സജ്ജീകരണം;
ഉപയോക്തൃ-സ friendly ഹൃദ ഇന്റർഫേസ്;
ബിൽറ്റ്-ഇൻ ഫംഗ്ഷനുകളുടെ ഒരു വലിയ സംഖ്യ;
പിന്തുണ സേവനം;
ഒരു RESTful API ഉണ്ട്;
നല്ല ഡോക്യുമെന്റേഷൻ;
നല്ല സുരക്ഷ.
പരിഗണന:
പരിമിതമായ ഏകീകരണം;
ഇതൊരു പണമടച്ചുള്ള ഉപകരണമാണ്;
ഒരു ചെറിയ കമ്മ്യൂണിറ്റി (അത് വളരുന്നു).
GoCD
ഇൻസ്റ്റാളേഷനും പ്രവർത്തനത്തിനും ജാവ റൺടൈം എൻവയോൺമെന്റ് (ജെആർഇ) പതിപ്പ് 8 ആവശ്യമായ ഒരു ഓപ്പൺ സോഴ്സ് പ്രോജക്റ്റ്.
സിസ്റ്റം ആവശ്യകതകൾ:
റാം - കുറഞ്ഞത് 1 GB, കൂടുതൽ നല്ലത്;
പ്രോസസ്സർ - ഡ്യുവൽ കോർ, 2 GHz ന്റെ കോർ ഫ്രീക്വൻസി;
ഹാർഡ് ഡ്രൈവ് - കുറഞ്ഞത് 1 GB ശൂന്യമായ ഇടം.
ഏജന്റ്:
റാം - കുറഞ്ഞത് 128 MB, കൂടുതൽ നല്ലത്;
പ്രോസസ്സർ - കുറഞ്ഞത് 2 GHz.
സെർവർ ഏജന്റുമാരുടെ പ്രവർത്തനം ഉറപ്പാക്കുകയും ഉപയോക്താവിന് സൗകര്യപ്രദമായ ഒരു ഇന്റർഫേസ് നൽകുകയും ചെയ്യുന്നു:
ഘട്ടങ്ങൾ/ജോലികൾ/ജോലികൾ:
Linux-നുള്ള ഇൻസ്റ്റാളേഷൻ
എക്കോ "ഡെബ് download.gocd.org /” | sudo tee /etc/apt/sources.list.d/gocd.list
ഒരു കാഴ്ചയിൽ ഘട്ടം ഘട്ടമായുള്ള GoCD വിന്യാസ പാത കാണിക്കാനുള്ള കഴിവ്:
പൈപ്പ്ലൈൻ ഘടനയുടെ മികച്ച പ്രദർശനം:
ഡോക്കർ, എഡബ്ല്യുഎസ് ഉൾപ്പെടെയുള്ള ഏറ്റവും ജനപ്രിയമായ ക്ലൗഡ് പരിതസ്ഥിതികളിൽ സിഡി വർക്ക്ഫ്ലോ ഒപ്റ്റിമൈസ് ചെയ്യുന്നു GoCD;
പൈപ്പ് ലൈനിലെ പ്രശ്നങ്ങൾ പരിഹരിക്കാൻ ഉപകരണം സാധ്യമാക്കുന്നു, ഇതിനായി പ്രതിബദ്ധത മുതൽ വിന്യാസം വരെയുള്ള എല്ലാ മാറ്റങ്ങളും തത്സമയം ട്രാക്കുചെയ്യുന്നു.
പരിഗണന:
കുറഞ്ഞത് ഒരു ഏജന്റ് ആവശ്യമാണ്;
പൂർത്തിയാക്കിയ എല്ലാ ജോലികളും പ്രദർശിപ്പിക്കാൻ കൺസോൾ ഇല്ല;
ഓരോ കമാൻഡും എക്സിക്യൂട്ട് ചെയ്യുന്നതിന്, പൈപ്പ്ലൈൻ കോൺഫിഗറേഷനായി നിങ്ങൾ ഒരു ടാസ്ക് സൃഷ്ടിക്കേണ്ടതുണ്ട്;
പ്ലഗിൻ ഇൻസ്റ്റാൾ ചെയ്യാൻ, നിങ്ങൾ .jar ഫയൽ /plugins/external എന്നതിലേക്ക് നീക്കി സെർവർ പുനരാരംഭിക്കേണ്ടതുണ്ട്;
താരതമ്യേന ചെറിയ സമൂഹം.
ഉപസംഹാരമായി
ഇവ വെറും മൂന്ന് ഉപകരണങ്ങൾ മാത്രമാണ്, വാസ്തവത്തിൽ ഇനിയും ധാരാളം ഉണ്ട്. തിരഞ്ഞെടുക്കാൻ പ്രയാസമാണ്, അതിനാൽ നിങ്ങൾ തീർച്ചയായും അധിക വശങ്ങളിൽ ശ്രദ്ധിക്കേണ്ടതുണ്ട്.
ടൂളിന്റെ ഓപ്പൺ സോഴ്സ് കോഡ് അത് എന്താണെന്ന് മനസ്സിലാക്കുന്നത് സാധ്യമാക്കുന്നു, കൂടാതെ പുതിയ സവിശേഷതകൾ വേഗത്തിൽ ചേർക്കുകയും ചെയ്യുന്നു. എന്നാൽ എന്തെങ്കിലും പ്രവർത്തിക്കുന്നില്ലെങ്കിൽ, നിങ്ങൾ നിങ്ങളെയും സമൂഹത്തിന്റെ സഹായത്തെയും മാത്രം ആശ്രയിക്കണം. പണമടച്ചുള്ള ഉപകരണങ്ങൾ ചിലപ്പോൾ നിർണായകമായ പിന്തുണ നൽകുന്നു.
സുരക്ഷയാണ് നിങ്ങളുടെ മുൻഗണന എങ്കിൽ, ഒരു പ്രാദേശിക ഉപകരണം ഉപയോഗിച്ച് പ്രവർത്തിക്കുന്നത് മൂല്യവത്താണ്. ഇല്ലെങ്കിൽ, ഒരു SaaS പരിഹാരം തിരഞ്ഞെടുക്കുന്നത് ഒരു നല്ല ഓപ്ഷനാണ്.
അവസാനമായി, യഥാർത്ഥത്തിൽ ഫലപ്രദമായ തുടർച്ചയായ വിന്യാസ പ്രക്രിയ ഉറപ്പാക്കുന്നതിന്, ലഭ്യമായ ഉപകരണങ്ങളുടെ ശ്രേണി ചുരുക്കാൻ നിങ്ങളെ അനുവദിക്കുന്ന പ്രത്യേകതകൾ നിങ്ങൾ രൂപപ്പെടുത്തേണ്ടതുണ്ട്.