HAProxy سیستم قدرتمند لود بالانسینگ به همراه آموزش نصب
HAProxy نام یک نرم افزار لود بالانسر قدرتمند است که توسط آن، شما قادر خواهید بود یک لود بالانسر قدرتمند ایجاد کنید. این نرم افزار، یکی از قدرتمند ترین، بهترین و حرفه ای ترین لود بالانسر ها در حوزه لود بالانسینگ می باشد. توسط این سیستم، قادر خواهید بود بازدید کنندگان خود را بین سرور های مختلف پخش کنید. بدین صورت آپتایم شما بالاتر خواهد رفت، هم چنین تمام فشار بر روی یک سرور نخواهد بود و بین چند سرور پخش خواهد شد. در ادامه معرفی و آموزش نصب HAProxy همراه ما باشید.
HAProxy امکانات بسیار خوبی به شما خواهد داد، مثلا توسط این نرم افزار، قادر خواهید بود تا در صورتی که یکی از سرور های شما دچار مشکل شد و داون بود، کاربران را به سرور دوم/سوم و… هدایت کنید. این باعث کاهش داون تایم شما و فشار بر روی سرور می شود. توسط HAProxy هم چنین قادر خواهید بود بازدیدکنندگان را به نسبت قدرت هر سرور بین آن ها پخش کنید و بسیاری قابلیت های دیگر…
آموزش نصب HAProxy در Centos 7
نصب این نرم افزار بسیار ساده می باشد و توسط 3 مرحله ساده زیر انجام می شود.
مرحله اول: آپدیت سیستم عامل
همیشه بهتر است سیستم عامل خود را به روز نگاه دارید تا مشکلات نسخه های پیشین سیستم عامل شما در آن رفع شده باشند. برای آپدیت centos ( سنتوس ) کافیست دستور زیر را وارد کنید.
1 | sudo yum update |
مرحله دوم: نصب این نرم افزار توسط مخازن centos
HAProxy در مخازن سنتوس وجود دارد. برای نصب این نرم افزار، کافیست دستور زیر را وارد کنید تا مراحل نصب انجام شود.
1 | sudo yum install haproxy |
نصب لود بالانسر معروف و محبوب HAProxy با طی مراحل فوق به اتمام می رسد. ولی طبیعتا برای معرفی سرور مقصد و این طور مسائل، نیاز به کانفیگ هایی می باشد. برای این کار، نیاز به طی کردن مرحله سوم می باشد.
مرحله سوم: تنظیم کردن HAProxy
پس از اطمینان از نصب بودن nano، دستور زیر را وارد کنید ( در صورتی که با ویرایشگر های دیگر مانند vim و… راحت هستید، با همان ویرایشگر ها می توانید این مرحله را طی کنید ).
1 | nano /etc/haproxy/haproxy.cfg |
محتویات فایل را با محتویات زیر تطبیق دهید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | global log 127.0.0.1 local0 log 127.0.0.1 local1 debug maxconn 45000 # Total Max Connections. daemon nbproc 1 # Number of processing cores. defaults timeout server 86400000 timeout connect 86400000 timeout client 86400000 timeout queue 1000s # [HTTP Site Configuration] listen http_web SERVER_IP_ADDRESS:80 mode http balance roundrobin # Load Balancing algorithm option httpchk option forwardfor server server1 SERVER1_IP_ADDRESS:80 weight 1 maxconn 512 check server server2 SERVER2_IP_ADDRESS:80 weight 1 maxconn 512 check # [HTTPS Site Configuration] listen https_web YOUR_SERVER_IP_FOR_SSL_CERTIFICATED_SITES:443 mode tcp balance source# Load Balancing algorithm reqadd X-Forwarded-Proto: https server server1 SERVER1_IP_ADDRESS_FOR_SSL_SITES:443 weight 1 maxconn 512 check server server2 SERVER2_IP_ADDRESS_FOR SSL_SITES:443 weight 1 maxconn 512 check |
در فایل فوق، به جای SERVER2_IP_ADDRESS و SERVER1_IP_ADDRESS، آی پی های سرور 1 و 2 را قرار دهید. هم چنین در صورتی که تمایل دارید میزان فشار بر روی هر سرور را تغییر دهید، می توانید به صورت نسبی عدد weight 1 را تغییر دهید، افزایش عدد 1 باعث افزایش فشار بر روی سرور می شود. هم چنین به جای YOUR_SERVER_IP_FOR_SSL_CERTIFICATED_SITES آی پی SERVER_IP_ADDRESS را قرار دهید و به جای متغیر های دو خط آخر، SERVER2_IP_ADDRESS و SERVER1_IP_ADDRESS را که جایگزین کرده اید قرار دهید. این تنظیمات به صورت پیش فرض می باشند و در صورتی که سرور شما برای سایت های سرتیفیکیت دار متفاوت است، می بایست تغییرات لازم را ایجاد کنید.
[line]
در صورت وجود هرگونه نیاز به هرگونه مشاوره و یا پرسش برای خرید انواع سرور مجازی، سرور اختصاصی، هاست پربازدید و… به صورت رایگان با تیم پشتیبانی آلماهاست از طریق پرتال کاربری در ارتباط باشید.
پرتال کاربری آلما هاست ( پاسخگویی 24 ساعته ) : کلیک کنید
پوریا
آگوست 8, 2018مقاله بسیرا عالی بود و دروازه جدیدی رو برای من باز کرد ولی یک اشتباه نوشتاری در قسمت reqadd باعث شد که ۳ روز معتل بشوم.
لطفا reqadd X-Forwarded-Proto:\ https را اصلاح فرمایید.
Alma Host
آگوست 8, 2018سلام،
با تشکر از نظر مثبت و نکته ای که قید فرمودید. بله یک s برای پروتکل امن جا افتاده بود، پوزش بابت مشکل. مورد قید شده رفع گردید.
با تقدیم احترام.
سروش
اکتبر 27, 2018سلام. ممنون از آموزشتون.
من یک سوالی دارم. مثلا من الان دو عدد سرور خریدم و میخوام از همون لحظه اول HA رو پیاده سازی کنم. یعنی وقتی من میخوام شروع کنم و لینوکس نصب کنم، خود به خود این لینوکس یا کنترل پنل های cpanel و غیره روی هر دو سرور نصب بشه . در این مورد چه باید کرد. بسیار ممنون میشم راهنمایی بفرمایید.
Alma Host
اکتبر 27, 2018سلام،
برای نصب سی پنل بر روی هر دو سرور به صورت همزمان راهی نیست جز اینکه دستی یا توسط شل اسکریپت بر روی سیستم عاملتون سی پنل رو نصب کنید، البته برخی مجازی ساز ها اینستالر اتوماتیک برای کنترل پنل ها دارند که می تونید ازش استفاده کنید. برای haproxy نیز تئوری به همین صورت است.
با احترام.
امیر
فوریه 13, 2019سلام
از این سرویس میشه برای mtproto استفاده کرد؟
اگر بله شما میتونید کانفیگ کنید؟
برای کانفیگ چقدر هزینه میگیرید؟
Alma Host
فوریه 15, 2019سلام،
راه اندازی لود بالانسر برای استفاده این مورد چندان مقرون به صرفه نخواهد بود. این محصول کاربردش روتینگ هست به زبان ساده و تا حدود زیادی میشه ازش استفاده کرد ولی به طور کلی ما در آلما هاست به دلیل مغایرت با قوانین ج.ا.ا، خدمات کانفیگ سرویس های عبور از فیلترینگ انجام نمی دهیم.
با احترام.
حمید رضا
اکتبر 5, 2020سلام
من میخاستم سوال کنم که وقتی یک سرور توی مثلا دیتای سنتر شما دارم و یک سرور توی دیتا سنتر مثلا پارس آنلاین . موضوع راه اندازی لود بالانسینگ اینها چگونه انجام میشه و اصولا کار چه کسی هست . لطفا راهنمایی فرمایید.
Alma Host
نوامبر 17, 2020سلام،
شما به یک سرور نیاز دارید که این کار رو براتون انجام بده ( حداقل یکی ). اول باید معماری سیستم رو مشخص کنید و بعد بر اون اساس توسط اچ ای پراکسی یا وب سرورهایی مثل انجین ایکس پیاده سازی رو انجام بدید. یا در شرایطی شاید مباحث پیشرفته ابری مورد نیاز باشه. در کل بستگی به معماری سیستم شما داره.
با احترام.
همتا
نوامبر 4, 2020سلام, آموزش بسیار عالی بود, لطفا آموزش ساخت GeoDns یا تفسیر نام دامنه بر اساس منطقه یا کشور را هم قرار دهید.
Alma Host
نوامبر 17, 2020سلام،
چشم انشالله.
با احترام.