Nginx¸ºÔØƽºâÉèÖ㬴òÔì¸ß¿ÉÓÃWeb¼¯Èº
nginx¸ºÔØƽºâÉèÖ㬴òÔì¸ß¿ÉÓÃweb¼¯Èº
СÐò£º
ÔÚÏÖ´ú»¥ÁªÍøÓ¦Óõļܹ¹ÖУ¬¸ºÔØƽºâÊÇÒ»ÖÖ³£¼ûµÄÊÖÒÕÊֶΣ¬ËüÄܹ»½«ÇëÇó·Ö·¢µ½¶à¸öЧÀÍÆ÷ÉÏ£¬´Ó¶øÌá¸ßϵͳµÄÍÌÍÂÁ¿ºÍ¿ÉÓÃÐÔ¡£Nginx×÷Ϊһ¿î¸ßÐÔÄܵÄWebЧÀÍÆ÷ºÍ·´ÏòÊðÀíЧÀÍÆ÷£¬Æ为ÔØƽºâ¹¦Ð§Êܵ½ÁËÆÕ±éµÄÓ¦ÓúÍÈÏ¿É¡£±¾ÎĽ«ÏÈÈÝÔõÑùʹÓÃNginx¾ÙÐиºÔØƽºâÉèÖ㬴Ӷø´òÔì¸ß¿ÉÓõÄWeb¼¯Èº¡£
Ò»¡¢Nginx¸ºÔØƽºâ»ù´¡¿´·¨
¸ºÔØƽºâËã·¨£ºNginxÖ§³Ö¶àÖÖ¸ºÔØƽºâËã·¨£¬°üÀ¨ÂÖѯ£¨round-robin£©¡¢IP¹þÏ££¨ip_hash£©¡¢URL¹þÏ££¨url_hash£©µÈ¡£ÂÖѯËã·¨ÊÇĬÈϵĸºÔØƽºâËã·¨£¬Ëü½«ÇëÇóƾ֤˳Ðò·Ö·¢µ½ºó¶ËЧÀÍÆ÷£»¶ø¹þÏ£Ëã¹æÔòƾ֤Ìض¨µÄÌõ¼þ£¬Èç¿Í»§¶ËIPµØµã»òURL£¬½«ÇëÇó·ÖÅɵ½Àο¿µÄºó¶ËЧÀÍÆ÷ÉÏ¡£
ºó¶ËЧÀÍÆ÷×飺Nginx¸ºÔØƽºâÉèÖÃÖУ¬ÎÒÃÇÐèÒª½«¶à¸öºó¶ËЧÀÍÆ÷½ç˵Ϊһ¸öЧÀÍÆ÷×顣ÿ¸öЧÀÍÆ÷×é»áÓÐÒ»¸öΨһµÄÃû³ÆºÍÒ»×éµØµã£¬Nginx»áƾ֤¸ºÔØƽºâËã·¨½«ÇëÇó·Ö·¢µ½ÕâЩµØµãÉÏ¡£
¶þ¡¢Nginx¸ºÔØƽºâÉèÖÃʾÀý
ÒÔÏÂÊÇÒ»¸ö¼òÆÓµÄNginx¸ºÔØƽºâÉèÖÃʾÀý£¬¼ÙÉèÎÒÃÇÓÐÁ½Ì¨ºó¶ËЧÀÍÆ÷£¨192.168.1.100ºÍ192.168.1.101£©£¬²¢ÇÒʹÓÃÂÖѯËã·¨¾ÙÐиºÔØƽºâ¡£
×°ÖúÍÆô¶¯Nginx£º
ÔÚUbuntuϵͳÉÏ£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁî×°ÖÃNginx£º
sudo apt-get update sudo apt-get install nginx
µÇ¼ºó¸´ÖÆ
×°ÖÃÍê³Éºó£¬Ê¹ÓÃÒÔÏÂÏÂÁîÆô¶¯Nginx£º
sudo systemctl start nginx
µÇ¼ºó¸´ÖÆ
ÉèÖøºÔØƽºâ£º
·¿ªNginxµÄÉèÖÃÎļþ£¨Í¨³£ÊÇ/etc/nginx/nginx.conf£©£¬ÕÒµ½httpÄ£¿é¿éϵÄserver¿é£¬Ìí¼ÓÒÔÏÂÄÚÈÝ£º
http { upstream backend { server 192.168.1.100; server 192.168.1.101; } server { listen 80; location / { proxy_pass http://backend; } } }
µÇ¼ºó¸´ÖÆ
ÔÚÉÏÊöÉèÖÃÖУ¬ÎÒÃÇÔÚhttpÄ£¿éÖнç˵ÁËÒ»¸öÃûΪbackendµÄЧÀÍÆ÷×飬°üÀ¨ÁËÁ½¸öºó¶ËЧÀÍÆ÷µÄµØµã¡£¶øÔÚserver¿éÖУ¬ÎÒÃÇͨ¹ýproxy_passÖ¸ÁÇëÇóת·¢µ½backendЧÀÍÆ÷×é¡£
ÖØÆôNginx£º
Íê³ÉÉèÖúó£¬Ê¹ÓÃÒÔÏÂÏÂÁîÖØÆôNginxÒÔʹÉèÖÃÉúЧ£º
sudo systemctl restart nginx
µÇ¼ºó¸´ÖÆ
ÖÁ´Ë£¬Nginx¸ºÔØƽºâÉèÖþÍÍê³ÉÁË¡£
Èý¡¢Nginx¸ºÔØƽºâËã·¨µ÷ÓÅ
ÔÚÏÖʵӦÓÃÖУ¬ÎÒÃÇ¿ÉÄÜÐèҪƾ֤ÏêϸµÄÓªÒµÐèÇó¶Ô¸ºÔØƽºâËã·¨¾ÙÐе÷ÓÅ¡£ÒÔÏÂÊÇһЩ³£¼ûµÄµ÷ÓÅÒªÁ죺
ʹÓùþÏ£Ëã·¨£º¹þÏ£Ëã·¨¿ÉÒÔ½«ÇëÇóƾ֤Ìض¨Ìõ¼þ·ÖÅɵ½Àο¿µÄºó¶ËЧÀÍÆ÷ÉÏ£¬ÕâÑù¿ÉÒÔÈ·±£Ò»Ð©Ìض¨µÄÇëÇó×ÜÊDZ»·¢Ë͵½Í³Ò»Ì¨Ð§ÀÍÆ÷ÉÏ¡£ÀýÈ磬ÎÒÃÇ¿ÉÒÔƾ֤¿Í»§¶ËµÄIPµØµã»òURL¾ÙÐйþÏ£Ëã·¨µÄÉèÖá£
ȨÖØÉèÖãºNginx»¹Ö§³Ö¸ø²î±ðµÄºó¶ËЧÀÍÆ÷ÉèÖòî±ðµÄȨÖØ£¬´Ó¶øƾ֤ЧÀÍÆ÷µÄÐÔÄܺ͸ºÔØÇéÐξÙÐж¯Ì¬µ÷Åä¡£ÀýÈ磬ÎÒÃÇ¿ÉÒÔ¸øÐÔÄܽϺõÄЧÀÍÆ÷ÉèÖøü¸ßµÄȨÖØÖµ£¬Ê¹Æä´¦Àí¸ü¶àµÄÇëÇó¡£
¿µ½¡¼ì²é£ºNginx»¹¿ÉÒÔͨ¹ý°´ÆڵĿµ½¡¼ì²éÀ´¼à²âºó¶ËЧÀÍÆ÷µÄ¿ÉÓÃÐÔ£¬µ±Ä³¸öЧÀÍÆ÷å´»ú»ò¸ºÔعý¸ßʱ£¬Nginx»á×Ô¶¯½«Æä´ÓЧÀÍÆ÷×éÖÐÒƳý£¬È·±£ÇëÇ󲻻ᷢË͵½ÎÞ·¨´¦ÀíµÄЧÀÍÆ÷ÉÏ¡£
½áÂÛ£º
Nginx×÷Ϊһ¿î¸ßÐÔÄܵÄWebЧÀÍÆ÷ºÍ·´ÏòÊðÀíЧÀÍÆ÷£¬Æ为ÔØƽºâ¹¦Ð§Êǹ¹½¨¸ß¿ÉÓÃWeb¼¯ÈºµÄÖ÷Òª×é³É²¿·Ö¡£Í¨¹ýºÏÀíµÄ¸ºÔØƽºâÉèÖú͵÷ÓÅ£¬ÎÒÃÇ¿ÉÒÔÌá¸ßϵͳµÄÍÌÍÂÁ¿ºÍ¿ÉÓÃÐÔ¡£Ï£Íû±¾ÎĶԸ÷ÈËÃ÷È·ºÍʹÓÃNginx¸ºÔØƽºâÓÐËù×ÊÖú¡£
ÒÔÉϾÍÊÇNginx¸ºÔØƽºâÉèÖ㬴òÔì¸ß¿ÉÓÃWeb¼¯ÈºµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