INTEGRITY Dokumentace

Monitory

Monitor v pravidelných intervalech odesílá kontrolní požadavky, aby vyhodnotil stav každého koncového bodu v rámci pool.

Když pool stane se nedostupným, load balancer daný pool vyřadí z rotace koncových bodů.

    flowchart RL
      accTitle: Load balancing monitor flow
      accDescr: Monitors issue health monitor requests, which validate the current status of servers within each pool.
      Monitor -- Health Monitor ----> Endpoint2
      Endpoint2 -- Response ----> Monitor
      subgraph Pool
      Endpoint1((Endpoint 1))
      Endpoint2((Endpoint 2))
      end

Požadavky monitoru stavu, které vedou ke změně stavu endpointu, se zaznamenávají jako události v protokolu událostí Load Balancing.


Vlastnosti

Aktuální seznam vlastností monitoru najdete v Vlastnosti monitoru v naší dokumentaci k API.


Vytvoření monitorů

Podrobný postup krok za krokem najdete v Vytvoření monitorů.

Monitor Groups

Monitor Groups umožňují sloučit více monitorů stavu do jedné logické skupiny a vytvořit tak přesnější a inteligentnější kontroly stavu vašich aplikací. Agregací výsledků z několika monitorů lépe vystihnete skutečný stav aplikace a zvýšíte odolnost směrování provozu. Další podrobnosti najdete v Monitor Groups dokumentační stránku.


Regiony monitoru stavu

Když připojit monitor k fondu, můžete vybrat více regionů a zvýšit tak přesnost hlášení.

Pro každou možnost vybranou u poolu v poli Regiony monitoru stavu, Cloudflare odesílá požadavky monitoru stavu ze tří samostatných datacenter v daném regionu.

Požadavky monitoru stavu přicházejí ze tří datových center v rámci každého vybraného regionu.

Pokud většina datových center v daném regionu projde požadavky monitoru stavu, je tento region považován za zdravý. Pokud je zdravá většina regionů, je za zdravý považován i samotný endpoint.

Konfigurace

Všechna datacentra (pouze Enterprise)

Sondy monitoru stavu se odesílají z každého jednotlivého datového centra v síti Cloudflare na endpointy v přidruženém poolu. Díky tomu sondy zasáhnou každý endpoint v intervalech, které nastaví zákazník.

Všechny regiony (pouze Enterprise)

Ke každému koncovému bodu v přiřazeném poolu se z každého regionu odesílají tři sondy health monitoru. Celkem je 13 regionů, což znamená 39 sond.

Regional

Z každého regionu uvedeného v konfiguraci poolu se odesílají tři sondy health monitoru.


Chování sond IPv4 a IPv6

Sondy monitoru stavu standardně používají IPv4. Sondy IPv6 se odesílají pouze v případě, že adresa endpointu nemá žádnou A záznamy (pouze AAAA). Každý endpoint dostává jednu sondu za interval, Cloudflare totiž nekontroluje sondami zároveň IPv4 i IPv6 pro stejný endpoint.

Chcete-li vynutit probing přes IPv6, nastavte adresu endpointu buď na přímou IPv6 adresu, nebo na hostname, který obsahuje pouze AAAA záznamy.


Priorita hlavičky Host

Hlavičky hostitele používané v požadavcích monitoru stavu lze nakonfigurovat buď na samotném monitoru nebo na koncové body ve fondu.

Pokud je hlavička hostitele nastavena současně u monitoru i u endpointu, přednost má hlavička hostitele nastavená u endpointu před hlavičkou hostitele nastavenou u monitoru.

Pokud není zadána žádná hlavička hostitele, Cloudflare použije Adresa endpointu nakonfigurovaný na koncových bodech jako hlavička hostitele pro požadavky monitoru stavu.

Podrobnosti uvádí Přepis hlaviček HTTP Host.


Příkazy API

Cloudflare API podporuje pro monitory následující příkazy. Příklady jsou uvedeny pro endpoint na úrovni uživatele, ale platí i pro endpoint na úrovni účtu.

