CentOS 8 இல் Nginx க்கான சுமை சமநிலையாக HAProxy ஐ எவ்வாறு அமைப்பது


அதிகபட்ச வலை பயன்பாடு கிடைக்கும் தன்மை, அளவிடுதல் மற்றும் உயர் செயல்திறன் ஆகியவற்றை உறுதிப்படுத்த, சேவையக கிளஸ்டரிங் மற்றும் சுமை சமநிலை போன்ற பணிநீக்கத்தை அறிமுகப்படுத்தும் தொழில்நுட்பங்களை செயல்படுத்துவது இப்போது பொதுவானது. எடுத்துக்காட்டாக, அனைத்தும் ஒரே பயன்பாடு (களை) இயக்கும் சேவையகங்களின் கிளஸ்டரை அமைத்து, பின்னர் போக்குவரத்தை விநியோகிக்க சுமை இருப்பு (களை) அவர்களுக்கு முன்னால் பயன்படுத்துகின்றன.

HAProxy என்பது ஒரு திறந்த மூல, சக்திவாய்ந்த, உயர் செயல்திறன், நம்பகமான, பாதுகாப்பான மற்றும் பரவலாகப் பயன்படுத்தப்படும் உயர் கிடைக்கும் TCP/HTTP சுமை இருப்பு, ப்ராக்ஸி சேவையகம் மற்றும் SSL/TLS டெர்மினேட்டர் மிக உயர்ந்த போக்குவரத்து வலைத்தளங்களுக்காக கட்டப்பட்டுள்ளது. இது லினக்ஸ், சோலாரிஸ், ஃப்ரீ.பி.எஸ்.டி, ஓபன்.பி.எஸ்.டி மற்றும் AIX இயக்க முறைமைகளில் நம்பத்தகுந்த வகையில் இயங்குகிறது.

இந்த வழிகாட்டி NGINX வலை சேவையகங்களின் கிளஸ்டரில் போக்குவரத்தை கட்டுப்படுத்த CentOS 8 இல் HAProxy உடன் பிரத்யேக உயர் கிடைக்கும் சுமை இருப்புநிலையை எவ்வாறு அமைப்பது என்பதைக் காட்டுகிறது. HAProxy இல் SSL/TLS முடிவை எவ்வாறு கட்டமைப்பது என்பதையும் இது நிரூபிக்கிறது.

குறைந்தபட்ச CentOS 8 நிறுவலுடன் மொத்தம் 4 சேவையகங்கள்.

----------- HAProxy Server Setup ----------- 
HA Proxy Server - hostname: haproxy-server.tecmint.lan; IP: 10.42.0.247
Test Site Domain: www.tecmint.lan


----------- Client Web Servers Setup ----------- 
Web Server #1 - hostname: websrv1.tecmint.lan; IP: 10.42.0.200
Web Server #2 - hostname: websrv2.tecmint.lan; IP: 10.42.0.21
Web Server #3 - hostname: websrv3.tecmint.lan; IP: 10.42.0.34

படி 1: கிளையன்ட் இயந்திரங்களில் Nginx HTTP சேவையகத்தை அமைத்தல்

1. உங்கள் எல்லா CentOS 8 கிளையன்ட் கணினிகளிலும் உள்நுழைந்து, காட்டப்பட்டுள்ளபடி dnf தொகுப்பு நிர்வாகியைப் பயன்படுத்தி Nginx வலை சேவையகத்தை நிறுவவும்.

# dnf install Nginx

2. அடுத்து, என்ஜின்க்ஸ் சேவையைத் தொடங்கவும், இப்போதைக்கு, கணினி துவக்கத்தில் தானாகவே தொடங்கவும், அதன் நிலையைச் சரிபார்த்து, இயங்குகிறது என்பதை உறுதிப்படுத்தவும், systemctl கட்டளைகளைப் பயன்படுத்தி (எல்லா கிளையன்ட் கணினிகளிலும் இதைச் செய்யுங்கள்).

# systemctl start nginx
# systemctl enable nginx
# systemctl status nginx

