ఇన్గ్రెస్ కంట్రోలర్ అంటే ఏమిటి?
ఇన్గ్రెస్ కంట్రోలర్ అనేది వినియోగదారులు తమ కుబెర్నెట్స్ క్లస్టర్లోని సేవల యాక్సెస్ను నిర్వహించడానికి మరియు నియంత్రించడానికి అనుమతించే ఒక భాగం. ప్రవేశ నియంత్రికలో రెండు కీలక అంశాలు ఉన్నాయి:
- ప్రవేశ వనరు – ఇది ఒక Kubernetes API ఆబ్జెక్ట్, ఇది పేర్కొన్న హోస్ట్ పేరు మరియు మార్గాల ఆధారంగా క్లస్టర్లోని సేవల ట్రాఫిక్ను రూటింగ్ చేయడానికి నియమాలను నిర్వచిస్తుంది.
- ప్రవేశ నియంత్రిక – ఇది ప్రవేశ వనరులో పేర్కొన్న నియమాలను అమలు చేసే HAProxy, Traefik లేదా NGINX వంటి సాఫ్ట్వేర్ భాగం. ఇది ప్రవేశ వస్తువులకు చేసిన మార్పుల ఆధారంగా ట్రాఫిక్ను నిర్వహించడానికి లోడ్ బ్యాలెన్సర్ను కాన్ఫిగర్ చేస్తుంది.
కుబెర్నెటెస్ ఎన్విరాన్మెంట్లో HAProxyని ఇన్గ్రెస్ కంట్రోలర్గా ఎలా ఉపయోగించాలి
ఇన్గ్రెస్ కంట్రోలర్ అంటే ఏమిటి మరియు మీకు ఇది ఎందుకు అవసరమో అర్థం చేసుకున్న తర్వాత, దానిని ఉపయోగించాల్సిన దశలను కవర్ చేయడం తదుపరి పని. మా విషయంలో, అందించిన దశలను అనుసరించి మేము HAProxyని మా ప్రవేశ నియంత్రికగా సెటప్ చేస్తాము.
N/B: మీరు మీ కుబెర్నెట్స్ క్లస్టర్ అప్ మరియు రన్నింగ్ను కలిగి ఉన్నారని నిర్ధారించుకోండి. అప్పుడు, ఈ క్రింది విధంగా కొనసాగండి.
దశ 1: మీ కుబెర్నెట్స్ క్లస్టర్ను ప్రారంభించండి
కుబెర్నెటెస్ క్లస్టర్ను సెటప్ చేయడానికి మరియు ప్రారంభించడానికి వివిధ మార్గాలు ఉన్నాయి. ఈ గైడ్ కోసం, మేము Minikubeని ఉపయోగిస్తాము. ఇది వర్చువల్ మెషీన్ లేదా డాకర్లో కుబెర్నెట్లను అమలు చేయడానికి సరళమైన మార్గాన్ని అందించే సాధనం, ప్రత్యేకించి మీరు మీ మెషీన్లో స్థానికంగా మీ కుబెర్నెట్లను కలిగి ఉంటే.
చూడండి Minikube డాక్యుమెంటేషన్ మీ ప్లాట్ఫారమ్ కోసం ఉపయోగించడానికి ఇన్స్టాలేషన్ ఆదేశాలపై. ఈ సందర్భంలో, మేము స్థిరమైన “x64” Linux ఆర్కిటెక్చర్ని అమలు చేస్తాము మరియు కింది ఆదేశాలను అమలు చేస్తాము:
$ కర్ల్ -ఐ.టి https: // store.googleapis.com / మినీక్యూబ్ / విడుదల చేస్తుంది / తాజా / minikube-linux-amd64
$ సుడో ఇన్స్టాల్ minikube-linux-amd64 / usr / స్థానిక / డబ్బా / మినీక్యూబ్
మొదటి కమాండ్ తాజా స్థిరమైన Minikube బైనరీని పట్టుకుంటుంది, రెండవ కమాండ్ బైనరీని ఇన్స్టాల్ చేస్తుంది మరియు పేర్కొన్న మార్గంలోకి తరలిస్తుంది.
మీరు Minikubeని ఇన్స్టాల్ చేసిన తర్వాత, క్లస్టర్ను తీసుకురావడానికి దాన్ని ప్రారంభించండి.
$ minikube ప్రారంభం
క్లస్టర్ని యాక్సెస్ చేయడానికి మీరు తప్పనిసరిగా kubectlని ఇన్స్టాల్ చేసి ఉండాలి. అయితే, మీరు Minikubeతో అందుబాటులో ఉన్న kubectl సంస్కరణను ఉపయోగించవచ్చు. ఉదాహరణకు, నడుస్తున్న పాడ్ల వివరాలను తనిఖీ చేయడానికి, మీరు “kubectl” ఆదేశాన్ని ఈ క్రింది విధంగా అమలు చేయండి:
$ minikube kubectl -- పాడ్లు పొందండి -ఎఆ విధంగా, మీరు kubectlని ఇన్స్టాల్ చేయాల్సిన అవసరం లేదు. కమాండ్లు మినీక్యూబ్ కోసం కాకుండా kubectl కోసం అని (–) సంకేతాలు.
దశ 2: నేమ్స్పేస్ని సృష్టించండి
రెండవ దశలో ప్రవేశ నియంత్రిక కోసం ప్రత్యేక నేమ్స్పేస్ని సృష్టించడం ఉంటుంది. మేము నేమ్స్పేస్కి 'హాప్రాక్సీ-కంట్రోలర్' అని పేరు పెట్టాము.
దశ 3: HAProxy ప్రవేశ కంట్రోలర్ను సృష్టించండి మరియు అమలు చేయండి
మీరు ఇన్గ్రెస్ కంట్రోలర్ను ఎలా సృష్టించాలనుకుంటున్నారు అనే దానిపై ఆధారపడి ఉంటుంది. ఉదాహరణకు, మీరు అభ్యర్థించిన హోస్ట్ పేరుపై ఆధారపడి 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 -- సేవను పొందండి haproxy-kubernetes-ingress --నేమ్స్పేస్ హాప్రాక్సీ-కంట్రోలర్ఈ సందర్భంలో, ఇది పోర్ట్ 32448తో కేటాయించబడింది. మీరు పోర్ట్ని ఉపయోగించి సృష్టించిన సేవను యాక్సెస్ చేయవచ్చు మరియు దాని స్థితిని తనిఖీ చేయవచ్చు.
దానితో, మీరు Kubernetes వాతావరణంలో HAProxyని ఇన్గ్రెస్ కంట్రోలర్గా ఉపయోగించగలిగారు.
ముగింపు
మీ ఇన్గ్రెస్ రిసోర్స్ ఫైల్లో నిర్వచించబడిన నియమాల ఆధారంగా మీ క్లస్టర్కి ట్రాఫిక్ను ఎలా నిర్వహించాలో నిర్వచించడానికి ఇన్గ్రెస్ కంట్రోలర్ మిమ్మల్ని అనుమతిస్తుంది. HAProxy అనేది మీరు Kubernetes క్లస్టర్లో ఉపయోగించగల నమ్మకమైన ఇన్గ్రెస్ కంట్రోలర్, మరియు దీన్ని ఉపయోగించడానికి మీరు ఏ దశలను అనుసరించాలో ఈ పోస్ట్ వివరించింది. దీన్ని ప్రయత్నించండి మరియు మీ ఇన్గ్రెస్ కంట్రోలర్గా HAProxyని ఉపయోగించడం ఆనందించండి.