GitOps: மற்றொரு buzzword அல்லது ஆட்டோமேஷனில் ஒரு திருப்புமுனை?

GitOps: மற்றொரு buzzword அல்லது ஆட்டோமேஷனில் ஒரு திருப்புமுனை?

நம்மில் பெரும்பாலோர், தகவல் தொழில்நுட்ப வலைப்பதிவு அல்லது மாநாட்டில் மற்றொரு புதிய வார்த்தையைக் கவனிக்கும்போது, ​​விரைவில் அல்லது பின்னர் இதேபோன்ற கேள்வியைக் கேட்கிறோம்: “இது என்ன? மற்றொரு buzzword, ஒரு "பஸ்வேர்ட்" அல்லது புதிய எல்லைகள் பற்றிய நெருக்கமான கவனம், ஆய்வு மற்றும் வாக்குறுதிக்கு உண்மையிலேயே தகுதியான ஒன்று?" எனக்கும் காலத்திலும் அப்படித்தான் நடந்தது GitOps சில நேரம் முன்பு. ஏற்கனவே உள்ள பல கட்டுரைகள், அத்துடன் நிறுவனத்தில் இருந்து சக ஊழியர்களின் அறிவு ஆகியவற்றுடன் ஆயுதம் ஏந்தியிருக்கிறது GitLab, இது என்ன வகையான மிருகம், அதன் பயன்பாடு நடைமுறையில் எப்படி இருக்கும் என்பதைக் கண்டுபிடிக்க முயற்சித்தேன்.

மூலம், கால புதுமை பற்றி GitOps எங்கள் சமீபத்திய கணக்கெடுப்பு மேலும் கூறுகிறது: கணக்கெடுக்கப்பட்டவர்களில் பாதிக்கும் மேற்பட்டவர்கள் இன்னும் அதன் கொள்கைகளுடன் செயல்படத் தொடங்கவில்லை.

எனவே, உள்கட்டமைப்பு மேலாண்மை பிரச்சனை புதிதல்ல. பல கிளவுட் வழங்குநர்கள் ஒரு நல்ல டஜன் ஆண்டுகளாக பொது மக்களுக்குக் கிடைத்துள்ளனர், மேலும் உள்கட்டமைப்பிற்கு பொறுப்பான குழுக்களின் வேலையை எளிமையாகவும் நேராகவும் செய்திருக்க வேண்டும் என்று தோன்றுகிறது. இருப்பினும், பயன்பாட்டு மேம்பாடு செயல்முறையுடன் ஒப்பிடும் போது (தானியங்கி எப்போதும் புதிய நிலைகளை எட்டுகிறது), உள்கட்டமைப்பு திட்டங்கள் இன்னும் பல கைமுறை பணிகளை உள்ளடக்கியது மற்றும் சிறப்பு அறிவு மற்றும் நிபுணத்துவம் தேவைப்படுகிறது, குறிப்பாக தவறு சகிப்புத்தன்மை, நெகிழ்வுத்தன்மை, அளவிடுதல் மற்றும் நெகிழ்ச்சி ஆகியவற்றிற்கான இன்றைய தேவைகள்.

கிளவுட் சேவைகள் இந்த தேவைகளை மிகவும் வெற்றிகரமாக பூர்த்தி செய்தன, மேலும் அணுகுமுறையின் வளர்ச்சிக்கு அவர்கள் ஒரு குறிப்பிடத்தக்க உத்வேகத்தை அளித்தனர் ஐ.ஏ.சி.. இது புரிந்துகொள்ளத்தக்கது. எல்லாவற்றிற்கும் மேலாக, அவர்கள் முற்றிலும் மெய்நிகர் தரவு மையத்தை உள்ளமைக்க முடிந்தது: இயற்பியல் சேவையகங்கள், ரேக்குகள் அல்லது பிணைய கூறுகள் எதுவும் இல்லை; முழு உள்கட்டமைப்பையும் ஸ்கிரிப்டுகள் மற்றும் உள்ளமைவு கோப்புகளைப் பயன்படுத்தி விவரிக்க முடியும்.

எனவே வித்தியாசம் என்ன? GitOps இருந்து ஐ.ஏ.சி.? இந்தக் கேள்வியோடுதான் நான் என் விசாரணையைத் தொடங்கினேன். சக ஊழியர்களுடன் பேசிய பிறகு, பின்வரும் ஒப்பீட்டைக் கொண்டு வர முடிந்தது:

GitOps

ஐ.ஏ.சி.

அனைத்து குறியீடுகளும் ஒரு git களஞ்சியத்தில் சேமிக்கப்படும்

குறியீடு பதிப்பு விருப்பமானது

பிரகடன குறியீடு விளக்கம் / ஐடிம்போடென்சி

அறிவிப்பு மற்றும் கட்டாய விளக்கங்கள் இரண்டும் ஏற்கத்தக்கவை

ஒன்றிணைப்பு கோரிக்கை / இழுத்தல் கோரிக்கை வழிமுறைகளைப் பயன்படுத்தி மாற்றங்கள் நடைமுறைக்கு வரும்

