Home Software Linux WS Cloud – Router s vysokou dostupností

Služba WEDOS Cloud umožňuje vytvoření několika VPS a sdílet mezi nimi jednu IP Adresu, díky této funkci je možné dosáhnout vysoké dostupnosti služeb umístěných na vps. V případě, že by jeden z VPS serverů byl nedostupný nebo bylo potřeba jej dočasně vypnout z důvodů údržby převzal by veškerý provoz druhý VPS server.

Minimálně bude potřeba IP Adresa pro každý z routerů a jedna, která bude sdílená mezi servery, celkem je tedy potřeba mít u cloudu 3 veřejné IP Adresy. Ostatní parametry VPS vybíráme podle očekávané zátěže, minimálně doporučujeme využít alespoň 1vCPU a 512MB paměti pro každý z routerů.

Každý router bude mít 2 síťová rozhraní, jedno pro přístup k internetu a jedno pro připojení k ostatním VPS. Na obou rozhraních bude aktivní služba Keepalived využívající VRRP k předávání IP Adresy mezi routery, tato adresa bude vždy přidělena jednomu z routerů, který bude odbavovat veškerý provoz. V případě výpadku jednoho z routerů se adresa automaticky přenese na druhý router během pár vteřin, výpadek je tedy skoro nepoznatelný.

Před tím, než se pustíme do samotného vytváření a konfigurace routerů je potřeba v rozhraní Open Nebuly přepnout režim zobrazení na advanced, aby se nám zobrazily pokročilé funkce mezi něž patří i samotné routery. Toto nastavení lze změnit po kliknutí na naše uživatelské jméno a v sekci Views přepnutím na advanced.

Vytvoření routerů

Routery je možné vytvořit v sekci Instances vybráním položky Virtual routers.

Po kliknutí na tlačítko pro přidání nového routeru, se nám otevře stránka, kde vyplníme:

  • název, který slouží k identifikaci služby
  • Keepalive ID, toto číslo musí být v případě, že máme více virtuálních routerů unikátní
  • Keepalive password, heslo slouží k tomu, aby nemohl nikdo jiný se stejně zadaným keealive id převzít naše adresy

V sekci network klikneme na tlačítko pro přidání nového síťové karty a zde vybereme síť, na které máme dostupné veřejné adresy. Je důležité zaškrtnout políčko Floating IP. Je doporučeno vyplnit jednu z našich adres do políčka Force IPv4, kterou budeme chtít přiřadit oběma vps z důvodu, aby se adresa nemohla přiřadit jinému vps, které bychom vytvořili.

Nastavení veřejné sítě

Stejný postup opakujeme a přidáme druhou síť, která bude sloužit jako interní síť pro komunikaci mezi ostatními vps, bez nutnosti je vystavovat přímo na internet, veškerý provoz tedy bude muset nejdříve projít přes routery, kde mohou být povolené jenom některé protokoly nebo adresy. Vnitřní síť bude mít název ocXXXX-private.

Nastavení privátní sítě

V poslední části Template, vybereme šablonu, podle které se budou routery vytvářet, zde zvolíme Alpine Vrouter. Poslední věcí, kterou je potřeba upravit je počet vps, které se vytvoří, minimální počet, který je možné vytvořit a stále dosáhnout vysoké dostupnosti jsou 2 vps, počet zadáme do políčka Number of VM instances. Následně naše nastavení potvrdíme kliknutím na tlačítko Create v horní části stránky.

Jakmile je virtuální router vytvořen objeví se v sekci VMs dvě nové VPS, každá z VPS by měla mít 4 IP adresy.

  • Veřejná adresa VPS, pomocí této adresy můžeme daný VPS server spravovat
  • Veřejná adresa, která je sdílená mezi VPS
  • Vnitřní IP Adresa VPS
  • Vnitřní adresa, která je sdílená mezi VPS

Ve výchozím nastavení je na routerech již nastavený NAT, můžeme tedy routery využívat ihned po vytvoření, bez nastavování iptables pravidel.

Vytvoření VPS za routery

Postup vytvoření standardní VPS je podobný jako kdyby byla VPS připojená přímo do internetu, s tím rozdílem, že při jejím vytvoření nebudeme nastavovat síťovou kartu, přidáme ji až po vytvoření VPS, abychom mohli upravit její nastavení (výchozí bránu a dns servery).

Síťová nastavení můžeme upravit po rozkliknutí sekce Network a kliknutím na tlačítko Attach nic. Zde vybereme privátní síť, jedná se o stejnou síť, kterou jsme využili při vytváření routerů. V sekci Override Network Values IPv4 upravíme hodnoty Gateway a DNS, Gateway nastavíme na stejnou adresu jako je sdílená adresa mezi routery v privátní síti, ve výchozím nastavení 192.168.1.1 DNS servery můžeme využít jakékoliv, zde jsme využili servery Googlu s adresou 8.8.8.8

Abychom se mohli připojit na VPS umístěnou za routery je potřeba vytvořit DNAT (port forwarding) na routerech pomocí příkazu:

<code>iptables -t nat -A PREROUTING -p tcp --dport 1111 -i eth0 -j DNAT --to 192.168.1.4:22</code>

Tento příkaz je nutné spustit na obou routerech, jelikož se jejich konfigurace nijak nesynchronizuje a v případě výpadku hlavního routeru by druhý neměl informace o tom, co má dělat a veškerý neznámý provoz by zahodil.

Port 1111 je port, pomocí kterého se budeme připojovat na adresu routerů (sdílená adresa) a adresa 192.168.1.4:22 určuje adresu a port VPS, na kterou bude připojení přesměrováno.

Na SSH VPS se poté připojíme pomocí {sdílená adresa}:1111

Leave a Reply

Galerie