Как да настроите надстройки без надзор на Debian 9 (разтягане)
Използване на различна система? Ако закупите сървър на Debian, винаги трябва да имате най-новите корекции за сигурност и актуализации, независимо дали спите или не
HAProxy е мрежово софтуерно приложение, което предлага висока наличност, балансиране на натоварването и прокси за TCP и HTTP мрежови приложения. Той е подходящ за уебсайтове с голям трафик и захранва много популярни сайтове в мрежата. Тази статия ще ви покаже как да инсталирате и конфигурирате HAProxy на Debian 9.1.
Въпреки че HAProxy има няколко изявени функции, тази статия се фокусира върху това как да настроите HAProxy да "прокси" вашето уеб приложение.
Debian 9 вече се доставя с HAProxy 1.7 (най-новата стабилна версия към момента на писане) и можем просто да го инсталираме с помощта на apt-get
:
# apt-get update
# apt-get install haproxy
Ако предишните команди са били успешни, значи сте инсталирали HAProxy и можете да продължите към следващата стъпка.
Конфигурационният файл на HAProxy е разделен на две секции - "глобален" и "прокси сървър". Едната се занимава с конфигурация за целия процес, докато последната се състои от конфигурация по подразбиране, преден интерфейс и бекенд секции.
Използвайки любимия си текстов редактор, отворете /etc/haproxy/haproxy.cfg
и забележете предварително дефинираните секции: "глобален" и "по подразбиране". Първото нещо, което може да искате да направите, е да увеличите maxconn
до разумен размер, тъй като това се отразява на връзките, които HAProxy позволява. Твърде много връзки може да доведе до срив на вашата уеб услуга поради много заявки. Ще трябва да коригирате размера, за да видите какво работи за вас. В глобалната секция избрахме maxconn
стойност от 3072
.
global
daemon
maxconn 3072
В секцията по подразбиране добавете следния ред под режим http
:
option forwardfor
Това ще добави X-Forwarded-For
заглавки към всяка заявка, което позволява на вашите бекенд сървъри да научат оригиналния IP адрес на потребителя.
Също така добавете този ред, за да активирате режима за затваряне на HTTP връзка от страна на сървъра, като същевременно запазите възможността за поддръжка на HTTP поддържане на активност от страна на клиента. Това намалява латентността от страна на клиента и помага за спестяване на ресурсите на сървъра:
option http-server-close
Ако искате да използвате keep-alive както от страна на клиента, така и от страна на сървъра, тогава можете да използвате option http-keep-alive
вместо това. Тази опция е особено полезна, когато разходите за установяване на нова връзка със сървъра са значителни в сравнение с разходите за извличане на искания ресурс.
Накрая полученият конфигурационен файл ще изглежда така:
defaults
mode http
option forwardfor
option http-server-close
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
За да настроите прокси сървъра си, ще трябва да добавите две секции към конфигурационния файл, за да дефинирате двете части на прокси сървъра: предната и задната част.
Предният интерфейс ще обработва вашите HTTP връзки. Добавете следното в края на вашия haproxy.cfg
файл:
frontend http-frontend
bind public_ip:80
reqadd X-Forwarded-Proto:\ http
default_backend wwwbackend
Не забравяйте да замените public_ip
с публичния IP адрес или име на домейн на вашия сървър.
Настройте своя бекенд, като добавите следните редове в края на вашия конфигурационен файл:
backend wwwbackend
server 1-www server1_ip:80 check
server 2-www server2_ip:80 check
server 3-www server3_ip:80 check
Използваната тук бекенд конфигурация създава 3 връзки с име X-www
. ( X
е 1, 2 или 3.) Всеки от тях съответства на serverX_ip:80
адрес. (Заменете serverX_ip
с IP адресите на вашите Vultr екземпляри.) Това ще ви позволи да балансирате натоварването между всеки сървър в определения набор от сървъри (ако приемем, че всеки IP адрес съответства на различен сървър). В check
опцията прави натоварването стабилизатор извърши проверки на здравето на сървъра.
Запазете конфигурационния файл и след това рестартирайте HAProxy:
service haproxy restart
Ако всичко работи, тогава ще можете да се свържете http://public_ip/
(заменяйки го с вашия публичен IP или име на домейн, както е конфигурирано в стъпката на интерфейса) и да видите вашия уебсайт.
Ако вашият HAProxy екземпляр откаже да стартира след вашите модификации, има вероятност да имате грешка някъде в конфигурационния файл. За да получите ясни съобщения за проблема в конфигурационния файл, можете да опитате да стартирате HAProxy ръчно, като използвате тази команда:
# haproxy -f /etc/haproxy/haproxy.cfg
Например, ако видите изход като този:
[ALERT] 234/195612 (2561) : parsing [/etc/haproxy/haproxy.cfg:48] : server 1-www has neither service port nor check port nor tcp_check rule 'connect' with port information. Check has been disabled.
[ALERT] 234/195612 (2561) : Error(s) found in configuration file : /etc/haproxy/haproxy.cfg
[ALERT] 234/195612 (2561) : Fatal errors found in configuration.
След това сте забравили да посочите номера на порта за сървъра 1-www
.
Използване на различна система? Ако закупите сървър на Debian, винаги трябва да имате най-новите корекции за сигурност и актуализации, независимо дали спите или не
Този урок обяснява как да настроите DNS сървър с помощта на Bind9 на Debian или Ubuntu. В цялата статия заменете your-domain-name.com съответно. При th
В тази статия ще видим как да компилирате и инсталирате основната линия на Nginx от официалните източници на Nginx с модула PageSpeed, който ви позволява да
Използване на различна система? Въведение Kanboard е безплатна програма за управление на проекти с отворен код, която е предназначена да улеснява и визуализира
Използване на различна система? Gitea е алтернатива с отворен код, самостоятелно хоствана система за контрол на версиите, задвижвана от Git. Gitea е написана на Голанг и е
Въведение Lynis е безплатен инструмент за одит на системата с отворен код, който се използва от много системни администратори за проверка на целостта и заздравяване на техните системи. аз
Използване на различна система? Thelia е инструмент с отворен код за създаване на уебсайтове за е-бизнес и управление на онлайн съдържание, написано на PHP. Изходен код на Thelia i
Какво ви трябва Vultr VPS с поне 1 GB RAM. SSH достъп (с root/административни привилегии). Стъпка 1: Инсталиране на BungeeCord На първо място
Golang е език за програмиране, разработен от Google. Благодарение на своята гъвкавост, простота и надеждност, Golang се превърна в един от най-популярните
Ако сте забравили вашата MySQL root парола, можете да я нулирате, като следвате стъпките в тази статия. Процесът е доста прост и работи върху тях
В това ръководство ще настроим сървър за игри Counter Strike: Source на Debian 7. Тези команди бяха тествани на Debian 7, но те също трябва да работят o
В това ръководство ще научите как да настроите Unturned 2.2.5 сървър на Vultr VPS, работещ с Debian 8. Забележка: Това е редактирана версия на Unturned, която не
В този урок ще научите как да инсталирате Cachet на Debian 8. Cachet е мощна система за страници със статус с отворен код. Инсталиране Този урок е готов
Въведение В тази статия, разгледайте как да архивирате множество MySQL или MariaDB бази данни, които се намират на една и съща машина с помощта на персонализиран bash scrip
Тази статия ще ви научи как да настроите chroot jail на Debian. Предполагам, че използвате Debian 7.x. Ако използвате Debian 6 или 8, това може да работи, bu
Използване на различна система? Reader Self 3.5 е прост и гъвкав, безплатен и отворен код, самостоятелно хостван RSS четец и алтернатива на Google Reader. Reader Sel
Използване на различна система? Backdrop CMS 1.8.0 е проста и гъвкава, удобна за мобилни устройства, безплатна система за управление на съдържанието (CMS) с отворен код, която ни позволява
В този урок ще инсталираме SteamCMD. SteamCMD може да се използва за изтегляне и инсталиране на много сървъри за игри на Steam, като Counter-Strike: Global Offensiv
Както може би знаете, хранилищата на Debian се актуализират много бавно. Към момента на писане версиите на версията на Python са 2.7.12 и 3.5.2, но в хранилището на Debian 8
Samba е решение с отворен код, което позволява на потребителите да настройват бързо и сигурно споделяне на файлове и печат. В тази статия ще разгледам как да настроя Samba wit
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.
Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.
Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.
Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…
Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.
Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.
Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.
В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.
Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече