Pinterest இல் kubernetes இயங்குதளத்தை உருவாக்குதல்

பல ஆண்டுகளாக, Pinterest இன் 300 மில்லியன் பயனர்கள் 200 பில்லியனுக்கும் அதிகமான பலகைகளில் 4 பில்லியனுக்கும் அதிகமான பின்களை உருவாக்கியுள்ளனர். பயனர்கள் மற்றும் பரந்த உள்ளடக்கத் தளத்திற்கு சேவை செய்ய, போர்டல் ஆயிரக்கணக்கான சேவைகளை உருவாக்கியுள்ளது, இது ஒரு சில CPUகளால் கையாளக்கூடிய மைக்ரோ சர்வீஸ்கள், முழு மெய்நிகர் இயந்திரங்களில் இயங்கும் மாபெரும் மோனோலித்கள் வரை. பின்னர் நிறுவனத்தின் கண்கள் k8s மீது விழுந்த தருணம் வந்தது. Pinterest இல் "க்யூப்" ஏன் நன்றாக இருந்தது? சமீபத்திய கட்டுரையின் எங்கள் மொழிபெயர்ப்பிலிருந்து இதைப் பற்றி நீங்கள் அறிந்து கொள்வீர்கள் வலைப்பதிவு Pinterest பொறியியல்.

Pinterest இல் kubernetes இயங்குதளத்தை உருவாக்குதல்

எனவே, நூற்றுக்கணக்கான மில்லியன் பயனர்கள் மற்றும் நூற்றுக்கணக்கான பில்லியன் ஊசிகள். இந்த பயனர்கள் மற்றும் பரந்த உள்ளடக்கத் தளத்திற்கு சேவை செய்ய, சில CPUகளால் கையாளக்கூடிய மைக்ரோ சர்வீஸ்கள் முதல் முழு மெய்நிகர் இயந்திரங்களில் இயங்கும் மாபெரும் மோனோலித்கள் வரை ஆயிரக்கணக்கான சேவைகளை நாங்கள் உருவாக்கியுள்ளோம். கூடுதலாக, CPU, நினைவகம் அல்லது I/O அணுகல் தேவைப்படக்கூடிய பல்வேறு கட்டமைப்புகள் எங்களிடம் உள்ளன.

கருவிகளின் இந்த மிருகக்காட்சிசாலையை பராமரிப்பதில், மேம்பாட்டுக் குழு பல சவால்களை எதிர்கொள்கிறது:

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

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

Pinterest இல் kubernetes இயங்குதளத்தை உருவாக்குதல்

படம் 1: உள்கட்டமைப்பு முன்னுரிமைகள் (நம்பகத்தன்மை, டெவலப்பர் உற்பத்தித்திறன் மற்றும் செயல்திறன்).

Pinterest இல் உள்ள கிளவுட் மேனேஜ்மென்ட் பிளாட்ஃபார்ம் குழு 8 இல் K2017s ஐக் கண்டுபிடித்தது. 2017 ஆம் ஆண்டின் முதல் பாதியில், API மற்றும் எங்களின் அனைத்து இணைய சேவையகங்கள் உட்பட எங்களின் பெரும்பாலான உற்பத்தி திறன்களை ஆவணப்படுத்தியுள்ளோம். பின்னர், கொள்கலன் தீர்வுகளை ஒழுங்கமைத்தல், கிளஸ்டர்களை உருவாக்குதல் மற்றும் அவற்றுடன் பணிபுரிதல் போன்ற பல்வேறு அமைப்புகளின் முழுமையான மதிப்பீட்டை நாங்கள் மேற்கொண்டோம். 2017 இன் இறுதியில், குபெர்னெட்டஸைப் பயன்படுத்த முடிவு செய்தோம். இது மிகவும் நெகிழ்வானது மற்றும் டெவலப்பர் சமூகத்தில் பரவலாக ஆதரிக்கப்பட்டது.

இன்றுவரை, நாங்கள் எங்கள் சொந்த கிளஸ்டர் பூட் கருவிகளை கோப்ஸின் அடிப்படையில் உருவாக்கி, நெட்வொர்க்கிங், பாதுகாப்பு, அளவீடுகள், பதிவு செய்தல், அடையாள மேலாண்மை மற்றும் ட்ராஃபிக் போன்ற உள்கட்டமைப்பு கூறுகளை Kubernetes க்கு மாற்றியுள்ளோம். எங்கள் வளத்திற்கான பணிச்சுமை மாடலிங் முறையை நாங்கள் செயல்படுத்தினோம், அதன் சிக்கலானது டெவலப்பர்களிடமிருந்து மறைக்கப்பட்டுள்ளது. இப்போது நாங்கள் கிளஸ்டரின் நிலைத்தன்மையை உறுதி செய்வதிலும், அதை அளவிடுவதிலும், புதிய வாடிக்கையாளர்களை இணைப்பதிலும் கவனம் செலுத்துகிறோம்.