Příkaz Metoda Endpoint
Vytvoření monitoru POST accounts/:account_id/load_balancers/monitors
Odstranění monitoru DELETE accounts/:account_id/load_balancers/monitors/:id
Seznam Monitorů GET accounts/:account_id/load_balancers/monitors
Podrobnosti monitoru GET accounts/:account_id/load_balancers/monitors/:id
Přepsat konkrétní vlastnosti PATCH accounts/:account_id/load_balancers/monitors/:id
Přepsat existující monitor PUT accounts/:account_id/load_balancers/monitors/:id
Preview Monitor POST accounts/:account_id/load_balancers/monitors/:id/preview

Podporované protokoly

Následující tabulka shrnuje jednotlivé typy monitorů dostupných v Cloudflare Load Balancing, jejich typy monitorování a způsob, jakým každý proces kontroly stavu vyhodnocuje kritéria úspěchu při určování stavu koncového bodu:

Typ monitoru Typ monitorování Popis Proces kontroly stavu Kritéria úspěchu
HTTP/HTTPS Veřejné a privátní Používá se pro endpointy HTTP a HTTPS se specifickými atributy protokolu. Sonda se konfiguruje pomocí nastavení a kritérií úspěchu, jako jsou Method, Simulate Zone, Follow Redirects, Request Headers a Response Body. Sonda pak vyhodnocuje nakonfigurovaná kritéria úspěchu pomocí protokolu HTTP. Po celou nakonfigurovanou dobu timeoutu zůstává TCP spojení aktivní pomocí keep-alive, i když není přijata žádná odpověď. Úspěch je založen na splnění nakonfigurovaných kritérií úspěchu HTTP. Pokud v rámci nastaveného časového limitu a počtu opakování nedorazí žádná odpověď, je endpoint považován za unhealthy.
TCP Veřejné a privátní Kontroluje TCP konektivitu pokusem o otevření spojení s endpointem. Monitor odešle zprávu TCP SYN na zadaný port. Úspěšná kontrola stavu vyžaduje přijetí zprávy SYN/ACK, která navazuje spojení. Spojení se uzavírá odesláním paketu FIN nebo RST, případně přijetím paketu FIN od koncového bodu. Pokud se nepodaří navázat připojení TCP v rámci nakonfigurovaného časového limitu a počtu opakování, považuje se stav za nezdravý.
ICMP Ping Veřejné a Tunel Ověřuje základní konektivitu na vrstvě 3 (L3) k endpointu pomocí ICMP. Endpointy musí mít povoleno odpovídat na pakety ICMP a veškeré síťové vybavení mezi nimi musí ICMP podporovat. Monitor odešle ICMP/ICMPv6 echo request (ping) a očekává od koncového bodu odpověď ICMP/ICMPv6 echo reply. Aby byl koncový bod považován za funkční, musí odpovědět na ICMP ping ve stanoveném časovém limitu a počtu opakování.
UDP-ICMP Veřejné a Tunel Monitor UDP-ICMP odesílá sondovací paket UDP poté, co monitor ICMP Ping dokončí kontrolu s výsledkem funkční. Po přijetí úspěšné odpovědi ICMP odešle monitor na endpoint sondovací paket UDP. Pokud nepřijde zpráva ICMP Port Unreachable, je endpoint považován za funkční. Pokud monitor v rámci nakonfigurovaného časového limitu a počtu opakování obdrží zprávu ICMP Port Unreachable, je endpoint považován za nezdravý.
SMTP Veřejný Ověřuje dostupnost SMTP na aplikační vrstvě. Monitor vytvoří TCP spojení a odešle příkaz SMTP HELO. Očekává odpověď s kódem 250. Poté odešle příkaz SMTP QUIT a očekává odpověď s kódem 221. Na konci každého intervalu se TCP spojení uzavře odesláním paketu TCP FIN. Aby byl koncový bod považován za funkční, musí odpovědět správnými kódy SMTP (250 pro HELO, 221 pro QUIT) ve stanoveném časovém limitu a počtu opakování.