ஒப்பந்தம், ஒப்புதல் மற்றும் ஒத்துழைப்பு ஆகியவை விருப்பமானவை

புதுப்பிப்பு வெளியீடு செயல்முறை தானாகவே உள்ளது

புதுப்பிப்பு வெளியீடு செயல்முறை தரப்படுத்தப்படவில்லை (தானியங்கி, கையேடு, கோப்புகளை நகலெடுப்பது, கட்டளை வரியைப் பயன்படுத்துதல் போன்றவை)

வேறு வார்த்தைகளில் கூறுவதானால் GitOps கொள்கைகளின் பயன்பாடு மூலம் துல்லியமாக பிறந்தது ஐ.ஏ.சி.. முதலாவதாக, உள்கட்டமைப்பு மற்றும் கட்டமைப்புகள் இப்போது பயன்பாடுகளைப் போலவே சேமிக்கப்படும். குறியீடு சேமிக்க எளிதானது, பகிர்வது, ஒப்பிடுவது மற்றும் பதிப்புத் திறன்களைப் பயன்படுத்துவது எளிது. பதிப்புகள், கிளைகள், வரலாறு. இவை அனைத்தும் முழு குழுவிற்கும் பொதுவில் அணுகக்கூடிய இடத்தில். எனவே, பதிப்பு கட்டுப்பாட்டு அமைப்புகளின் பயன்பாடு முற்றிலும் இயற்கையான வளர்ச்சியாக மாறியது. குறிப்பாக, ஜிட், மிகவும் பிரபலமானது.

மறுபுறம், உள்கட்டமைப்பு மேலாண்மை செயல்முறைகளை தானியக்கமாக்குவது சாத்தியமானது. இப்போது இதை வேகமாகவும், நம்பகத்தன்மையுடனும், மலிவாகவும் செய்யலாம். மேலும், CI / CD இன் கொள்கைகள் ஏற்கனவே மென்பொருள் உருவாக்குநர்களிடையே அறியப்பட்டு பிரபலமாக உள்ளன. ஏற்கனவே அறியப்பட்ட அறிவு மற்றும் திறன்களை ஒரு புதிய பகுதிக்கு மாற்றவும் பயன்படுத்தவும் மட்டுமே அவசியம். எவ்வாறாயினும், இந்த நடைமுறைகள், உள்கட்டமைப்பின் நிலையான வரையறைக்கு அப்பாற்பட்டது, எனவே இது கருத்து GitOps.

GitOps: மற்றொரு buzzword அல்லது ஆட்டோமேஷனில் ஒரு திருப்புமுனை?

ஆர்வம் GitOps, நிச்சயமாக, இது எந்தவொரு விற்பனையாளருடனும் தொடர்புடைய ஒரு தயாரிப்பு, செருகுநிரல் அல்லது தளம் அல்ல. இது ஒரு முன்னுதாரணம் மற்றும் கொள்கைகளின் தொகுப்பாகும், இது நமக்குத் தெரிந்த மற்றொரு சொல்லைப் போன்றது: DevOps.

நிறுவனத்தில் GitLab இந்த புதிய வார்த்தையின் இரண்டு வரையறைகளை நாங்கள் உருவாக்கியுள்ளோம்: கோட்பாட்டு மற்றும் நடைமுறை. கோட்பாட்டுடன் ஆரம்பிக்கலாம்:

GitOps என்பது பதிப்புக் கட்டுப்பாடு, ஒத்துழைப்பு, ஆர்கெஸ்ட்ரேஷன், CI/CD போன்ற பயன்பாட்டு மேம்பாட்டிற்குப் பயன்படுத்தப்படும் சிறந்த DevOps கொள்கைகளை எடுத்து, உள்கட்டமைப்பு நிர்வாகத்தை தானியங்குபடுத்தும் சவால்களுக்கு அவற்றைப் பயன்படுத்தும் ஒரு வழிமுறையாகும்.

அனைத்து செயல்முறைகளும் GitOps நான் ஏற்கனவே உள்ள கருவிகளைப் பயன்படுத்தி வேலை செய்கிறேன். அனைத்து உள்கட்டமைப்பு குறியீடுகளும் ஏற்கனவே பழக்கமான ஜிட் களஞ்சியத்தில் சேமிக்கப்பட்டுள்ளன, மாற்றங்கள் வேறு எந்த நிரல் குறியீட்டைப் போலவே அதே ஒப்புதல் செயல்முறையிலும் செல்கின்றன, மேலும் ரோல்அவுட் செயல்முறை தானியங்கு ஆகும், இது மனித பிழைகளைக் குறைக்கவும், நம்பகத்தன்மை மற்றும் மறுஉற்பத்தித்திறனை அதிகரிக்கவும் அனுமதிக்கிறது.

நடைமுறைக் கண்ணோட்டத்தில், நாங்கள் விவரிக்கிறோம் GitOps பின்வருமாறு:

GitOps: மற்றொரு buzzword அல்லது ஆட்டோமேஷனில் ஒரு திருப்புமுனை?