குபெர்னெட்ஸ்: தி பிண்டரெஸ்ட் வே

எங்கள் பொறியாளர்கள் விரும்பும் ஒரு தளமாக Pinterest அளவில் Kubernetes உடன் தொடங்குவது நிறைய சவால்களுடன் வந்தது.

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

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

ஒரே கிளஸ்டரில் வெவ்வேறு பதிப்புகளை பராமரிப்பதும் மிகவும் கடினமாக இருந்தது. ஒரே இயக்க நேர சூழலின் பல பதிப்புகளில், அவர்களின் அனைத்து பிரச்சனைகள், பிழைகள் மற்றும் புதுப்பிப்புகளுடன் நீங்கள் ஒரே நேரத்தில் வேலை செய்ய வேண்டுமானால், வாடிக்கையாளர் ஆதரவின் சிக்கலான தன்மையை கற்பனை செய்து பாருங்கள்.

Pinterest பயனர் பண்புகள் மற்றும் கட்டுப்படுத்திகள்

எங்கள் பொறியாளர்கள் குபெர்னெட்டஸைச் செயல்படுத்துவதை எளிதாக்குவதற்கும், எங்கள் உள்கட்டமைப்பை எளிதாக்குவதற்கும் விரைவுபடுத்துவதற்கும், நாங்கள் எங்கள் சொந்த தனிப்பயன் வள வரையறைகளை (CRDs) உருவாக்கியுள்ளோம்.

CRDகள் பின்வரும் செயல்பாடுகளை வழங்குகின்றன:

  1. வெவ்வேறு பூர்வீக குபெர்னெட்ஸ் வளங்களை ஒருங்கிணைத்து, அவை ஒரே பணிச்சுமையாக வேலை செய்கின்றன. எடுத்துக்காட்டாக, PinterestService ஆதாரமானது வரிசைப்படுத்தல், உள்நுழைவு சேவை மற்றும் உள்ளமைவு வரைபடம் ஆகியவற்றை உள்ளடக்கியது. டிஎன்எஸ் அமைப்பது குறித்து டெவலப்பர்கள் கவலைப்படாமல் இருக்க இது அனுமதிக்கிறது.
  2. தேவையான பயன்பாட்டு ஆதரவை செயல்படுத்தவும். பயனர் தங்கள் வணிக தர்க்கத்தின்படி கொள்கலன் விவரக்குறிப்பில் மட்டுமே கவனம் செலுத்த வேண்டும், அதே நேரத்தில் CRD கட்டுப்படுத்தி தேவையான அனைத்து init கொள்கலன்கள், சூழல் மாறிகள் மற்றும் பாட் விவரக்குறிப்புகளை செயல்படுத்துகிறது. இது டெவலப்பர்களுக்கு அடிப்படையில் வேறுபட்ட அளவிலான வசதியை வழங்குகிறது.
  3. CRD கட்டுப்படுத்திகள் பூர்வீக வளங்களின் வாழ்க்கைச் சுழற்சியை நிர்வகிக்கின்றன மற்றும் பிழைத்திருத்தம் கிடைப்பதை மேம்படுத்துகின்றன. இதில் விரும்பிய மற்றும் உண்மையான விவரக்குறிப்புகள், CRD நிலையை புதுப்பித்தல் மற்றும் நிகழ்வு பதிவுகளை பராமரித்தல் மற்றும் பலவற்றை உள்ளடக்குகிறது. CRD இல்லாமல், டெவலப்பர்கள் பல ஆதாரங்களை நிர்வகிக்க வேண்டிய கட்டாயத்தில் இருப்பார்கள், இது பிழையின் சாத்தியத்தை மட்டுமே அதிகரிக்கும்.

PinterestService மற்றும் எங்கள் கன்ட்ரோலரால் நிர்வகிக்கப்படும் உள் வளத்திற்கான எடுத்துக்காட்டு இங்கே:

Pinterest இல் kubernetes இயங்குதளத்தை உருவாக்குதல்

நீங்கள் மேலே பார்ப்பது போல், தனிப்பயன் கொள்கலனை ஆதரிக்க, பாதுகாப்பு, தெரிவுநிலை மற்றும் நெட்வொர்க் ட்ராஃபிக்கை வழங்க, ஒரு init கொள்கலன் மற்றும் பல துணை நிரல்களை ஒருங்கிணைக்க வேண்டும். கூடுதலாக, நாங்கள் கட்டமைப்பு வரைபட டெம்ப்ளேட்களை உருவாக்கி, தொகுதி வேலைகளுக்கான PVC டெம்ப்ளேட்டுகளுக்கான ஆதரவை செயல்படுத்தினோம், அத்துடன் அடையாளம், வள நுகர்வு மற்றும் குப்பை சேகரிப்பு ஆகியவற்றைக் கண்காணிக்க பல சூழல் மாறிகளைக் கண்காணித்தோம்.

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

