நுழைவுக் கட்டுப்பாட்டாளர் என்றால் என்ன?
உட்செலுத்துதல் கட்டுப்படுத்தி என்பது பயனர்கள் தங்கள் குபெர்னெட்ஸ் கிளஸ்டரில் உள்ள சேவைகளின் அணுகலை நிர்வகிக்கவும் கட்டுப்படுத்தவும் அனுமதிக்கும் ஒரு அங்கமாகும். நுழைவுக் கட்டுப்படுத்தி இரண்டு முக்கிய கூறுகளைக் கொண்டுள்ளது:
- உள்வரும் வளம் - இது ஒரு குபெர்னெட்டஸ் ஏபிஐ பொருளாகும், இது குறிப்பிட்ட ஹோஸ்ட்பெயர் மற்றும் பாதைகளின் அடிப்படையில் கிளஸ்டரில் உள்ள சேவைகளின் போக்குவரத்தை ரூட்டிங் செய்வதற்கான விதிகளை வரையறுக்கிறது.
- நுழைவுக் கட்டுப்பாட்டாளர் - இது HAProxy, Traefik அல்லது NGINX போன்ற மென்பொருள் கூறு ஆகும், இது உட்புகுந்த ஆதாரத்தில் குறிப்பிடப்பட்டுள்ள விதிகளை செயல்படுத்துகிறது. உட்செலுத்தும் பொருட்களில் செய்யப்பட்ட மாற்றங்களின் அடிப்படையில் போக்குவரத்தைக் கையாள இது சுமை சமநிலையை உள்ளமைக்கிறது.
குபெர்னெட்டஸ் சூழலில் HAProxy ஐ இன்க்ரஸ் கன்ட்ரோலராக எவ்வாறு பயன்படுத்துவது
உட்செலுத்துதல் கட்டுப்படுத்தி என்றால் என்ன, உங்களுக்கு அது ஏன் தேவை என்பதைப் புரிந்துகொண்ட பிறகு, அதைப் பயன்படுத்துவதற்கான படிகளை மறைப்பதே அடுத்த பணி. எங்கள் விஷயத்தில், வழங்கப்பட்ட படிகளைப் பின்பற்றி HAProxy ஐ எங்கள் நுழைவுக் கட்டுப்படுத்தியாக அமைத்துள்ளோம்.
N/B: உங்கள் குபெர்னெட்ஸ் கிளஸ்டர் இயங்குவதை உறுதிசெய்யவும். பின்னர், பின்வருமாறு தொடரவும்.
படி 1: உங்கள் குபெர்னெட்ஸ் கிளஸ்டரைத் தொடங்கவும்
குபெர்னெட்ஸ் கிளஸ்டரை அமைப்பதற்கும் தொடங்குவதற்கும் வெவ்வேறு வழிகள் உள்ளன. இந்த வழிகாட்டிக்கு, நாங்கள் Minikube ஐப் பயன்படுத்துகிறோம். இது ஒரு விர்ச்சுவல் மெஷின் அல்லது டோக்கருக்குள் குபெர்னெட்ஸைப் பயன்படுத்துவதற்கான எளிய வழியை வழங்கும் ஒரு கருவியாகும், குறிப்பாக உங்கள் கணினியில் உங்கள் குபெர்னெட்கள் இருந்தால்.
பார்க்கவும் மினிகுப் ஆவணங்கள் உங்கள் இயங்குதளத்திற்கு பயன்படுத்த நிறுவல் கட்டளைகளில். இந்த வழக்கில், நாங்கள் ஒரு நிலையான 'x64' லினக்ஸ் கட்டமைப்பை இயக்குகிறோம் மற்றும் பின்வரும் கட்டளைகளை இயக்குகிறோம்:
$ சுருட்டை -ஐ.டி https: // store.googleapis.com / minikube / வெளியிடுகிறது / சமீபத்திய / minikube-linux-amd64
$ சூடோ நிறுவு minikube-linux-amd64 / usr / உள்ளூர் / தொட்டி / minikube
முதல் கட்டளை சமீபத்திய நிலையான மினிகுப் பைனரியைப் பிடிக்கிறது, இரண்டாவது கட்டளை பைனரியை நிறுவி குறிப்பிட்ட பாதையில் நகர்த்துகிறது.
நீங்கள் Minikube ஐ நிறுவியதும், கிளஸ்டரைக் கொண்டு வர அதைத் தொடங்கவும்.
$ minikube தொடக்கம்
கிளஸ்டரை அணுக நீங்கள் kubectl ஐ நிறுவியிருக்க வேண்டும். இருப்பினும், Minikube உடன் கிடைக்கும் kubectl பதிப்பைப் பயன்படுத்தலாம். உதாரணமாக, இயங்கும் காய்களின் விவரங்களைச் சரிபார்க்க, நீங்கள் 'kubectl' கட்டளையை பின்வருமாறு இயக்கவும்:
$ minikube kubectl -- காய்கள் கிடைக்கும் -ஏஅந்த வகையில், நீங்கள் kubectl ஐ நிறுவ வேண்டியதில்லை. (–) கட்டளைகள் க்யூபெக்ட்லுக்கானவை, மினிகுப் அல்ல என்பதற்கான சமிக்ஞைகள்.
படி 2: பெயர்வெளியை உருவாக்கவும்
இரண்டாவது படி, நுழைவுக் கட்டுப்படுத்திக்கான பிரத்யேக பெயர்வெளியை உருவாக்குவதை உள்ளடக்கியது. பெயர்வெளிக்கு 'ஹாப்ராக்ஸி-கண்ட்ரோலர்' என்று பெயரிட்டோம்.
படி 3: HAProxy Ingress Controller ஐ உருவாக்கி வரிசைப்படுத்தவும்
நுழைவுக் கட்டுப்படுத்தியை எவ்வாறு உருவாக்குவது என்பது நீங்கள் எதை அடைய விரும்புகிறீர்கள் என்பதைப் பொறுத்தது. உதாரணமாக, கோரப்பட்ட புரவலன் பெயரைப் பொறுத்து HTTP ட்ராஃபிக்கை வழிநடத்த, நீங்கள் HAProxy நுழைவுக் கட்டுப்படுத்தியை உருவாக்கலாம். அத்தகைய சந்தர்ப்பத்தில், உங்கள் DNS சேவையகத்தை அணுகி, இலக்கு ஹோஸ்ட்பெயரை உங்கள் கிளஸ்டருக்கு வரைபடமாக்க 'A' பதிவை உருவாக்குவதன் மூலம் தொடங்கவும்.
உங்களின் சரியான “A” பதிவை நீங்கள் பெற்றவுடன், பின்வரும் படத்தில் காட்டப்பட்டுள்ளபடி உங்கள் நுழைவுக் கட்டுப்படுத்தி YAML கோப்பை உருவாக்கவும். முதல் பிரிவில், 'jmalloc/echo-server' டோக்கர் கொள்கலன் படத்தை எங்களின் உதாரணமாகப் பயன்படுத்தும் ஒரு வரிசைப்படுத்தல் ஆதாரத்தை நாங்கள் உருவாக்கியுள்ளோம்.
YAML கோப்பின் இரண்டாவது பிரிவில், படி 4 இல் உருவாக்கப்பட்ட நுழைவுக் கட்டுப்படுத்தியில் கோரப்பட்ட ஹோஸ்ட்பெயரின் அடிப்படையில் மேப் செய்யப்படும் சேவை ஆதாரத்தை நாங்கள் உருவாக்கியுள்ளோம்.
கோப்பைச் சேமித்து, kubectl ஐப் பயன்படுத்தி உங்கள் கிளஸ்டரில் வரிசைப்படுத்தவும். எங்கள் வழக்கில் பின்வரும் கட்டளையை இயக்குவதன் மூலம் Minikube kubectl ஐக் குறிப்பிடுகிறோம். எங்களின் HAProxy இன்க்ரெஸ் கன்ட்ரோலர் 'linuxhint-jmaildeployment.yaml' ஆகும்.
$ minikube kubectl -- விண்ணப்பிக்க -எஃப் < கோப்பு_பெயர் >
சேவை உருவாக்கப்பட்டது என்பதைக் காட்டும் வெளியீட்டைப் பெற்றவுடன், பின்வரும் கட்டளையைப் பயன்படுத்தி அது பயன்படுத்தப்பட்டுள்ளதா என்பதை நீங்கள் மேலும் சரிபார்க்கலாம்:
$ minikube kubectl -- காய்கள் கிடைக்கும் --பெயர்வெளி ஹாப்ராக்ஸி-கண்ட்ரோலர்
படி 1 இல் நீங்கள் உருவாக்கிய சரியான பெயர்வெளியைப் பயன்படுத்துவதை உறுதிசெய்யவும். சேவை உள்ளது என்பதை உறுதிப்படுத்தும் வெளியீட்டைப் பெறுவீர்கள், அதாவது வரிசைப்படுத்தல் வெற்றிகரமாக இருந்தது.
படி 4: ஒரு நுழைவு வளத்தை உருவாக்கி வரிசைப்படுத்தவும்
HAProxy உங்கள் போக்குவரத்தை எவ்வாறு வழிநடத்த வேண்டும் என்பதற்கான விதிகளைக் கொண்ட நுழைவு ஆதாரமாகச் செயல்படும் மற்றொரு YAML கோப்பை உருவாக்கவும். நீங்கள் இலக்காகக் கொண்ட சரியான டொமைன் பெயரை (ஹோஸ்ட்) பயன்படுத்துவதை உறுதிசெய்து, உள்வரும் போக்குவரத்தை ஏற்க, பெயரிடல் மற்றும் விரும்பிய போர்ட்டை சரிசெய்யவும்.
HAProxy நுழைவு ஆதாரக் கோப்பைச் சேமித்து, நாங்கள் கட்டுப்படுத்தியைப் போலவே வரிசைப்படுத்தவும்.
$ minikube kubectl -- விண்ணப்பிக்க -எஃப் < கோப்பு_பெயர் >எங்கள் உள்வரும் வளத்தை 'linuxhint-ingresscontroller.yaml' என்று பெயரிடுகிறோம்.
அவ்வளவுதான்! பின்வரும் கட்டளையுடன், NodePort க்கு ஒதுக்கப்பட்டுள்ள போர்ட்டைச் சரிபார்ப்பதன் மூலம் உங்கள் HAProxy நுழைவுக் கட்டுப்படுத்தி செயல்படுகிறதா என்பதை நீங்கள் சரிபார்க்கலாம்.
$ minikube kubectl -- ஹாப்ராக்ஸி-குபர்னெட்ஸ்-இன்க்ரஸ் சேவையைப் பெறுங்கள் --பெயர்வெளி ஹாப்ராக்ஸி-கண்ட்ரோலர்இந்த வழக்கில், இது போர்ட் 32448 உடன் ஒதுக்கப்பட்டுள்ளது. போர்ட்டைப் பயன்படுத்தி உருவாக்கப்பட்ட சேவையை அணுகலாம் மற்றும் அதன் நிலையைச் சரிபார்க்கலாம்.
அதன் மூலம், குபெர்னெட்டஸ் சூழலில் HAProxy ஐ இன்க்ரஸ் கன்ட்ரோலராகப் பயன்படுத்த முடிந்தது.
முடிவுரை
உங்கள் நுழைவு ஆதாரக் கோப்பில் வரையறுக்கப்பட்டுள்ள விதிகளின் அடிப்படையில், உங்கள் கிளஸ்டருக்கான போக்குவரத்தை எவ்வாறு கையாள்வது என்பதை ஒரு நுழைவுக் கட்டுப்படுத்தி உங்களை அனுமதிக்கிறது. HAProxy என்பது நம்பகமான உட்செலுத்துதல் கட்டுப்படுத்தியாகும், அதை நீங்கள் ஒரு குபெர்னெட்டஸ் கிளஸ்டரில் பயன்படுத்தலாம், இதைப் பயன்படுத்த நீங்கள் என்ன படிகளைப் பின்பற்ற வேண்டும் என்பதை இந்த இடுகை விவரிக்கிறது. இதை முயற்சி செய்து, உங்கள் நுழைவுக் கட்டுப்படுத்தியாக HAProxy ஐப் பயன்படுத்தி மகிழுங்கள்.