இந்த சூத்திரத்தின் முக்கிய கூறுகளில் ஒன்றாக உள்கட்டமைப்பை குறியீடாக ஏற்கனவே விவாதித்துள்ளோம். மீதமுள்ள பங்கேற்பாளர்களை அறிமுகப்படுத்துவோம்.

ஒன்றிணைத்தல் கோரிக்கை (மாற்று பெயர் இழுத்தல் கோரிக்கை). செயல்முறை அடிப்படையில், MR என்பது குறியீடு மாற்றங்களைப் பயன்படுத்துவதற்கும் பின்னர் கிளைகளை ஒன்றிணைப்பதற்கும் ஒரு கோரிக்கையாகும். ஆனால் நாம் பயன்படுத்தும் கருவிகளின் அடிப்படையில், செய்யப்படும் அனைத்து மாற்றங்களின் முழுமையான படத்தைப் பெற இது ஒரு வாய்ப்பாகும்: குறிப்பிட்ட எண்ணிக்கையிலான கமிட்களில் இருந்து சேகரிக்கப்பட்ட குறியீடு வேறுபாடு மட்டுமல்ல, சூழல், சோதனை முடிவுகள் மற்றும் இறுதி எதிர்பார்க்கப்பட்ட முடிவு. நாங்கள் உள்கட்டமைப்பு குறியீட்டைப் பற்றி பேசுகிறோம் என்றால், உள்கட்டமைப்பு எவ்வாறு சரியாக மாறும், எத்தனை புதிய ஆதாரங்கள் சேர்க்கப்படும் அல்லது அகற்றப்படும், மாற்றப்படும் என்பதில் நாங்கள் ஆர்வமாக உள்ளோம். இன்னும் சில வசதியான மற்றும் படிக்க எளிதான வடிவத்தில் முன்னுரிமை. கிளவுட் வழங்குநர்களுக்கு, இந்த மாற்றத்தின் நிதி தாக்கம் என்ன என்பதை அறிந்து கொள்வது நல்லது.

ஆனால் எம்ஆர் என்பது ஒத்துழைப்பு, தொடர்பு மற்றும் தகவல் தொடர்புக்கான ஒரு வழிமுறையாகும். காசோலைகள் மற்றும் இருப்புகளின் அமைப்பு செயல்பாட்டுக்கு வரும் இடம். எளிய கருத்துகள் முதல் முறையான ஒப்புதல்கள் மற்றும் ஒப்புதல்கள் வரை.

சரி, கடைசி கூறு: CI/CD, நாம் ஏற்கனவே அறிந்தபடி, உள்கட்டமைப்பு மாற்றங்கள் மற்றும் சோதனை செயல்முறையை தானியங்குபடுத்துவதை சாத்தியமாக்குகிறது (எளிய தொடரியல் சரிபார்ப்பிலிருந்து மிகவும் சிக்கலான நிலையான குறியீடு பகுப்பாய்வு வரை). மேலும் சறுக்கல்லின் அடுத்தடுத்த கண்டறிதலில்: அமைப்பின் உண்மையான மற்றும் விரும்பிய நிலைக்கு இடையே உள்ள வேறுபாடுகள். எடுத்துக்காட்டாக, அங்கீகரிக்கப்படாத கைமுறை மாற்றங்கள் அல்லது கணினி தோல்வியின் விளைவாக.

ஆம், கால GitOps முற்றிலும் புதிய எதையும் எங்களுக்கு அறிமுகப்படுத்தவில்லை, சக்கரத்தை மீண்டும் கண்டுபிடிக்கவில்லை, ஆனால் ஒரு புதிய பகுதியில் ஏற்கனவே திரட்டப்பட்ட அனுபவத்தைப் பயன்படுத்துகிறது. ஆனால் அவரது பலம் இங்குதான் உள்ளது.

இது நடைமுறையில் எப்படி இருக்கிறது என்பதில் நீங்கள் திடீரென்று ஆர்வமாக இருந்தால், எங்களுடையதைப் பார்க்க நான் உங்களை அழைக்கிறேன் மாஸ்டர் வகுப்பு, இதில் GitLab ஐ எவ்வாறு பயன்படுத்துவது என்பதை படிப்படியாகச் சொல்கிறேன்:

  • GitOps இன் அடிப்படைக் கொள்கைகளை செயல்படுத்தவும்

  • கிளவுட் உள்கட்டமைப்பை உருவாக்கி மாற்றங்களைச் செய்யுங்கள் (யாண்டெக்ஸ் கிளவுட்டின் உதாரணத்தைப் பயன்படுத்தி)

  • செயலில் உள்ள கண்காணிப்பைப் பயன்படுத்தி விரும்பிய நிலையில் இருந்து கணினி சறுக்கலை தானியங்கு கண்டறிதல்

GitOps: மற்றொரு buzzword அல்லது ஆட்டோமேஷனில் ஒரு திருப்புமுனை?https://bit.ly/34tRpwZ

ஆதாரம்: www.habr.com

கருத்தைச் சேர்