CentOS 8లో Nginx కోసం HAProxyని లోడ్ బ్యాలెన్సర్‌గా ఎలా సెటప్ చేయాలి

Centos 8lo Nginx Kosam Haproxyni Lod Byalensar Ga Ela Setap Ceyali



అధిక లభ్యత ప్రాక్సీ, HAProxy అని కూడా సంక్షిప్తీకరించబడింది, ఇది తేలికైన మరియు వేగవంతమైన లోడ్ బ్యాలెన్సర్, ఇది ప్రాక్సీ సర్వర్‌గా కూడా రెట్టింపు అవుతుంది. లోడ్ బ్యాలెన్సర్‌గా, నిర్దిష్ట ప్రమాణాలను ఉపయోగించి బహుళ వెబ్ సర్వర్‌లలో ఇన్‌కమింగ్ వెబ్ ట్రాఫిక్‌ను పంపిణీ చేయడంలో ఇది కీలక పాత్ర పోషిస్తుంది. అలా చేయడం వలన, ఒకే వెబ్ సర్వర్‌ను ఓవర్‌లోడ్ చేసే అనేక ఏకకాల అభ్యర్థనలు ఉన్న సందర్భంలో అధిక లభ్యత మరియు తప్పు సహనాన్ని ఇది నిర్ధారిస్తుంది.

HaProxyని Tumblr, GitHub మరియు StackOverflow వంటి ప్రముఖ సైట్‌లు ఉపయోగిస్తాయి. ఈ గైడ్‌లో, Nginxని ఉపయోగించి ఆధారితమైన వెబ్‌సర్వర్‌ల సెటప్‌లో HAProxy యొక్క ఇన్‌స్టాలేషన్ ద్వారా మేము మిమ్మల్ని తీసుకెళ్తాము.

ల్యాబ్ సెటప్

చూపిన విధంగా CentOS 7 సర్వర్‌ల 3 ఉదాహరణలు







హోస్ట్ పేరు           IP చిరునామాలు

load_balancer       3.17.12.132
సర్వర్_01          3.19.229.234
సర్వర్_02           3.17.9.217

దశ 1: లోడ్ బ్యాలెన్సర్ కోసం /etc/hosts ఫైల్‌ని సవరించండి

ప్రారంభించడానికి, లోడ్ బ్యాలెన్సర్ సిస్టమ్‌లోకి లాగిన్ అవ్వండి మరియు చూపిన విధంగా రెండు వెబ్ సర్వర్‌ల హోస్ట్ పేర్లు మరియు IP చిరునామాలను చేర్చడానికి /etc/hosts ఫైల్‌ను సవరించండి.



$ ఎందుకంటే / మొదలైనవి / అతిధేయలు
3.19.229.234   సర్వర్_01
3.17.9.217     సర్వర్-02



పూర్తయిన తర్వాత, మార్పులను సేవ్ చేసి, కాన్ఫిగరేషన్ ఫైల్ నుండి నిష్క్రమించండి.





ఇప్పుడు ప్రతి వెబ్ సర్వర్‌కు వెళ్లి, నవీకరించండి /etc/hosts లోడ్ బ్యాలెన్సర్ యొక్క IP చిరునామా మరియు హోస్ట్ పేరుతో ఫైల్

3.17.12.132   లోడ్-బ్యాలన్సర్

ఆ తర్వాత, మీరు సర్వర్_01 నుండి లోడ్ బ్యాలెన్సర్‌ను పింగ్ చేయగలరని నిర్ధారించండి



అలాగే సర్వర్_02 నుండి

అలాగే, మీరు లోడ్ బ్యాలెన్సర్ నుండి సర్వర్‌లను పింగ్ చేయగలరని నిర్ధారించుకోండి.

పర్ఫెక్ట్! అన్ని సర్వర్లు లోడ్ బ్యాలెన్సర్‌తో కమ్యూనికేట్ చేయగలవు!

దశ 2: లోడ్ బ్యాలెన్సర్‌లో HA ప్రాక్సీని ఇన్‌స్టాల్ చేయండి మరియు కాన్ఫిగర్ చేయండి