பயன்பாட்டு வரிசைப்படுத்தல் பணிப்பாய்வு

Pinterest இல் kubernetes இயங்குதளத்தை உருவாக்குதல்

குபெர்னெட்ஸ் கிளஸ்டருக்கு Pinterest தனிப்பயன் ஆதாரத்தை எவ்வாறு பயன்படுத்துவது என்பதை மேலே உள்ள படம் காட்டுகிறது:

  1. டெவலப்பர்கள் CLI மற்றும் பயனர் இடைமுகம் மூலம் எங்கள் Kubernetes கிளஸ்டருடன் தொடர்பு கொள்கிறார்கள்.
  2. CLI/UI கருவிகள் ஆர்டிஃபாக்டரியில் இருந்து பணிப்பாய்வு உள்ளமைவு YAML கோப்புகள் மற்றும் பிற உருவாக்க பண்புகளை (அதே பதிப்பு ஐடி) மீட்டெடுக்கிறது, பின்னர் அவற்றை வேலை சமர்ப்பிப்பு சேவையில் சமர்ப்பிக்கிறது. உற்பத்தி பதிப்புகள் மட்டுமே கிளஸ்டருக்கு வழங்கப்படுவதை இந்தப் படி உறுதி செய்கிறது.
  3. ஜேஎஸ்எஸ் என்பது குபெர்னெட்ஸ் உட்பட பல்வேறு தளங்களுக்கான நுழைவாயில் ஆகும். இங்கே பயனர் அங்கீகரிக்கப்படுகிறார், ஒதுக்கீடுகள் வழங்கப்படுகின்றன மற்றும் எங்கள் CRD இன் உள்ளமைவு ஓரளவு சரிபார்க்கப்படுகிறது.
  4. JSS பக்கத்தில் உள்ள CRD ஐச் சரிபார்த்த பிறகு, தகவல் k8s இயங்குதள API க்கு அனுப்பப்படும்.
  5. எங்கள் CRD கட்டுப்படுத்தி அனைத்து பயனர் ஆதாரங்களிலும் நிகழ்வுகளை கண்காணிக்கிறது. இது CR களை சொந்த k8s ஆதாரங்களாக மாற்றுகிறது, தேவையான தொகுதிகளை சேர்க்கிறது, பொருத்தமான சூழல் மாறிகளை அமைக்கிறது மற்றும் கொள்கலன் செய்யப்பட்ட பயனர் பயன்பாடுகள் போதுமான உள்கட்டமைப்பு ஆதரவைக் கொண்டிருப்பதை உறுதிப்படுத்த மற்ற ஆதரவு வேலைகளைச் செய்கிறது.
  6. CRD கன்ட்ரோலர் பெறப்பட்ட தரவை Kubernetes API க்கு அனுப்புகிறது, இதனால் அது திட்டமிடுபவர் மூலம் செயலாக்கப்பட்டு உற்பத்தியில் வைக்கப்படும்.

கருத்து: புதிய k8s இயங்குதளத்தின் முதல் பயனர்களுக்காக வரிசைப்படுத்தலின் இந்த முன்-வெளியீட்டு வேலை ஓட்டம் உருவாக்கப்பட்டது. எங்களின் புதிய CI/CD உடன் முழுமையாக ஒருங்கிணைக்க இந்த செயல்முறையை நாங்கள் தற்போது மேம்படுத்தி வருகிறோம். குபர்னெட்டஸுடன் தொடர்புடைய அனைத்தையும் நாங்கள் உங்களுக்குச் சொல்ல முடியாது என்பதே இதன் பொருள். எங்கள் அடுத்த வலைப்பதிவு இடுகையான “Pinterest க்காக ஒரு CI/CD தளத்தை உருவாக்குதல்” இல் எங்கள் அனுபவத்தையும் குழுவின் முன்னேற்றத்தையும் பகிர்ந்து கொள்ள ஆவலுடன் காத்திருக்கிறோம்.

சிறப்பு வளங்களின் வகைகள்