3. மேலும், அனைத்து கிளையன்ட் கணினிகளிலும் ஃபயர்வால்ட் சேவை இயங்குகிறது என்றால் (இது systemctl start firewalld ஐ இயக்குவதன் மூலம் நீங்கள் சரிபார்க்கலாம்), ஃபயர்வால் உள்ளமைவில் HTTP மற்றும் HTTPS சேவைகளை நீங்கள் சேர்க்க வேண்டும். Nginx வலை சேவையகங்களுக்கு. புதிய மாற்றங்களைச் செயல்படுத்த ஃபயர்வால்ட் சேவையை மீண்டும் ஏற்றவும் (எல்லா கிளையன்ட் கணினிகளிலும் இதைச் செய்யுங்கள்).

# firewall-cmd --zone=public --permanent --add-service=http
# firewall-cmd --zone=public --permanent --add-service=https
# firewall-cmd --reload

4. அடுத்து, உங்கள் உள்ளூர் கணினிகளில் ஒரு வலை உலாவியைத் திறந்து, Nginx நிறுவல் நன்றாக வேலை செய்கிறதா என்று சோதிக்கவும். செல்லவும் கிளையன்ட் ஐபியைப் பயன்படுத்தவும், நீங்கள் என்ஜின்க்ஸ் சோதனை பக்கத்தைப் பார்த்தவுடன், கிளையன்ட் கணினியில் நிறுவப்பட்ட வலை சேவையகம் சரியாக வேலை செய்கிறது என்று பொருள்.

5. அடுத்து, கிளையன்ட் கணினிகளில் சோதனை பக்கங்களை உருவாக்க வேண்டும், பின்னர் HAProxy அமைப்பை சோதிக்க நாங்கள் பயன்படுத்துவோம்.

----------- Web Server #1 ----------- 
# cp /usr/share/nginx/html/index.html /usr/share/nginx/html/index.html.orig
# echo "Showing site from websrv1.tecmint.lan"> /usr/share/nginx/html/index.html

----------- Web Server #2 ----------- 
# cp /usr/share/nginx/html/index.html /usr/share/nginx/html/index.html.orig
# echo "Showing site from websrv2.tecmint.lan"> /usr/share/nginx/html/index.html

----------- Web Server #3 ----------- 
# cp /usr/share/nginx/html/index.html /usr/share/nginx/html/index.html.orig
# echo "Showing site from websrv3.tecmint.lan"> /usr/share/nginx/html/index.html

படி 2: CentOS 8 இல் HAProxy சேவையகத்தை நிறுவுதல் மற்றும் கட்டமைத்தல்

6. இப்போது பின்வரும் கட்டளையை இயக்குவதன் மூலம் HAProxy சேவையகத்தில் HAProxy தொகுப்பை நிறுவவும்.

# dnf install haproxy

7. அடுத்து, HAProxy சேவையைத் தொடங்கவும், கணினி துவக்கத்தில் தானாகத் தொடங்கவும், அதன் நிலையை சரிபார்க்கவும்.

# systemctl start haproxy
# systemctl enable haproxy
# systemctl status haproxy

8. இப்போது பின்வரும் கட்டமைப்பு கோப்பைப் பயன்படுத்தி HAProxy ஐ உள்ளமைப்போம்.

# vi /etc/haproxy/haproxy.cfg

உள்ளமைவு கோப்பு நான்கு முக்கிய பிரிவுகளாக பிரிக்கப்பட்டுள்ளது.

  • உலகளாவிய அமைப்புகள் - செயல்முறை அளவிலான அளவுருக்களை அமைக்கிறது.
  • இயல்புநிலை - இந்த பிரிவு அதன் அறிவிப்பைத் தொடர்ந்து மற்ற எல்லா பிரிவுகளுக்கும் இயல்புநிலை அளவுருக்களை அமைக்கிறது.
  • frontend - கிளையன்ட் இணைப்புகளை ஏற்றுக்கொள்ளும் கேட்கும் சாக்கெட்டுகளின் தொகுப்பை இந்த பகுதி விவரிக்கிறது.
  • <
  • பின்தளத்தில் - உள்வரும் இணைப்புகளை முன்னோக்கி இணைக்க ப்ராக்ஸி இணைக்கும் சேவையகங்களின் தொகுப்பை இந்த பகுதி விவரிக்கிறது.

