HAProxy : HTTP लोड संतुलन2023/10/23 |
लोड बैलेंसिंग सर्वर को कॉन्फ़िगर करने के लिए HAProxy स्थापित करें।
यह उदाहरण निम्न प्रकार से पर्यावरण पर आधारित है। -----------+---------------------------+--------------------------+------------ | | | |10.0.0.30 |10.0.0.51 |10.0.0.52 +----------+-----------+ +-----------+----------+ +-----------+----------+ | [ dlp.srv.world ] | | [ node01.srv.world ] | | [ node02.srv.world ] | | HAProxy | | Web Server#1 | | Web Server#2 | +----------------------+ +----------------------+ +----------------------+ |
सर्वर को कॉन्फ़िगर करें कि HAProxy सर्वर से HTTP कनेक्शन को बैकएंड वेब सर्वर पर अग्रेषित किया जाता है।
|
|
[1] | HAProxy स्थापित करें। |
[root@dlp ~]# dnf -y install haproxy
|
[2] | HAProxy कॉन्फ़िगर करें। |
[root@dlp ~]#
vi /etc/haproxy/haproxy.cfg # मौजूदा [frontend ***] [backend ***] अनुभागों के लिए सभी टिप्पणी करें # और अंत में अनुसरण जोड़ें # फ्रंटएंड को परिभाषित करें ([http-in] के लिए कोई भी नाम ठीक है) frontend http-in # सुनो 80 पोर्ट bind *:80 # डिफ़ॉल्ट बैकएंड सेट करें default_backend backend_servers # एक्स-फॉरवर्डेड-फॉर हेडर भेजें option forwardfor # बैकएंड को परिभाषित करें backend backend_servers # राउंड रॉबिन के साथ संतुलन balance roundrobin # बैकएंड सर्वर को परिभाषित करें server node01 10.0.0.51:80 check server node02 10.0.0.52:80 check systemctl enable --now haproxy |
[3] | यदि Firewalld चल रहा है, तो पोर्ट HAProxy को सुनने की अनुमति दें। |
[root@dlp ~]# firewall-cmd --add-service=http success [root@dlp ~]# firewall-cmd --runtime-to-permanent success |
[4] | HAproxy की डिफ़ॉल्ट सेटिंग द्वारा, लॉग को [local2] सुविधा पर भेजा जाता है, इसलिए इसे फ़ाइल में रिकॉर्ड करने के लिए Rsyslog को कॉन्फ़िगर करें। |
[root@dlp ~]#
vi /etc/rsyslog.conf # पंक्ति 31, 32 : टिप्पणी हटाएँ और एक पंक्ति जोड़ें module(load="imudp") # needs to be done just once input(type="imudp" port="514") $AllowedSender UDP, 127.0.0.1
# पंक्ति 47 : इस प्रकार परिवर्तन करें *.info;mail.none;authpriv.none;cron.none;local2.none /var/log/messages local2.* /var/log/haproxy.log[root@dlp ~]# systemctl restart rsyslog |
[5] | X-Forwarded-For हेडर लॉगिंग करने के लिए बैकएंड वेब सर्वर (इस उदाहरण पर Apache httpd) पर सेटिंग्स बदलें। |
[root@node01 ~]#
vi /etc/httpd/conf/httpd.conf # पंक्ति 201 : इस प्रकार परिवर्तन करें LogFormat " \"%{X-Forwarded-For}i\" %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
systemctl restart httpd |
[6] | फ्रंटएंड HAproxy सर्वर तक पहुंचने के लिए सामान्य रूप से काम करने की पुष्टि करें। |
![]() |
![]() |
Sponsored Link |