HA ప్రాక్సీ CentOS అధికారిక రిపోజిటరీ నుండి తక్షణమే అందుబాటులో ఉన్నందున, మేము దానిని yum లేదా dnf ప్యాకేజీ మేనేజర్‌ని ఉపయోగించి ఇన్‌స్టాల్ చేయబోతున్నాము.

కానీ ఎప్పటిలాగే, మొదట సిస్టమ్‌ను నవీకరించండి

# yum నవీకరణ

తరువాత, చూపిన విధంగా HA ప్రాక్సీని ఇన్‌స్టాల్ చేయండి

# yum ఇన్‌స్టాల్ చేయండి హాప్రాక్సీ

విజయవంతమైన ఇన్‌స్టాలేషన్ తర్వాత,  హాప్రాక్సీ డైరెక్టరీకి నావిగేట్ చేయండి.

# cd / మొదలైనవి / హాప్రాక్సీ

ఏదైనా సవరణలు చేయడానికి ముందు ఏదైనా కాన్ఫిగరేషన్ ఫైల్‌ను బ్యాకప్ చేయడం ఉత్తమ అభ్యాసానికి అవసరం. కాబట్టి బ్యాకప్ చేయండి haproxy.cfg పేరు మార్చడం ద్వారా ఫైల్.

# mv haproxy.cfg  haproxy.cfg.bak

తరువాత, కొనసాగండి మరియు కాన్ఫిగరేషన్ ఫైల్‌ను తెరవండి

ఎందుకంటే haproxy.cfg

చూపిన విధంగా మీరు సవరణలు చేశారని నిర్ధారించుకోండి

#------------------------------------------------ ----------------------
# గ్లోబల్ సెట్టింగ్‌లు
#------------------------------------------------ ----------------------
ప్రపంచ
లాగ్         127.0.0.1 లోకల్2 #లాగ్ కాన్ఫిగరేషన్

chroot / ఉంది / లిబ్ / హాప్రాక్సీ
పిడిఫైల్ / ఉంది / పరుగు / haproxy.pid
maxconn 4000
వినియోగదారు        హాప్రాక్సీ #Haproxy వినియోగదారు మరియు సమూహం 'haproxy' క్రింద నడుస్తుంది
సమూహం       హాప్రాక్సీ
డెమన్

# గణాంకాల యునిక్స్ సాకెట్‌ని ఆన్ చేయండి
గణాంకాల సాకెట్ / ఉంది / లిబ్ / హాప్రాక్సీ / గణాంకాలు

#------------------------------------------------ ----------------------
అన్ని 'వినండి' మరియు 'బ్యాకెండ్' విభాగాలు చేసే # సాధారణ డిఫాల్ట్‌లు
# వారి బ్లాక్‌లో నియమించబడకపోతే ఉపయోగించండి
#------------------------------------------------ ----------------------
డిఫాల్ట్‌లు
మోడ్                    http
లాగ్                     గ్లోబల్
ఎంపిక                  httplog
ఎంపిక                   dontlognull
ఎంపిక http-server-close
127.0.0.0 మినహా       కోసం ఫార్వార్డ్ ఎంపిక / 8
ఎంపిక                   మళ్లీ పంపడం
మళ్లీ ప్రయత్నిస్తుంది 3
సమయం ముగిసింది http-అభ్యర్థన    10సె
గడువు ముగిసిన క్యూ           1మీ
గడువు ముగిసింది కనెక్ట్         10సె
గడువు ముగిసిన క్లయింట్          1ని
గడువు ముగిసిన సర్వర్          1ని
సమయం ముగిసింది http-keep-alive 10s
గడువు ముగిసిన చెక్           10సె
maxconn 3000