உலகளாவிய அமைப்புகள் மற்றும் இயல்புநிலைகளின் கீழ் உள்ள விருப்பங்களைப் புரிந்து கொள்ள, HAProxy ஆவணங்களைப் படிக்கவும் (கட்டுரையின் முடிவில் வழங்கப்பட்ட இணைப்பு). இந்த வழிகாட்டிக்கு, இயல்புநிலைகளைப் பயன்படுத்துவோம்.

9. ஒருமுறை பயன்படுத்தப்படும்போது HAProxy உங்கள் தகவல் தொழில்நுட்ப உள்கட்டமைப்பில் குறிப்பிடத்தக்க பங்கைக் கொண்டிருக்கும், இதனால் அதற்கான பதிவுகளை உள்ளமைப்பது ஒரு அடிப்படை தேவை; இது உங்கள் பின்தளத்தில் வலை சேவையகங்களுக்கான ஒவ்வொரு இணைப்பையும் பற்றிய நுண்ணறிவுகளைப் பெற உங்களை அனுமதிக்கிறது.

பதிவு அளவுரு (பின்வரும் ஸ்கிரீன்ஷாட்டில் சிறப்பிக்கப்பட்டுள்ளது) பதிவு செய்திகளைப் பெறும் உலகளாவிய சிஸ்லாக் சேவையகத்தை (சென்டோஸில் இயல்புநிலையாக rsyslog போன்றவை) அறிவிக்கிறது. ஒன்றுக்கு மேற்பட்ட சேவையகங்களை இங்கே அறிவிக்க முடியும்.

இயல்புநிலை உள்ளமைவு லோக்கல் ஹோஸ்டுக்கு (127.0.0.1) சுட்டிக்காட்டுகிறது மற்றும் லோக்கல் 2 என்பது rsyslog இன் கீழ் HAProxy பதிவு செய்திகளை அடையாளம் காண பயன்படுத்தப்படும் இயல்புநிலை வசதி குறியீடாகும்.

10. அடுத்து, HAProxy பதிவு செய்திகளை எவ்வாறு பெறுவது மற்றும் செயலாக்குவது என்பதை நீங்கள் rsyslog சேவையகத்திற்கு சொல்ல வேண்டும். Rsetlog உள்ளமைவு கோப்பை /etc/rsyslog.conf க்கு திறக்கவும் அல்லது /etc/rsyslog.d கோப்பகத்தில் ஒரு புதிய கோப்பை உருவாக்கவும், எடுத்துக்காட்டாக /etc/rsyslog.d/haproxy.conf.

# vi /etc/rsyslog.d/haproxy.conf

இயல்புநிலை போர்ட் 514 இல் யுடிபி உடன் பதிவை சேகரிக்க பின்வரும் உள்ளமைவை நகலெடுத்து ஒட்டவும்.

$ModLoad imudp 
$UDPServerAddress 127.0.0.1 
$UDPServerRun 514 

தீவிரத்தின் அடிப்படையில் இரண்டு தனித்தனி பதிவுக் கோப்புகளுக்கு எழுத rsyslog க்கு அறிவுறுத்த இந்த வரிகளைச் சேர்க்கவும், இங்கு லோக்கல் 2 என்பது மேலே உள்ள HAProxy உள்ளமைவில் வரையறுக்கப்பட்ட வசதிக் குறியீடாகும்.

local2.* 	/var/log/haproxy-traffic.log 
local2.notice 	/var/log/haproxy-admin.log

11. கோப்பை சேமித்து மூடவும். சமீபத்திய மாற்றங்களைப் பயன்படுத்த rsyslog சேவையை மறுதொடக்கம் செய்யுங்கள்.

# systemctl restart rsyslog

12. இந்த பிரிவில், முன்-முனை மற்றும் பின்-இறுதி ப்ராக்ஸிகளை எவ்வாறு கட்டமைப்பது என்பதை நாங்கள் காண்பிப்போம். HAProxy உள்ளமைவு கோப்புக்குச் சென்று இயல்புநிலை முன்-முனை மற்றும் பின்தளத்தில் பிரிவுகளை பின்வருமாறு மாற்றவும். ஒவ்வொரு அளவுருவின் விரிவான விளக்கத்திற்கு நாங்கள் செல்ல மாட்டோம், நீங்கள் எப்போதும் அதிகாரப்பூர்வ ஆவணங்களை குறிப்பிடலாம்.