Pinterest இன் குறிப்பிட்ட தேவைகளின் அடிப்படையில், வெவ்வேறு பணிப்பாய்வுகளுக்கு ஏற்றவாறு பின்வரும் CRDகளை உருவாக்கியுள்ளோம்:

  • PinterestService என்பது நீண்ட காலமாக இயங்கி வரும் நிலையற்ற சேவைகள் ஆகும். எங்கள் முக்கிய அமைப்புகள் பல அத்தகைய சேவைகளின் தொகுப்பை அடிப்படையாகக் கொண்டவை.
  • PinterestJobSet மாதிரிகள் முழு சுழற்சி தொகுதி வேலைகள். Pinterest இல் உள்ள பொதுவான காட்சி என்னவென்றால், பல வேலைகள் ஒரே மாதிரியான செயல்முறைகளைப் பொருட்படுத்தாமல் ஒரே கொள்கலன்களை இணையாக இயக்குகின்றன.
  • PinterestCronJob சிறிய கால சுமைகளுடன் இணைந்து பரவலாகப் பயன்படுத்தப்படுகிறது. பாதுகாப்பு, ட்ராஃபிக், பதிவுகள் மற்றும் அளவீடுகளுக்குப் பொறுப்பான Pinterest ஆதரவு வழிமுறைகளுடன் நேட்டிவ் கிரான் வேலைக்கான ரேப்பர் இது.
  • PinterestDaemon உள்கட்டமைப்பு டெமான்களை உள்ளடக்கியது. எங்கள் குழுக்களுக்கு கூடுதல் ஆதரவைச் சேர்ப்பதால் இந்தக் குடும்பம் தொடர்ந்து வளர்ந்து வருகிறது.
  • PinterestTrainingJob Tensorflow மற்றும் Pytorch செயல்முறைகள் வரை நீட்டிக்கப்படுகிறது, மற்ற அனைத்து CRDகள் போன்ற இயக்க நேர ஆதரவை வழங்குகிறது. Pinterest Tensorflow மற்றும் பிற இயந்திர கற்றல் அமைப்புகளை தீவிரமாகப் பயன்படுத்துவதால், அவற்றைச் சுற்றி ஒரு தனி CRD ஐ உருவாக்க எங்களுக்கு ஒரு காரணம் இருந்தது.

நாங்கள் PinterestStatefulSet இல் பணிபுரிகிறோம், இது விரைவில் தரவுக் கிடங்குகள் மற்றும் பிற மாநில அமைப்புகளுக்கு மாற்றியமைக்கப்படும்.

இயக்க நேர ஆதரவு

குபெர்னெட்டஸில் ஒரு அப்ளிகேஷன் பாட் இயங்கும் போது, ​​அது தானாகவே அடையாளம் காண சான்றிதழைப் பெறுகிறது. இந்தச் சான்றிதழ் இரகசிய சேமிப்பகத்தை அணுக அல்லது mTLS மூலம் பிற சேவைகளுடன் தொடர்புகொள்ள பயன்படுகிறது. இதற்கிடையில், கன்டெய்னர் இன்னிட் கன்ஃபிகரேட்டர் மற்றும் டீமான், கொள்கலன் செய்யப்பட்ட பயன்பாட்டை இயக்கும் முன் தேவையான அனைத்து சார்புகளையும் பதிவிறக்கும். எல்லாம் தயாரானதும், ட்ராஃபிக் சைட்கார் மற்றும் டீமான் மாட்யூலின் ஐபி முகவரியை எங்கள் ஜூகீப்பரிடம் பதிவு செய்யும், இதன் மூலம் வாடிக்கையாளர்கள் அதைக் கண்டறிய முடியும். பயன்பாடு தொடங்கப்படுவதற்கு முன்பு பிணைய தொகுதி கட்டமைக்கப்பட்டதால் இவை அனைத்தும் செயல்படும்.

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

சோதனை மற்றும் QA

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

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

மாற்று

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

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

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

வரவிருக்கும் வேலை

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

  • க்ளஸ்டர்களின் தொகுப்பு, அளவிடுதல் மற்றும் நிலைத்தன்மைக்காக பல்வேறு கிளஸ்டர்களில் பெரிய பயன்பாடுகளை விநியோகிக்கிறது.
  • பயன்பாட்டு இணைப்பு மற்றும் SLAகளை உருவாக்க கிளஸ்டர் நிலைத்தன்மை, அளவிடுதல் மற்றும் தெரிவுநிலை ஆகியவற்றை உறுதி செய்தல்.
  • வளங்கள் மற்றும் ஒதுக்கீடுகளை நிர்வகித்தல், இதனால் பயன்பாடுகள் ஒன்றுக்கொன்று முரண்படாது, மேலும் கிளஸ்டரின் அளவு எங்கள் பங்கில் கட்டுப்படுத்தப்படுகிறது.
  • Kubernetes இல் பயன்பாடுகளை ஆதரிப்பதற்கும் பயன்படுத்துவதற்கும் ஒரு புதிய CI/CD இயங்குதளம்.

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

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