{"id":89711,"date":"2020-07-25T13:42:31","date_gmt":"2020-07-25T11:42:31","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos"},"modified":"2020-07-25T13:42:31","modified_gmt":"2020-07-25T11:42:31","slug":"ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos","title":{"rendered":"Instalujeme vyrovn\u00e1va\u010d z\u00e1t\u011b\u017ee HAProxy na CentOS","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><strong><em>P\u0159eklad \u010dl\u00e1nku byl vyhotoven p\u0159ed za\u010d\u00e1tkem kurzu <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/KbNT\/\">\u00abAdministr\u00e1tor Linux. Virtualizace a clustering\u00bb<\/a><\/noindex><\/em><\/strong><\/p>\n<p><img decoding=\"async\" alt=\"Instalujeme vyrovn\u00e1va\u010d z\u00e1t\u011b\u017ee HAProxy na CentOS\" src=\"\/wp-content\/uploads\/2020\/07\/0383023d85d77710b1120e5b896a8433.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Zat\u00ed\u017een\u00ed vyva\u017eov\u00e1n\u00ed je b\u011b\u017en\u00e9 \u0159e\u0161en\u00ed pro horizont\u00e1ln\u00ed \u0161k\u00e1lov\u00e1n\u00ed webov\u00fdch aplikac\u00ed nap\u0159\u00ed\u010d n\u011bkolika hostiteli s poskytov\u00e1n\u00edm jedin\u00e9 p\u0159\u00edstupov\u00e9 \u0161pi\u010dky pro u\u017eivatele k slu\u017eb\u011b. <noindex><a rel=\"nofollow\" href=\"http:\/\/www.haproxy.org\/\">D\u00e1le klientsk\u00fd dotaz vch\u00e1zel do HAProxy, kter\u00e9 \u0159e\u0161ilo n\u00e1sleduj\u00edc\u00ed \u00fakoly:<\/a><\/noindex> je jedn\u00edm z nejpopul\u00e1rn\u011bj\u0161\u00edch program\u016f pro vyva\u017eov\u00e1n\u00ed z\u00e1t\u011b\u017ee s otev\u0159en\u00fdm zdrojov\u00fdm k\u00f3dem, kter\u00fd tak\u00e9 zaji\u0161\u0165uje vysokou dostupnost a funk\u010dnost proxy.<\/p>\n<p><\/p>\n<p>HAProxy usiluje o optimalizaci vyu\u017eit\u00ed zdroj\u016f, maximalizaci propustnosti, minimalizaci doby odezvy a vyvarov\u00e1n\u00ed se p\u0159et\u00ed\u017een\u00ed jednotliv\u00e9ho zdroje. M\u016f\u017ee b\u00fdt nainstalov\u00e1na na mnoha distribuc\u00edch Linuxu, jako je CentOS 8, na kter\u00e9 se v tomto pr\u016fvodci zam\u011b\u0159\u00edme, a tak\u00e9 v syst\u00e9mech <noindex><a rel=\"nofollow\" href=\"https:\/\/upcloud.com\/community\/tutorials\/haproxy-load-balancer-debian\/\">Debian 8<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/upcloud.com\/community\/tutorials\/haproxy-load-balancer-ubuntu\/\">Ubuntu 16<\/a><\/noindex>.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Instalujeme vyrovn\u00e1va\u010d z\u00e1t\u011b\u017ee HAProxy na CentOS\" src=\"\/wp-content\/uploads\/2020\/07\/53bf7d1fa06f06f5d882e573f4984e4f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>HAProxy je zvl\u00e1\u0161t\u011b vhodn\u00e1 pro webov\u00e9 str\u00e1nky s velmi vysok\u00fdm provozem, a proto se \u010dasto pou\u017e\u00edv\u00e1 ke zv\u00fd\u0161en\u00ed spolehlivosti a v\u00fdkonu konfigurac\u00ed webov\u00fdch slu\u017eeb s n\u011bkolika servery. Tento pr\u016fvodce popisuje kroky k nastaven\u00ed HAProxy jako vyva\u017eova\u010de z\u00e1t\u011b\u017ee na cloudov\u00e9m hostiteli CentOS 8, kter\u00fd pot\u00e9 sm\u011bruje provoz na va\u0161e webov\u00e9 servery.<\/p>\n<p><\/p>\n<p>Jako nutnost pro dosa\u017een\u00ed nejlep\u0161\u00edch v\u00fdsledk\u016f byste m\u011bli m\u00edt alespo\u0148 dva webov\u00e9 servery a server pro vyva\u017eov\u00e1n\u00ed z\u00e1t\u011b\u017ee. Na webov\u00fdch serverech by m\u011bla b\u00fdt spu\u0161t\u011bna alespo\u0148 z\u00e1kladn\u00ed webov\u00e1 slu\u017eba, jako je nginx nebo httpd, aby bylo mo\u017en\u00e9 zkontrolovat vyva\u017eov\u00e1n\u00ed z\u00e1t\u011b\u017ee mezi nimi.<\/p>\n<p><\/p>\n<h2 id=\"ustanovka-haproxy-na-centos-8\">Instalace HAProxy na CentOS 8<\/h2>\n<p><\/p>\n<p>Vzhledem k tomu, \u017ee HAProxy je rychle se vyv\u00edjej\u00edc\u00ed aplikace s otev\u0159en\u00fdm zdrojov\u00fdm k\u00f3dem, distribuce, kterou m\u00e1te k dispozici ve standardn\u00edch repozit\u00e1\u0159\u00edch CentOS, nemus\u00ed b\u00fdt nejnov\u011bj\u0161\u00ed verz\u00ed. Abyste zjistili aktu\u00e1ln\u00ed verzi, prove\u010fte n\u00e1sleduj\u00edc\u00ed p\u0159\u00edkaz:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo yum info haproxy<\/code><\/pre>\n<p><\/p>\n<p>HAProxy v\u017edy nab\u00edz\u00ed na v\u00fdb\u011br t\u0159i stabiln\u00ed verze: dv\u011b posledn\u00ed podporovan\u00e9 verze a t\u0159et\u00ed, star\u0161\u00ed, kter\u00e1 st\u00e1le dost\u00e1v\u00e1 kritick\u00e1 aktualizace. V\u017edy se m\u016f\u017eete pod\u00edvat na nejnov\u011bj\u0161\u00ed stabiln\u00ed verzi uvedenou na webu HAProxy a pot\u00e9 se rozhodnout, kterou verzi chcete pou\u017e\u00edt.<\/p>\n<p><\/p>\n<p>V t\u00e9to p\u0159\u00edru\u010dce budeme instalovat nejnov\u011bj\u0161\u00ed stabiln\u00ed verzi 2.0, kter\u00e1 zat\u00edm nebyla dostupn\u00e1 ve standardn\u00edch repozit\u00e1\u0159\u00edch v dob\u011b psan\u00ed p\u0159\u00edru\u010dky. Budete ji muset nainstalovat z prim\u00e1rn\u00edho zdroje. Nejprve si v\u0161ak zkontrolujte, zda m\u00e1te spln\u011bny pot\u0159ebn\u00e9 podm\u00ednky pro sta\u017een\u00ed a kompilaci programu.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo yum install gcc pcre-devel tar make -y<\/code><\/pre>\n<p><\/p>\n<p>St\u00e1hn\u011bte zdrojov\u00fd k\u00f3d pomoc\u00ed n\u00ed\u017ee uveden\u00e9ho p\u0159\u00edkazu. M\u016f\u017eete zkontrolovat, zda je dostupn\u00e1 nov\u011bj\u0161\u00ed verze na <noindex><a rel=\"nofollow\" href=\"http:\/\/www.haproxy.org\/#down\">str\u00e1nce pro stahov\u00e1n\u00ed HAProxy<\/a><\/noindex>.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">wget http:\/\/www.haproxy.org\/download\/2.0\/src\/haproxy-2.0.7.tar.gz -O ~\/haproxy.tar.gz<\/code><\/pre>\n<p><\/p>\n<p>Po dokon\u010den\u00ed stahov\u00e1n\u00ed rozbalte soubory pomoc\u00ed n\u00e1sleduj\u00edc\u00edho p\u0159\u00edkazu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">tar xzvf ~\/haproxy.tar.gz -C ~\/<\/code><\/pre>\n<p><\/p>\n<p>P\u0159ejd\u011bte do rozbalen\u00e9ho adres\u00e1\u0159e se zdrojov\u00fdmi k\u00f3dy:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">cd ~\/haproxy-2.0.7<\/code><\/pre>\n<p><\/p>\n<p>Pot\u00e9 zkompilujte program pro v\u00e1\u0161 syst\u00e9m:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">make TARGET=linux-glibc<\/code><\/pre>\n<p><\/p>\n<p>A nakonec nainstalujte samotnou HAProxy:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo make install<\/code><\/pre>\n<p><\/p>\n<p>Nyn\u00ed je HAProxy nainstalov\u00e1na, ale jej\u00ed provoz vy\u017eaduje dal\u0161\u00ed \u00fapravy. Pokra\u010dujme v konfiguraci softwaru a slu\u017eeb n\u00ed\u017ee.<\/p>\n<p><\/p>\n<h2 id=\"nastroyka-haproxy-pod-vash-server\">Konfigurace HAProxy pro v\u00e1\u0161 server<\/h2>\n<p><\/p>\n<p>Nyn\u00ed p\u0159idejte n\u00e1sleduj\u00edc\u00ed adres\u00e1\u0159e a soubor se statistikami pro z\u00e1znamy HAProxy:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo mkdir -p \/etc\/haproxy\nsudo mkdir -p \/var\/lib\/haproxy \nsudo touch \/var\/lib\/haproxy\/stats<\/code><\/pre>\n<p><\/p>\n<p>Vytvo\u0159te symbolick\u00fd odkaz pro bin\u00e1rn\u00ed soubory, abyste mohli spou\u0161t\u011bt p\u0159\u00edkazy HAProxy jako b\u011b\u017en\u00fd u\u017eivatel:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo ln -s \/usr\/local\/sbin\/haproxy \/usr\/sbin\/haproxy<\/code><\/pre>\n<p><\/p>\n<p>Pokud chcete p\u0159idat proxy server do syst\u00e9mu jako slu\u017ebu, zkop\u00edrujte soubor haproxy.init z examples do sv\u00e9ho adres\u00e1\u0159e \/etc\/init.d. Upravte opr\u00e1vn\u011bn\u00ed k souboru, aby byl skript spustiteln\u00fd, a pot\u00e9 restartujte d\u00e9mon systemd:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo cp ~\/haproxy-2.0.7\/examples\/haproxy.init \/etc\/init.d\/haproxy\nsudo chmod 755 \/etc\/init.d\/haproxy\nsudo systemctl daemon-reload<\/code><\/pre>\n<p><\/p>\n<p>Mus\u00edte tak\u00e9 povolit slu\u017eb\u011b automatick\u00e9 spu\u0161t\u011bn\u00ed p\u0159i startu syst\u00e9mu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo chkconfig haproxy on<\/code><\/pre>\n<p><\/p>\n<p>Pro pohodl\u00ed se tak\u00e9 doporu\u010duje p\u0159idat nov\u00e9ho u\u017eivatele pro spu\u0161t\u011bn\u00ed HAProxy:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo useradd -r haproxy<\/code><\/pre>\n<p><\/p>\n<p>Pot\u00e9 m\u016f\u017eete znovu zkontrolovat \u010d\u00edslo nainstalovan\u00e9 verze pomoc\u00ed n\u00e1sleduj\u00edc\u00edho p\u0159\u00edkazu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">haproxy -v\nHA-Proxy verze 2.0.7 2019\/09\/27 - https:\/\/haproxy.org\/<\/code><\/pre>\n<p><\/p>\n<p>V na\u0161em p\u0159\u00edpad\u011b by m\u011bla b\u00fdt verze 2.0.7, jak je uvedeno v p\u0159\u00edkladu v\u00fdstupu v\u00fd\u0161e.<\/p>\n<p><\/p>\n<p>Nakonec je firewall v CentOS 8 ve v\u00fdchoz\u00edm nastaven\u00ed pom\u011brn\u011b restriktivn\u00ed pro tento projekt. Pou\u017eijte n\u00e1sleduj\u00edc\u00ed p\u0159\u00edkazy pro povolen\u00ed pot\u0159ebn\u00fdch slu\u017eeb a restartov\u00e1n\u00ed firewallu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo firewall-cmd --permanent --zone=public --add-service=http\nsudo firewall-cmd --permanent --zone=public --add-port=8181\/tcp\nsudo firewall-cmd --reload<\/code><\/pre>\n<p><\/p>\n<h2 id=\"nastroyka-balansirovschika-nagruzki\">Nastaven\u00ed vyrovn\u00e1va\u010de z\u00e1t\u011b\u017ee<\/h2>\n<p><\/p>\n<p>Nastaven\u00ed HAProxy je pom\u011brn\u011b jednoduch\u00fd proces. V podstat\u011b sta\u010d\u00ed \u0159\u00edct HAProxy, jak\u00e1 spojen\u00ed m\u00e1 sledovat a kam je m\u00e1 p\u0159esm\u011brov\u00e1vat.<\/p>\n<p><\/p>\n<p>To se prov\u00e1d\u00ed vytvo\u0159en\u00edm konfigura\u010dn\u00edho souboru \/etc\/haproxy\/haproxy.cfg s ur\u010duj\u00edc\u00edmi nastaven\u00edmi. M\u016f\u017eete si p\u0159e\u010d\u00edst o parametrech konfigurace HAProxy <noindex><a rel=\"nofollow\" href=\"https:\/\/cbonte.github.io\/haproxy-dconv\/2.0\/configuration.html\">na str\u00e1nce dokumentace<\/a><\/noindex>, pokud se chcete dozv\u011bd\u011bt v\u00edce.<\/p>\n<p><\/p>\n<h2 id=\"balansirovka-nagruzki-na-transportnom-urovne-layer-4\">Vyrovn\u00e1v\u00e1n\u00ed z\u00e1t\u011b\u017ee na transportn\u00ed \u00farovni (layer 4)<\/h2>\n<p><\/p>\n<p>Za\u010dn\u011bme z\u00e1kladn\u00edm nastaven\u00edm. Vytvo\u0159te nov\u00fd konfigura\u010dn\u00ed soubor, nap\u0159\u00edklad pomoc\u00ed <strong>vi<\/strong> s n\u00e1sleduj\u00edc\u00edm p\u0159\u00edkazem:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo vi \/etc\/haproxy\/haproxy.cfg<\/code><\/pre>\n<p><\/p>\n<p>P\u0159idejte do souboru n\u00e1sleduj\u00edc\u00ed sekce. Nahrad\u00edte <strong>server_name<\/strong> t\u00edm, co by m\u011blo odkazovat na va\u0161e servery na str\u00e1nce statistiky, a <strong>private_ip<\/strong> \u2014 priv\u00e1tn\u00edmi IP adresami server\u016f, na kter\u00e9 chcete sm\u011brovat webov\u00fd provoz. M\u016f\u017eete zkontrolovat priv\u00e1tn\u00ed IP adresy <noindex><a rel=\"nofollow\" href=\"https:\/\/hub.upcloud.com\/networks\/private?_ga=2.194047085.1141044831.1595511160-752947894.1595511160\">v ovl\u00e1dac\u00edm panelu UpCloud<\/a><\/noindex> a na kart\u011b <em>Private network<\/em> v nab\u00eddce <em>S\u00ed\u0165<\/em>.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">global\n   log \/dev\/log local0\n   log \/dev\/log local1 notice\n   chroot \/var\/lib\/haproxy\n   stats timeout 30s\n   user haproxy\n   group haproxy\n   daemon\n\ndefaults\n   log global\n   mode http\n   option httplog\n   option dontlognull\n   timeout connect 5000\n   timeout client 50000\n   timeout server 50000\n\nfrontend http_front\n   bind *:80\n   stats uri \/haproxy?stats\n   default_backend http_back\n\nbackend http_back\n   balance roundrobin\n   server server_name1 private_ip1:80 check\n   server server_name2 private_ip2:80 check<\/code><\/pre>\n<p><\/p>\n<p>To definuje vyrovn\u00e1va\u010d z\u00e1t\u011b\u017ee na transportn\u00ed \u00farovni (layer 4) s extern\u00edm n\u00e1zvem http_front, kter\u00fd poslouch\u00e1 na portu 80, a pot\u00e9 sm\u011bruje provoz na v\u00fdchoz\u00ed backend s n\u00e1zvem http_back. Dal\u0161\u00ed statistiky \/haproxy?stats p\u0159ipoj\u00ed str\u00e1nku statistik na dan\u00e9 adrese.<\/p>\n<p><\/p>\n<h2 id=\"razlichnye-algoritmy-balansirovki-nagruzki\">R\u016fzn\u00e9 algoritmy vyrovn\u00e1v\u00e1n\u00ed z\u00e1t\u011b\u017ee.<\/h2>\n<p><\/p>\n<p>Ur\u010den\u00ed server\u016f v sekci backendu umo\u017e\u0148uje HAProxy pou\u017e\u00edvat tyto servery pro vyrovn\u00e1v\u00e1n\u00ed z\u00e1t\u011b\u017ee podle algoritmu round-robin, kdykoli je to mo\u017en\u00e9.<\/p>\n<p><\/p>\n<p>Algoritmy vyrovn\u00e1v\u00e1n\u00ed z\u00e1t\u011b\u017ee se pou\u017e\u00edvaj\u00ed k tomu, aby ur\u010dili, na kter\u00fd server v backendu se ka\u017ed\u00e9 spojen\u00ed p\u0159en\u00e1\u0161\u00ed. Zde jsou n\u011bkter\u00e9 u\u017eite\u010dn\u00e9 mo\u017enosti:<\/p>\n<p><\/p>\n<ul>\n<li><strong>Roundrobin:<\/strong> ka\u017ed\u00fd server se pou\u017e\u00edv\u00e1 st\u0159\u00eddav\u011b podle sv\u00e9 hmotnosti. To je nejplynulej\u0161\u00ed a nejf\u00e9rov\u011bj\u0161\u00ed algoritmus, kdy\u017e je \u010das zpracov\u00e1n\u00ed server\u016f rovnom\u011brn\u011b rozlo\u017een. Tento algoritmus je dynamick\u00fd a umo\u017e\u0148uje regulaci hmotnosti serveru za b\u011bhu.<\/li>\n<li><strong>Leastconn:<\/strong> server s nejmen\u0161\u00edm po\u010dtem p\u0159ipojen\u00ed je vybr\u00e1n. Cyklus prob\u00edh\u00e1 mezi servery se stejnou z\u00e1t\u011b\u017e\u00ed. Pou\u017eit\u00ed tohoto algoritmu se doporu\u010duje pro dlouh\u00e9 relace, jako jsou LDAP, SQL, TSE atd., ale p\u0159\u00edli\u0161 se nehod\u00ed pro kr\u00e1tk\u00e9 relace, jako je HTTP.<\/li>\n<li><strong>Prvn\u00ed:<\/strong> prvn\u00ed server s dostupn\u00fdmi sloty pro p\u0159ipojen\u00ed z\u00edsk\u00e1v\u00e1 spojen\u00ed. Servery jsou vyb\u00edr\u00e1ny od nejni\u017e\u0161\u00edho \u010d\u00edseln\u00e9ho identifik\u00e1toru po nejvy\u0161\u0161\u00ed, co\u017e defaultn\u011b odpov\u00edd\u00e1 postaven\u00ed serveru ve farm\u011b. Jakmile server dos\u00e1hne hodnoty maxconn, pou\u017eije se dal\u0161\u00ed server.<\/li>\n<li><strong>Zdroj:<\/strong> IP adresa zdroje je hashov\u00e1na a rozd\u011blena na celkovou v\u00e1hu spu\u0161t\u011bn\u00fdch server\u016f, aby se ur\u010dil, kter\u00fd server bude p\u0159ij\u00edmat \u017e\u00e1dost. Takto bude stejn\u00e1 IP adresa klienta v\u017edy p\u0159id\u011blena stejn\u00e9mu serveru, zat\u00edmco servery z\u016fst\u00e1vaj\u00ed nem\u011bnn\u00e9.<\/li>\n<\/ul>\n<p><\/p>\n<h2 id=\"nastroyka-balansirovki-nagruzki-na-prikladnom-urovne-layer-7\">Nastaven\u00ed vyva\u017eov\u00e1n\u00ed z\u00e1t\u011b\u017ee na aplika\u010dn\u00ed \u00farovni (layer 7)<\/h2>\n<p><\/p>\n<p>Dal\u0161\u00ed dostupnou mo\u017enost\u00ed je nastavit vyva\u017eova\u010d z\u00e1t\u011b\u017ee pro provoz na aplika\u010dn\u00ed \u00farovni (layer 7), co\u017e je u\u017eite\u010dn\u00e9, kdy\u017e jsou \u010d\u00e1sti va\u0161\u00ed webov\u00e9 aplikace um\u00edst\u011bny na r\u016fzn\u00fdch hostitel\u00edch. Toho lze dos\u00e1hnout regulac\u00ed p\u0159ed\u00e1n\u00ed spojen\u00ed, nap\u0159\u00edklad podle URL.<\/p>\n<p><\/p>\n<p>Otev\u0159ete konfigura\u010dn\u00ed soubor HAProxy pomoc\u00ed textov\u00e9ho editoru:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo vi \/etc\/haproxy\/haproxy.cfg<\/code><\/pre>\n<p><\/p>\n<p>Pot\u00e9 nakonfigurujte segmenty frontend a backend podle n\u00e1sleduj\u00edc\u00edho p\u0159\u00edkladu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">frontend http_front\n   bind *:80\n   stats uri \/haproxy?stats\n   acl url_blog path_beg \/blog\n   use_backend blog_back if url_blog\n   default_backend http_back\n\nbackend http_back\n   balance roundrobin\n   server server_name1 private_ip1:80 check\n   server server_name2 private_ip2:80 check\n\nbackend blog_back\n   server server_name3 private_ip3:80 check<\/code><\/pre>\n<p><\/p>\n<p>Frontend vyhla\u0161uje pravidlo ACL s n\u00e1zvem url_blog, kter\u00e9 se aplikuje na v\u0161echna p\u0159ipojen\u00ed s cestami za\u010d\u00ednaj\u00edc\u00edmi na \/blog. Use_backend ur\u010duje, \u017ee spojen\u00ed odpov\u00eddaj\u00edc\u00ed podm\u00ednce url_blog by m\u011bla obsluhovat backend s n\u00e1zvem blog_back, zat\u00edmco v\u0161echny ostatn\u00ed po\u017eadavky jsou zpracov\u00e1ny defaultn\u00edm backendem.<\/p>\n<p><\/p>\n<p>Na stran\u011b backendu konfigurace vytv\u00e1\u0159\u00ed dv\u011b skupiny server\u016f: http_back, jak bylo d\u0159\u00edve, a novou, nazvanou blog_back, kter\u00e1 obsluhuje spojen\u00ed s example.com\/blog.<\/p>\n<p><\/p>\n<p>Po zm\u011bn\u011b nastaven\u00ed ulo\u017ete soubor a restartujte HAProxy pomoc\u00ed n\u00e1sleduj\u00edc\u00edho p\u0159\u00edkazu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo systemctl restart haproxy<\/code><\/pre>\n<p><\/p>\n<p>Pokud se p\u0159i spu\u0161t\u011bn\u00ed objev\u00ed varov\u00e1n\u00ed nebo chybov\u00e1 hl\u00e1\u0161en\u00ed, zkontrolujte konfiguraci a ujist\u011bte se, \u017ee jste vytvo\u0159ili v\u0161echny pot\u0159ebn\u00e9 soubory a slo\u017eky, a pot\u00e9 zkuste znovu restartovat.<\/p>\n<p><\/p>\n<h2 id=\"testirovanie-nastroyki\">Testov\u00e1n\u00ed nastaven\u00ed<\/h2>\n<p><\/p>\n<p>Jakmile je HAProxy nakonfigurov\u00e1no a spu\u0161t\u011bno, otev\u0159ete ve\u0159ejnou IP adresu serveru vyrovn\u00e1va\u010de z\u00e1t\u011b\u017ee v prohl\u00ed\u017ee\u010di a zkontrolujte, zda se spr\u00e1vn\u011b p\u0159ipojujete k backendu. Parametr stats uri v konfiguraci vytv\u00e1\u0159\u00ed str\u00e1nku statistik na zadan\u00e9 adrese.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">http:\/\/load_balancer_public_ip\/haproxy?stats<\/code><\/pre>\n<p><\/p>\n<p>Kdy\u017e na\u010dtete str\u00e1nku statistik, pokud se v\u0161echny va\u0161e servery zobrazuj\u00ed zelen\u011b, nastaven\u00ed prob\u011bhlo \u00fasp\u011b\u0161n\u011b!<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Instalujeme vyrovn\u00e1va\u010d z\u00e1t\u011b\u017ee HAProxy na CentOS\" src=\"\/wp-content\/uploads\/2020\/07\/ce912c5824d0294537b984fe04bdcc8b.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Str\u00e1nka statistik obsahuje u\u017eite\u010dn\u00e9 informace pro sledov\u00e1n\u00ed va\u0161ich webov\u00fdch hostitel\u016f, v\u010detn\u011b \u010dasu provozu\/v\u00fdpadku a po\u010dtu relac\u00ed. Pokud je server ozna\u010den \u010derven\u011b, ujist\u011bte se, \u017ee je server zapnut\u00fd a \u017ee ho m\u016f\u017eete pingnout z vyrovn\u00e1va\u010de z\u00e1t\u011b\u017ee.<\/p>\n<p><\/p>\n<p>Pokud v\u00e1\u0161 vyrovn\u00e1va\u010d z\u00e1t\u011b\u017ee neodpov\u00edd\u00e1, ujist\u011bte se, \u017ee HTTP spojen\u00ed nejsou blokov\u00e1na firewallem. Tak\u00e9 se ujist\u011bte, \u017ee HAProxy b\u011b\u017e\u00ed pomoc\u00ed n\u00e1sleduj\u00edc\u00edho p\u0159\u00edkazu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo systemctl status haproxy<\/code><\/pre>\n<p><\/p>\n<h2 id=\"zaschita-stranicy-statistiki-s-pomoschyu-parolya\">Ochrana str\u00e1nky statistik pomoc\u00ed hesla<\/h2>\n<p><\/p>\n<p>Pokud je v\u0161ak str\u00e1nka statistik jednodu\u0161e uvedena na frontendu, je otev\u0159ena pro ve\u0159ejn\u00e9 prohl\u00ed\u017een\u00ed, co\u017e m\u016f\u017ee b\u00fdt \u0161patn\u00fd n\u00e1pad. M\u00edsto toho j\u00ed m\u016f\u017eete p\u0159id\u011blit vlastn\u00ed \u010d\u00edslo portu p\u0159id\u00e1n\u00edm n\u00e1sleduj\u00edc\u00edho p\u0159\u00edkladu na konec va\u0161eho souboru haproxy.cfg. Nahra\u010fte <strong>u\u017eivatelsk\u00e9 jm\u00e9no<\/strong> a <strong>heslo<\/strong> n\u011b\u010d\u00edm bezpe\u010dn\u00fdm:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">listen stats\n   bind *:8181\n   stats enable\n   stats uri \/\n   stats realm Haproxy Statistics\n   stats auth username:password<\/code><\/pre>\n<p><\/p>\n<p>Po p\u0159id\u00e1n\u00ed nov\u00e9 skupiny poslucha\u010d\u016f odstra\u0148te star\u00fd odkaz na stats uri z frontov\u00e9 skupiny. A\u017e skon\u010d\u00edte, ulo\u017ete soubor a restartujte HAProxy.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">sudo systemctl restart haproxy<\/code><\/pre>\n<p><\/p>\n<p>Pot\u00e9 znovu otev\u0159ete vyrovn\u00e1va\u010d z\u00e1t\u011b\u017ee s nov\u00fdm \u010d\u00edslem portu a p\u0159ihlaste se jm\u00e9nem u\u017eivatele a heslem, kter\u00e9 jste uvedli v konfigura\u010dn\u00edm souboru.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">http:\/\/load_balancer_public_ip:8181<\/code><\/pre>\n<p><\/p>\n<p>Ujist\u011bte se, \u017ee v\u0161echny va\u0161e servery se st\u00e1le zobrazuj\u00ed zelen\u011b, a pot\u00e9 otev\u0159ete pouze IP vyrovn\u00e1va\u010de z\u00e1t\u011b\u017ee bez jak\u00fdchkoli \u010d\u00edsel port\u016f ve va\u0161em prohl\u00ed\u017ee\u010di.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">http:\/\/load_balancer_public_ip\/<\/code><\/pre>\n<p><\/p>\n<p>Pokud m\u00e1te na sv\u00fdch intern\u00edch serverech n\u011bjakou rozmanitost c\u00edlov\u00fdch str\u00e1nek, v\u0161imnete si, \u017ee poka\u017ed\u00e9, kdy\u017e str\u00e1nku znovu na\u010dtete, dostanete odpov\u011b\u010f od jin\u00e9ho hostitele. M\u016f\u017eete vyzkou\u0161et r\u016fzn\u00e9 algoritmy vyva\u017eov\u00e1n\u00ed v sekci konfigurace nebo se sezn\u00e1mit s <noindex><a rel=\"nofollow\" href=\"https:\/\/cbonte.github.io\/haproxy-dconv\/\">\u00faplnou dokumentac\u00ed<\/a><\/noindex>.<\/p>\n<p><\/p>\n<h2 id=\"zaklyuchenie-balansirovschik-nagruzki-haproxy\">Z\u00e1v\u011br: Vyva\u017eova\u010d zat\u00ed\u017een\u00ed HAProxy<\/h2>\n<p><\/p>\n<p>Blahop\u0159ejeme k \u00fasp\u011b\u0161n\u00e9 konfiguraci vyva\u017eova\u010de zat\u00ed\u017een\u00ed HAProxy! I s z\u00e1kladn\u00edm nastaven\u00edm vyva\u017eov\u00e1n\u00ed zat\u00ed\u017een\u00ed m\u016f\u017eete v\u00fdrazn\u011b zv\u00fd\u0161it v\u00fdkon a dostupnost va\u0161\u00ed webov\u00e9 aplikace. Tato p\u0159\u00edru\u010dka je pouze \u00favodem do vyva\u017eov\u00e1n\u00ed zat\u00ed\u017een\u00ed pomoc\u00ed HAProxy, kter\u00e1 je schopna mnohem v\u00edc, ne\u017e co je mo\u017en\u00e9 popsat v kr\u00e1tk\u00e9m nastaven\u00ed. Doporu\u010dujeme experimentovat s r\u016fzn\u00fdmi konfiguracemi pomoc\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/cbonte.github.io\/haproxy-dconv\/2.0\/configuration.html\">rozs\u00e1hl\u00e9 dokumentace<\/a><\/noindex>, dostupn\u00e9 pro HAProxy, a pot\u00e9 za\u010d\u00edt s pl\u00e1nov\u00e1n\u00edm vyva\u017eov\u00e1n\u00ed zat\u00ed\u017een\u00ed pro va\u0161e produk\u010dn\u00ed prost\u0159ed\u00ed.<\/p>\n<p><\/p>\n<p>Pou\u017eit\u00edm n\u011bkolika hostitel\u016f k ochran\u011b va\u0161\u00ed webov\u00e9 slu\u017eby pomoc\u00ed z\u00e1lo\u017en\u00edho v\u00fdkonu m\u016f\u017ee s\u00e1m vyva\u017eova\u010d zat\u00ed\u017een\u00ed st\u00e1le p\u0159edstavovat jedin\u00e9 m\u00edsto selh\u00e1n\u00ed. M\u016f\u017eete je\u0161t\u011b v\u00edce zv\u00fd\u0161it vysokou dostupnost nastaven\u00edm plovouc\u00edho IP mezi n\u011bkolika vyva\u017eova\u010di zat\u00ed\u017een\u00ed. O tom se m\u016f\u017eete dozv\u011bd\u011bt v\u00edce v na\u0161em <noindex><a rel=\"nofollow\" href=\"https:\/\/upcloud.com\/community\/tutorials\/floating-ip-addresses\/\">\u010dl\u00e1nku o plovouc\u00edch IP adres\u00e1ch na UpCloud<\/a><\/noindex>.<\/p>\n<p>Dal\u0161\u00ed informace o kurzu <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/KbNT\/\">\u00abAdministr\u00e1tor Linux. Virtualizace a clustering\u00bb<\/a><\/noindex>***<\/p>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/512238\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0438\u0437\u0430\u0446\u0438\u044f\u00bb \u0411\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u2014 \u044d\u0442\u043e \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u0445\u043e\u0441\u0442\u0430\u043c \u0441 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c \u0435\u0434\u0438\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0441\u0435\u0440\u0432\u0438\u0441\u0443. HAProxy \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0434\u043b\u044f \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":89713,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-89711","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 HAProxy \u043d\u0430 CentOS | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-07-25T11:42:31+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-07-25T11:42:31+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Nastavujeme vyva\u017eova\u010d zat\u00ed\u017een\u00ed HAProxy na CentOS | ProHoster","description":"P\u0159eklad \u010dl\u00e1nku byl p\u0159ipraven p\u0159ed zah\u00e1jen\u00edm kurzu \u201eAdministr\u00e1tor Linux.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 HAProxy \u043d\u0430 CentOS | ProHoster","og:description":"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux.","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/ustanavlivaem-balansirovshhik-nagruzki-haproxy-na-centos","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-07-25T11:42:31+00:00","article:modified_time":"2020-07-25T11:42:31+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"89711","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 13:05:27","updated":"2022-10-04 12:00:44","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/89711","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=89711"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/89711\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/89713"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=89711"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=89711"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=89711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}