பின்வரும் உள்ளமைவு HAProxy புள்ளிவிவரங்கள் பக்கத்தை வழங்க பயன்படும் கேட்பது பகுதியை வரையறுக்கிறது. பிணைப்பு அளவுரு ஒரு கேட்பவரை கொடுக்கப்பட்ட ஐபி முகவரி ( * அனைவருக்கும்) மற்றும் போர்ட் (9000) க்கு ஒதுக்குகிறது.

புள்ளிவிவரங்கள் இயக்கும் அமைப்பு URI/புள்ளிவிவரங்களைப் பயன்படுத்தி அணுகக்கூடிய புள்ளிவிவரப் பக்கத்தை செயல்படுத்துகிறது (அதாவது http:// server_ip: 9000/stats ).

பக்கத்தை அணுகும்போது அடிப்படை அங்கீகாரத்தைச் சேர்க்க புள்ளிவிவரங்கள் அங்கீகார அமைப்பு பயன்படுத்தப்படுகிறது (உங்கள் விருப்பப்படி பயனர்பெயர் மற்றும் கடவுச்சொல்லுடன் ஹாப்ராக்ஸி மற்றும் [மின்னஞ்சல் பாதுகாக்கப்பட்டவை] மாற்றவும்).

listen stats
    bind *:9000
    stats enable
    stats hide-version
    stats uri /stats
    stats admin if LOCALHOST
    stats auth haproxy:[email 

13. அடுத்த உள்ளமைவு TL எனப்படும் ஒரு முன்பக்க பகுதியை வரையறுக்கிறது (நீங்கள் விரும்பும் பெயரைக் கொடுக்கலாம்). பயன்முறை அளவுரு HAProxy இயங்கும் பயன்முறையை வரையறுக்கிறது.

கோரிக்கையிலிருந்து பிரித்தெடுக்கப்பட்ட உள்ளடக்கத்தின் அடிப்படையில் முடிவெடுக்க acl (அணுகல் கட்டுப்பாட்டு பட்டியல்) அளவுரு பயன்படுத்தப்படுகிறது. இந்த எடுத்துக்காட்டில், கோரிக்கை SSL இல் செய்யப்படாவிட்டால் அது எளிய HTTP ஆக கருதப்படுகிறது.

கோரிக்கைக்கு ஒரு HTTP தலைப்பைச் சேர்க்க http-request set-header அமைப்பு பயன்படுத்தப்படுகிறது. ஆரம்ப கோரிக்கை HTTP வழியாக (அல்லது போர்ட் 80 வழியாக) செய்யப்பட்டது என்பதை Nginx க்கு தெரிவிக்க இது உதவுகிறது.

இயல்புநிலை_ பின்தளத்தில் அல்லது use_backend உத்தரவு பின்தளத்தில் சேவையகங்களை வரையறுக்கிறது, இந்த விஷயத்தில், TL_web_servers ஆல் குறிப்பிடப்படுகிறது.

Use_backend அல்லது default_backend உத்தரவு மூலம் ஒரு கோரிக்கையை வழிநடத்தாவிட்டால், HAProxy ஒரு 50 "503 சேவை கிடைக்காத பிழை" வழங்கும் என்பதை நினைவில் கொள்க.

frontend TL
    bind *:80
    mode http
    acl http  ssl_fc,not
    http-request set-header X-Forwarded-Protocol http if http
    default_backend TL_web_servers

14. பின்னர் ஒரு பின்தளத்தில் பகுதியை நாம் வரையறுக்க வேண்டும், அங்கு இருப்பு அமைப்பானது, HAProxy பின்-இறுதி சேவையகங்களை எவ்வாறு தேர்வுசெய்கிறது என்பதை வரையறுக்கிறது.

குக்கீ உத்தரவு குக்கீ அடிப்படையிலான நிலைத்தன்மையை செயல்படுத்துகிறது, இது வாடிக்கையாளருக்கு SERVERID என்ற குக்கீயை அனுப்பவும், ஆரம்ப பதிலைக் கொடுத்த சேவையகத்தின் ஐடியுடன் இணைக்கவும் HAProxy க்கு அறிவுறுத்துகிறது.

சேவையக உத்தரவு அப்ஸ்ட்ரீம் சேவையகங்களை sever_name (எ.கா. webrv1), server_IP: போர்ட் மற்றும் விருப்பங்களில் வரையறுக்கப் பயன்படுகிறது.

ஒரு முக்கிய விருப்பம், இது ஒரு சேவையகத்தின் கிடைக்கும் தன்மையை சரிபார்க்கவும், புள்ளிவிவரங்கள் பக்கத்தில் புகாரளிக்கவும் HAProxy க்கு சொல்லும் சோதனை.

backend TL_web_servers
    mode http
    balance roundrobin
    option  httpchk HEAD /
    cookie SERVERUID insert indirect nocache
    server  websrv1 10.42.0.200:80 cookie websrv1 check
    server  websrv2 10.42.0.21:80  cookie websrv2 check
    server  websrv3 10.42.0.34:80  cookie websrv3 check

பின்வரும் ஸ்கிரீன்ஷாட்டில் காட்டப்பட்டுள்ளபடி வேறு எந்த ஃபிரான்டென்ட் மற்றும் பின்தளத்தில் பிரிவுகளையும் கருத்து தெரிவிக்கவும். கோப்பை சேமித்து மூடவும்.

15. புதிய மாற்றங்களைப் பயன்படுத்த இப்போது HAProxy சேவையை மறுதொடக்கம் செய்யுங்கள்.

# systemctl restart haproxy

16. அடுத்து, கிளையன்ட் கோரிக்கைகளை பின்வருமாறு ஏற்றுக்கொள்ள ஃபயர்வாலில் HTTP (போர்ட் 80) மற்றும் HTTPS (போர்ட் 433) சேவைகள் திறக்கப்பட்டுள்ளன என்பதை உறுதிப்படுத்தவும். மேலும், புள்ளிவிவரங்கள் பக்கத்தை அணுக ஃபயர்வாலில் போர்ட் 9000 ஐத் திறந்து ஃபயர்வால் அமைப்புகளை மீண்டும் ஏற்றவும்.

# firewall-cmd --zone=public --permanent --add-service=http
# firewall-cmd --zone=public --permanent –add-service=https
# firewall-cmd --zone=public --permanent --add-port=9000/tcp
# firewall-cmd --reload

படி 3: HAProxy அமைவு மற்றும் புள்ளிவிவரங்களைப் பார்ப்பது

17. இப்போது HAPrxoy அமைப்பை சோதிக்க நேரம். நீங்கள் எல்லா சேவையகங்களையும் அணுகும் உள்ளூர் டெஸ்க்டாப் கணினியில், போலி தள டொமைனைப் பயன்படுத்த எங்களுக்கு உதவும் வகையில்/etc/hosts கோப்பில் பின்வரும் வரியைச் சேர்க்கவும்.

10.42.0.247  www.tecmint.lan

18. பின்னர் ஒரு உலாவியைத் திறந்து சேவையக முகவரி அல்லது தள டொமைனைப் பயன்படுத்தி செல்லவும்.

http://10.42.0.247/
OR
http://www.tecmint.lan/

19. HAProxy புள்ளிவிவரங்கள் பக்கத்தை அணுக, பின்வரும் முகவரியைப் பயன்படுத்தவும்.

http://10.42.0.247:9000/stats

HAProxy உள்ளமைவு கோப்பில் நீங்கள் வரையறுக்கப்பட்ட பயனர்பெயர் மற்றும் கடவுச்சொல்லைப் பயன்படுத்தவும் (புள்ளிவிவரங்கள் அங்கீகார அளவுருவைப் பார்க்கவும்).

வெற்றிகரமான உள்நுழைவுக்குப் பிறகு, உங்கள் சேவையகங்களின் ஆரோக்கியம், தற்போதைய கோரிக்கை விகிதங்கள், மறுமொழி நேரங்கள் மற்றும் பலவற்றை உள்ளடக்கிய அளவீடுகளைக் காண்பிக்கும் HAProxy புள்ளிவிவரங்கள் பக்கத்தில் நீங்கள் இறங்குவீர்கள்.

வண்ணக் குறியீடுகள் தொடர்பாக நிலை அறிக்கை எவ்வாறு செயல்படுகிறது என்பதை நிரூபிக்க, பின்-இறுதி சேவையகங்களில் ஒன்றை வைத்துள்ளோம்.

படி 4: சுய கையொப்பமிடப்பட்ட SSL சான்றிதழைப் பயன்படுத்தி HAProxy இல் HTTPS ஐ கட்டமைத்தல்

20. இந்த இறுதிப் பிரிவில், HAProxy சேவையகம் மற்றும் கிளையன்ட் இடையேயான அனைத்து தகவல்தொடர்புகளையும் பாதுகாக்க SSL/TLS ஐ எவ்வாறு கட்டமைப்பது என்பதை நாங்கள் காண்பிப்போம். HAProxy நான்கு முக்கிய HTTPS உள்ளமைவு முறைகளை ஆதரிக்கிறது, ஆனால் இந்த வழிகாட்டியைப் பொறுத்தவரை, நாங்கள் SSL/TLS ஆஃப்லோடிங்கைப் பயன்படுத்துவோம்.

எஸ்எஸ்எல்/டிஎல்எஸ் ஆஃப்லோடிங் பயன்முறையில், கிளையன்ட் பக்கத்தில் உள்ள போக்குவரத்தை HAProxy புரிந்துகொள்கிறது மற்றும் பின்தளத்தில் சேவையகங்களுடன் தெளிவான போக்குவரத்தில் இணைக்கப்படுகிறது.

காட்டப்பட்டுள்ளபடி சான்றிதழ் மற்றும் விசையை உருவாக்குவதன் மூலம் நாங்கள் தொடங்குவோம் (ஸ்கிரீன்ஷாட்டில் சிறப்பிக்கப்பட்டுள்ளபடி, சான்றிதழ் உருவாக்கும் போது உங்கள் நிறுவனத்தின் விவரங்களின் அடிப்படையில் கேள்விகளுக்கு பதிலளிக்கவும்).

# mkdir /etc/ssl/tecmint.lan
# cd /etc/ssl/tecmint.lan/
# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/tecmint.lan.key -out /etc/ssl/tecmint.lan.crt
# cd /etc/ssl/tecmint.lan/
# cat tecmint.crt tecmint.key >tecmint.pem
# ls -l

21. அடுத்து, HAProxy கட்டமைப்பு கோப்பை (/etc/haproxy/haproxy.cfg) திறந்து முன்-இறுதி பகுதியைத் திருத்தவும்.

frontend TL
    bind *:80
    bind *:443 ssl crt /etc/ssl/tecmint.lan/tecmint.pem
    redirect  scheme  https  if  !{ ssl_fc }
    mode http
    acl http  ssl_fc,not
    acl https ssl_fc
    http-request set-header X-Forwarded-Protocol http if http
    http-request set-header X-Forwarded-Protocol https if https
    default_backend TL_web_servers

கோப்பை சேமித்து மூடவும்.

22. பின்னர் புதிய மாற்றங்களைப் பயன்படுத்த HAProxy சேவையை மறுதொடக்கம் செய்யுங்கள்.

# systemctl restart haproxy.service

23. அடுத்து, ஒரு வலை உலாவியைத் திறந்து, தளத்தை மீண்டும் அணுக முயற்சிக்கவும். சுய கையொப்பமிட்ட சான்றிதழ் காரணமாக உலாவி பிழையைக் காண்பிக்கும், தொடர மேம்பட்டதைக் கிளிக் செய்க.

இப்பொழுது இத்துடன் நிறைவடைகிறது! ஒவ்வொரு வலை பயன்பாட்டிற்கும் அதன் சொந்த தேவைகள் உள்ளன, உங்கள் தகவல் தொழில்நுட்ப உள்கட்டமைப்பு மற்றும் பயன்பாட்டின் தேவைகளுக்கு ஏற்ப சுமை சமநிலையை வடிவமைத்து கட்டமைக்க வேண்டும்.

இந்த வழிகாட்டியில் பயன்படுத்தப்படும் சில உள்ளமைவு விருப்பங்கள் மற்றும் பொதுவாக HAProxy ஐ எவ்வாறு பயன்படுத்துவது என்பது பற்றிய கூடுதல் நுண்ணறிவுகளைப் பெற, அதிகாரப்பூர்வ HAProxy நிறுவன பதிப்பு ஆவணத்தைப் பார்க்கவும். நீங்கள் ஏதேனும் கேள்விகள் அல்லது எண்ணங்களை கீழே உள்ள கருத்து படிவத்தின் மூலம் இடுகையிடலாம்.