Tumblr, GitHub மற்றும் StackOverflow போன்ற பிரபலமான தளங்களால் HaProxy பயன்படுத்தப்படுகிறது. இந்த வழிகாட்டியில், Nginx ஐப் பயன்படுத்தி இயங்கும் வெப்சர்வர்களின் அமைப்பில் HAProxy இன் நிறுவலின் மூலம் உங்களை அழைத்துச் செல்வோம்.
ஆய்வக அமைப்பு
காட்டப்பட்டுள்ளபடி CentOS 7 சேவையகங்களின் 3 நிகழ்வுகள்
ஹோஸ்ட்பெயர் ஐபி முகவரிகள்
load_balancer 3.17.12.132
server_01 3.19.229.234
server_02 3.17.9.217
படி 1: சுமை சமநிலைக்கான /etc/hosts கோப்பைத் திருத்தவும்
தொடங்குவதற்கு, சுமை சமநிலை அமைப்பில் உள்நுழைந்து, காட்டப்பட்டுள்ளபடி இரண்டு இணைய சேவையகங்களின் ஹோஸ்ட்பெயர்கள் மற்றும் IP முகவரிகளைச் சேர்க்க /etc/hosts கோப்பை மாற்றவும்.
$ ஏனெனில் / முதலியன / புரவலன்கள்
3.19.229.234 server_01
3.17.9.217 சர்வர்-02
முடிந்ததும், மாற்றங்களைச் சேமித்து, உள்ளமைவு கோப்பிலிருந்து வெளியேறவும்.
இப்போது ஒவ்வொரு இணைய சேவையகத்திற்கும் சென்று புதுப்பிக்கவும் /etc/hosts ஐபி முகவரி மற்றும் லோட் பேலன்சரின் ஹோஸ்ட்பெயருடன் கோப்பு
3.17.12.132 லோட் பேலன்சர்அதன் பிறகு, சர்வர்_01 இலிருந்து லோட் பேலன்சரை பிங் செய்ய முடியும் என்பதை உறுதிப்படுத்தவும்
மற்றும் சர்வர்_02 இலிருந்து
மேலும், லோட் பேலன்சரில் இருந்து சர்வர்களை பிங் செய்யலாம் என்பதை உறுதிப்படுத்தவும்.
சரியான ! அனைத்து சேவையகங்களும் சுமை சமநிலையுடன் தொடர்பு கொள்ள முடியும்!
படி 2: லோட் பேலன்சரில் HA ப்ராக்ஸியை நிறுவி உள்ளமைக்கவும்
HA ப்ராக்ஸி CentOS அதிகாரப்பூர்வ களஞ்சியத்தில் இருந்து உடனடியாகக் கிடைப்பதால், yum அல்லது dnf தொகுப்பு மேலாளரைப் பயன்படுத்தி அதை நிறுவப் போகிறோம்.
ஆனால் எப்போதும் போல, முதலில் கணினியைப் புதுப்பிக்கவும்
# yum மேம்படுத்தல்அடுத்து, காட்டப்பட்டுள்ளபடி HA ப்ராக்ஸியை நிறுவவும்
# yum நிறுவவும் ஹாப்ராக்ஸிவெற்றிகரமாக நிறுவப்பட்டதும், ஹாப்ராக்ஸி கோப்பகத்திற்குச் செல்லவும்.
# சிடி / முதலியன / ஹாப்ராக்ஸிமாற்றங்களைச் செய்வதற்கு முன், எந்தவொரு உள்ளமைவு கோப்பையும் காப்புப் பிரதி எடுக்க சிறந்த நடைமுறை தேவைப்படுகிறது. எனவே காப்புப்பிரதி haproxy.cfg மறுபெயரிடுவதன் மூலம் கோப்பு.
# எம்வி haproxy.cfg haproxy.cfg.bakஅடுத்து, தொடரவும் மற்றும் கட்டமைப்பு கோப்பை திறக்கவும்
ஏனெனில் haproxy.cfgகாட்டப்பட்டுள்ளபடி மாற்றங்களைச் செய்வதை உறுதிசெய்யவும்
#------------------------------------------------ ----------------------# உலகளாவிய அமைப்புகள்
#------------------------------------------------ ----------------------
உலகளாவிய
பதிவு 127.0.0.1 உள்ளூர்2 #பதிவு கட்டமைப்பு
chroot / இருந்தது / லிப் / ஹாப்ராக்ஸி
pidfile / இருந்தது / ஓடு / haproxy.pid
மேக்ஸ்கான் 4000
பயனர் ஹாப்ராக்ஸி #Haproxy பயனர் மற்றும் குழு 'haproxy' கீழ் இயங்குகிறது
குழு ஹாப்ராக்ஸி
டீமான்
# புள்ளிவிவர யுனிக்ஸ் சாக்கெட்டை இயக்கவும்
புள்ளிவிவர சாக்கெட் / இருந்தது / லிப் / ஹாப்ராக்ஸி / புள்ளிவிவரங்கள்
#------------------------------------------------ ----------------------
அனைத்து 'கேளுங்கள்' மற்றும் 'பின்னணி' பிரிவுகள் செய்யும் # பொதுவான இயல்புநிலைகள்
# அவர்களின் தொகுதியில் நியமிக்கப்படாவிட்டால் பயன்படுத்தவும்
#------------------------------------------------ ----------------------
இயல்புநிலைகள்
பயன்முறை http
பதிவு உலகளாவிய
விருப்பம் httplog
விருப்பம் dontlognull
விருப்பம் http-server-close
127.0.0.0 தவிர க்கான விருப்பம் / 8
விருப்பம் மீண்டும் அனுப்புதல்
மீண்டும் முயற்சிக்கிறது 3
http-request 10s நேரம் முடிந்தது
காலாவதி வரிசை 1நி
காலாவதி இணைப்பு 10 வி
காலாவதியான கிளையன்ட் 1நி
காலாவதியான சர்வர் 1நி
நேரம் முடிந்தது http-keep-alive 10s
காலாவதி சோதனை 10 வி
மேக்ஸ்கான் 3000
#------------------------------------------------ ----------------------
#HAProxy கண்காணிப்பு கட்டமைப்பு
#------------------------------------------------ ----------------------
ஹாப்ராக்ஸி3-கண்காணிப்பைக் கேளுங்கள் * : 8080 #Haproxy கண்காணிப்பு போர்ட் 8080 இல் இயங்குகிறது
பயன்முறை http
முன்னோக்கி விருப்பம்
விருப்பம் httpclose
புள்ளிவிவரங்கள் செயல்படுத்த
புள்ளிவிவரங்கள் நிகழ்ச்சி-புராணங்கள்
புள்ளிவிவரங்கள் புதுப்பி 5வி
புள்ளிவிவரங்கள் uri / புள்ளிவிவரங்கள் HAProxy கண்காணிப்புக்கான #URL
புள்ளிவிவரங்கள் ஹாப்ராக்ஸி \ புள்ளியியல்
stats auth கடவுச்சொல்123: கடவுச்சொல்123 கண்காணிப்பு டாஷ்போர்டில் உள்நுழைவதற்கான #பயனர் மற்றும் கடவுச்சொல்
புள்ளிவிவர நிர்வாகி என்றால் உண்மை
default_backend app-main #இது பின்தளத்தை கண்காணிப்பதற்கு விருப்பமானது
#------------------------------------------------ ----------------------
# FrontEnd கட்டமைப்பு
#------------------------------------------------ ----------------------
முகப்பு முக்கிய
கட்டுதல் * : 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
கடைசி இரண்டு வரிகளில் குறிப்பிடப்பட்டுள்ளபடி இணைய சேவையகங்களின் ஹோஸ்ட்பெயர் மற்றும் ஐபி முகவரிகளை மாற்றுவதை உறுதிசெய்யவும். மாற்றங்களைச் சேமித்து வெளியேறவும்.
HAProxy புள்ளிவிவரங்களை பதிவு செய்ய Rsyslog ஐ உள்ளமைப்பது அடுத்த படியாகும்.
# ஏனெனில் / முதலியன / rsyslog.confUDP இணைப்புகளை அனுமதிக்க, கீழே உள்ள வரிகளில் கருத்து நீக்குவதை உறுதிசெய்யவும்
$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 (Extra Packages for 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 இன் மதிப்பைக் காட்டும் டெர்மினலில் மாற்று வெளியீட்டைப் பெறுவீர்கள்.
இப்போது இணைய உலாவியைப் பயன்படுத்தி சோதிப்போம். உங்கள் லோட் பேலன்சரின் ஐபி முகவரியை உலாவவும்
http: // load-balancer-IP-addressமுதல் பக்கம் எந்த இணைய சேவையகங்களிலிருந்தும் உள்ளடக்கத்தைக் காண்பிக்கும்
இப்போது வலைப்பக்கத்தைப் புதுப்பித்து, அது மற்ற இணைய சேவையகத்திலிருந்து உள்ளடக்கத்தைக் காட்டுகிறதா என்பதைப் பார்க்கவும்
சரியான ! சுமை சமநிலை இரண்டு இணைய சேவையகங்களுக்கு இடையே சமமாக IP போக்குவரத்தை விநியோகிக்கிறது !
CentOS 8 இல் HAProxy ஐ எவ்வாறு நிறுவலாம் மற்றும் கட்டமைக்கலாம் என்பது குறித்த இந்த பயிற்சியை இது நிறைவு செய்கிறது. உங்கள் கருத்து மிகவும் பாராட்டப்படும்.