#------------------------------------------------ ----------------------
#HAProxy మానిటరింగ్ కాన్ఫిగరేషన్
#------------------------------------------------ ----------------------
హాప్రాక్సీ3-పర్యవేక్షణను వినండి * : 8080 #Haproxy మానిటరింగ్ పోర్ట్ 8080లో నడుస్తుంది
మోడ్ http
ఫార్వార్డ్ కోసం ఎంపిక
ఎంపిక httpclose
గణాంకాలు ప్రారంభించు
గణాంకాలు షో-లెజెండ్స్
గణాంకాలు రిఫ్రెష్ 5సె
గణాంకాలు uri / గణాంకాలు HAProxy పర్యవేక్షణ కోసం #URL
గణాంకాలు రాజ్యం Haproxy \ గణాంకాలు
గణాంకాల auth పాస్‌వర్డ్123: పాస్‌వర్డ్123 పర్యవేక్షణ డాష్‌బోర్డ్‌కి లాగిన్ చేయడానికి #వినియోగదారు మరియు పాస్‌వర్డ్
గణాంకాల నిర్వాహకుడు ఉంటే నిజం
default_backend app-main #ఇది బ్యాకెండ్‌ని పర్యవేక్షించడానికి ఐచ్ఛికంగా ఉంటుంది

#------------------------------------------------ ----------------------
# ఫ్రంట్‌ఎండ్ కాన్ఫిగరేషన్
#------------------------------------------------ ----------------------
ఫ్రంటెండ్ ప్రధాన
కట్టు * : 80
ఎంపిక http-server-close
ఫార్వార్డ్ కోసం ఎంపిక
default_backend app-main

#------------------------------------------------ ----------------------
# బ్యాలెన్స్ అల్గారిథమ్‌గా బ్యాక్‌ఎండ్ రౌండ్ రాబిన్
#------------------------------------------------ ----------------------
బ్యాకెండ్ యాప్-మెయిన్

బ్యాలెన్స్ రౌండ్‌రోబిన్ #బ్యాలెన్స్ అల్గోరిథం

ఎంపిక httpchk HEAD / HTTP / 1.1 \r\nహోస్ట్:\ లోకల్ హోస్ట్
#సర్వర్ అప్లికేషన్‌ను తనిఖీ చేయండి మరియు ఆరోగ్యంగా ఉంది - 200 స్థితి కోడ్

సర్వర్ సర్వర్_01 3.19.229.234: 80 తనిఖీ #Nginx1

సర్వర్ సర్వర్_02 3.17.9.217: 80 తనిఖీ #Nginx2

చివరి రెండు లైన్లలో సూచించిన విధంగా వెబ్ సర్వర్‌ల హోస్ట్ పేరు మరియు IP చిరునామాలను సవరించాలని నిర్ధారించుకోండి. మార్పులను సేవ్ చేసి నిష్క్రమించండి.

HAProxy గణాంకాలను లాగ్ చేయగలిగేలా Rsyslogని కాన్ఫిగర్ చేయడం తదుపరి దశ.

# ఎందుకంటే / మొదలైనవి / rsyslog.conf

UDP కనెక్షన్‌లను అనుమతించడానికి మీరు దిగువ లైన్‌లను అన్‌కామెంట్ చేశారని నిర్ధారించుకోండి

$ModLoad imudp
$UDPServerRun 514

తరువాత, కొనసాగండి మరియు కొత్త కాన్ఫిగరేషన్ ఫైల్‌ను సృష్టించండి haproxy.conf

# ఎందుకంటే / మొదలైనవి / rsyslog.d / haproxy.conf

కింది పంక్తులను అతికించండి, సేవ్ చేసి నిష్క్రమించండి

స్థానిక2.=సమాచారం / ఉంది / లాగ్ / haproxy-access.log #యాక్సెస్ లాగ్ కోసం
స్థానిక2.నోటీస్ / ఉంది / లాగ్ / haproxy-info.log #సేవ సమాచారం కోసం - బ్యాకెండ్, లోడ్ బ్యాలెన్సర్

మార్పులు అమలులోకి రావడానికి చూపిన విధంగా rsyslog డెమోన్‌ని పునఃప్రారంభించండి:

# systemctl rsyslogని పునఃప్రారంభించండి

ఆపై HAProxyని ప్రారంభించి, ప్రారంభించండి

# systemctl ప్రారంభం rsyslog
# systemctl rsyslogని ఎనేబుల్ చేస్తుంది

HAProxy అమలవుతుందని ధృవీకరించండి

# systemctl స్థితి rsyslog

దశ 3: Nginxని ఇన్‌స్టాల్ చేసి కాన్ఫిగర్ చేయండి

ఇప్పుడు, Nginx యొక్క ఇన్‌స్టాలేషన్ మాత్రమే మిగిలి ఉంది. ప్రతి సర్వర్‌లోకి లాగిన్ అవ్వండి మరియు ముందుగా సిస్టమ్ ప్యాకేజీలను నవీకరించండి:

# yum నవీకరణ

తదుపరి ఇన్‌స్టాల్  EPEL (Enterprise Linux కోసం అదనపు ప్యాకేజీలు)

# yum ఇన్‌స్టాల్ చేయండి వెచ్చని విడుదల

Nginxని ఇన్‌స్టాల్ చేయడానికి, ఆదేశాన్ని అమలు చేయండి:

# yum ఇన్‌స్టాల్ చేయండి nginx

తరువాత, Nginxని ప్రారంభించి, ప్రారంభించండి

# systemctl ప్రారంభం nginx
# systemctl nginxని ఎనేబుల్ చేస్తుంది

లోడ్ బ్యాలెన్సర్ రెండు సర్వర్‌లలో వెబ్ ట్రాఫిక్‌ని ఎలా పంపిణీ చేయగలదో ప్రదర్శించడానికి లేదా అనుకరించడానికి మేము రెండు సందర్భాల్లోనూ index.html ఫైల్‌ను సవరించబోతున్నాము.

సర్వర్_01 కోసం

# ప్రతిధ్వని 'server_01. హే ! మొదటి వెబ్ సర్వర్‌కి స్వాగతం' > index.html

సర్వర్ కోసం_02

# ప్రతిధ్వని 'server_02. హే ! రెండవ వెబ్ సర్వర్‌కు స్వాగతం' > index.html

మార్పులు ప్రభావితం కావడానికి, Nginxని పునఃప్రారంభించండి

# systemctl nginxని పునఃప్రారంభించండి

దశ 4: లోడ్ బ్యాలెన్సర్ పనిచేస్తుందో లేదో పరీక్షించడం

మేము కాన్ఫిగరేషన్ పనిచేస్తుందో లేదో చూడాలనుకుంటున్నాము. కాబట్టి లోడ్ బాలన్సర్‌లోకి లాగిన్ అవ్వండి మరియు కర్ల్ కమాండ్‌ను పదేపదే అమలు చేయండి

# కర్ల్ 3.17.12.132

మీరు సర్వర్_01 మరియు సర్వర్_02 నుండి index.html విలువను చూపే టెర్మినల్‌లో ప్రత్యామ్నాయ అవుట్‌పుట్‌ను పొందాలి

ఇప్పుడు వెబ్ బ్రౌజర్‌ని ఉపయోగించి పరీక్షిద్దాం. మీ లోడ్ బ్యాలెన్సర్ యొక్క IP చిరునామాను బ్రౌజ్ చేయండి

http: // load-balancer-IP-అడ్రస్

మొదటి పేజీ ఏదైనా వెబ్ సర్వర్ నుండి కంటెంట్‌ను ప్రదర్శిస్తుంది


ఇప్పుడు వెబ్‌పేజీని రిఫ్రెష్ చేయండి మరియు అది ఇతర వెబ్ సర్వర్ నుండి కంటెంట్‌ను ప్రదర్శిస్తుందో లేదో తనిఖీ చేయండి

పర్ఫెక్ట్! లోడ్ బ్యాలెన్స్ రెండు వెబ్ సర్వర్‌ల మధ్య సమానంగా IP ట్రాఫిక్‌ను పంపిణీ చేస్తోంది!
మీరు CentOS 8లో HAProxyని ఎలా ఇన్‌స్టాల్ చేయవచ్చు మరియు కాన్ఫిగర్ చేయవచ్చు అనేదానిపై ఈ ట్యుటోరియల్‌ను ఇది పూర్తి చేస్తుంది. మీ అభిప్రాయం చాలా ప్రశంసించబడుతుంది.