Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure Application Gateway monitoruje stav všech serverů ve svém back-endovém fondu a automaticky přestane posílat provoz na kterýkoli server, který považuje za nezdravý. Sondy nadále monitorují takový server, který není v pořádku, a brána začne znovu směrovat provoz do něj, jakmile sondy zjistí, že je v pořádku.
Výchozí sonda používá číslo portu z přidruženého nastavení back-endu a dalších přednastavených konfigurací. Když použijete vlastní sondy, můžete je nakonfigurovat podle svého.
Chování sond
Zdrojová IP adresa
Zdrojová IP adresa sond závisí na typu back-endového serveru:
- Pokud je server v backendovém poolu veřejným koncovým bodem, zdrojová adresa bude veřejná IP adresa frontendové části vaší služby Application Gateway.
- Pokud je server v back-endovém fondu soukromým koncovým bodem, zdrojová IP adresa bude pocházet z adresního prostoru podsítě vašeho Application Gateway.
Operace sondy
Brána zahájí vysílání sond okamžitě poté, co nastavíte pravidlo tím, že jej přidružíte k nastavení backendu a fondu backendu (a samozřejmě také naslouchání). Ukázka ukazuje, že brána nezávisle testuje všechny servery poolu backendových serverů. Příchozí požadavky se odesílají jenom na servery, které jsou v pořádku. Back-endový server je ve výchozím nastavení označený jako není v pořádku, dokud nebude přijata úspěšná odpověď sondy.
Požadované sondy se určují na základě jedinečné kombinace back-end serveru a nastavení back-endu. Představte si například bránu s jedním backendovým poolem se dvěma servery a dvěma nastaveními backendu, každé s různými čísly portů. Pokud jsou tato jedinečná nastavení backendu přidružena ke stejnému backendovému fondu pomocí příslušných pravidel, brána vytvoří sondy pro každý server a kombinaci těchto nastavení backendu. Můžete to zobrazit na stránce stavu back-endu.
Všechny instance aplikační brány navíc testují back-endové servery nezávisle na sobě.
Intervaly sondy
Stejná konfigurace sondy platí pro každou instanci vaší služby Application Gateway. Pokud má například aplikační brána dvě instance a interval sondy je nastavený na 20 sekund, obě instance odešlou sondu stavu každých 20 sekund.
Jakmile sonda zjistí neúspěšnou odpověď, čítač pro nepříznivý práh se zapne a server označí jako nefunkční, pokud počet po sobě jdoucích selhání odpovídá nakonfigurované prahové hodnotě. Pokud tedy nastavíte tuto prahovou hodnotu špatného stavu jako 2, následující sonda nejprve zjistí toto selhání. Aplikační brána pak označí server jako nefunkční po dvou po sobě jdoucích neúspěšných sondách [První detekce 20 sekund + (2 po sobě jdoucí neúspěšné sondy * 20 sekund)].
Poznámka:
Zpráva o stavu backendu se aktualizuje na základě intervalu aktualizace konkrétní sondy a nezávisí na požadavku uživatele.
Výchozí sonda stavu
Služba Application Gateway automaticky nakonfiguruje výchozí sondu stavu, když nenastavíte žádnou vlastní konfiguraci sondy. Funkce monitorování pracuje tak, že provede požadavek HTTP GET na IP adresy nebo FQDN nakonfigurované v back-end fondu. Pro výchozí sondy, pokud jsou nastavení HTTP back-endu nakonfigurovaná pro PROTOKOL HTTPS, použije sonda protokol HTTPS k otestování stavu back-endových serverů.
Příklad: Službu Application Gateway nakonfigurujete tak, aby používala back-endové servery A, B a C pro příjem síťového provozu HTTP na portu 80. Výchozí monitorování stavu testuje tři servery každých 30 sekund pro zdravou odpověď HTTP s 30sekundovým vypršením časového limitu pro každý požadavek. Odpověď HTTP, která je v pořádku, má stavový kód mezi 200 a 399. V tomto případě vypadá hlavička HTTP GET hostitele pro sondu stavu jako http://127.0.0.1/. Podívejte se také na kódy odpovědí HTTP ve službě Application Gateway.
Pokud u serveru A selže výchozí kontrola sondy, služba Application Gateway přestane předávat požadavky na tento server. Výchozí sonda stále kontroluje server A každých 30 sekund. Když server A úspěšně odpoví na jeden požadavek z výchozí sondy stavu, služba Application Gateway začne požadavky znovu předávat na server.
Výchozí nastavení sondy stavu
| Vlastnost sondy | Hodnota | Popis |
|---|---|---|
| Adresa URL sondy | <protocol>://127.0.0.1:<port>/ | Protokol a port se dědí z nastavení HTTP back-endu, ke kterému je sonda přidružená. |
| Interval | 30 | Časový interval v sekundách, který uplyne před odesláním další kontrolní sondy. |
| Přestávka | 30 | Doba v sekundách, po kterou aplikační brána čeká na odpověď sondy, než označí sondu jako poškozenou. Pokud se sonda vrátí jako v pořádku, odpovídající backend je okamžitě považován za v pořádku. |
| Prahová hodnota pro nezdravý stav | 3 | Určuje, kolik sond se má odeslat v případě selhání pravidelné zdravotní sondy. Ve verzi SKU v1 jsou tyto další zdravotní sondy odesílány rychle za sebou, aby se rychle zjistil stav back-endu, aniž by se čekalo na interval pro sondu. U SKU v2 čekají sondy stavu po stanoveném intervalu. Záložní server je označen jako nefunkční poté, co počet po sobě jdoucích selhání sondy dosáhne nezdravého prahu. |
Výchozí sonda se zaměřuje pouze na <protokol>://127.0.0.1:<port> a slouží ke zjištění zdravotního stavu. Pokud potřebujete nakonfigurovat sondu stavu pro přesměrování na vlastní adresu URL nebo upravit jiná nastavení, musíte použít vlastní sondy. Další informace o sondách HTTPS najdete v tématu Přehled ukončení protokolu TLS a koncového šifrování TLS se službou Application Gateway.
Vlastní sonda zdraví
Vlastní sondy umožňují podrobnější kontrolu nad monitorováním stavu. Při použití vlastních sond můžete nakonfigurovat vlastní název hostitele, cestu URL, interval sondy a počet neúspěšných odpovědí, které lze přijmout, než označíte instanci backendového fondu jako nefunkční atd.
Vlastní nastavení zdravotní kontroly
Následující tabulka obsahuje definice vlastností vlastní zdravotní sondy.
| Vlastnost sondy | Popis |
|---|---|
| Name | Název sondy. Tento název slouží k identifikaci a pro odkazování na sondu v nastavení HTTP backendu. |
| Protokol | Protokol použitý k odeslání sondy. To se musí shodovat s protokolem definovaným v nastavení http back-endu, ke kterým je přidružený. |
| Hostitel | Název hostitele, se kterým se sonda odešle. V SKU v1 se tato hodnota používá pouze pro hostitelskou hlavičku žádosti sondy. V SKU v2 se používá jako hostitelská hlavička i SNI. |
| Cesta | Relativní cesta sondy. Platná cesta začíná znakem '/'. |
| Přístav | Pokud je definovaný, použije se jako cílový port. V opačném případě používá stejný port jako nastavení HTTP, ke kterému je přidružený. Tato vlastnost je k dispozici pouze ve SKU v2. |
| Interval | Interval sondy v sekundách. Tato hodnota je časový interval mezi dvěma po sobě jdoucími sondami. |
| Přerušení | Časový limit sondy v sekundách. Pokud během tohoto časového limitu nepřijde platná odpověď, sonda se označí jako neúspěšná. |
| Prahová hodnota pro nezdravý stav | Počet opakování sondy. Back-endový server je označen jako nefunkční poté, co počet po sobě jdoucích selhání sondy dosáhne nevyhovující prahové hodnoty. |
Porovnávání sond
Ve výchozím nastavení se odpověď HTTP(S) se stavovým kódem mezi 200 a 399 považuje za v pořádku. Vlastní diagnostické sondy navíc podporují dvě kritéria shody. Kritéria shody lze použít k volitelné úpravě výchozí interpretace toho, co dělá reakce zdravou.
Následující kritéria odpovídají:
- Shoda stavového kódu odpovědi HTTP – kritérium sondy pro shodu pro přijetí uživatelem zadaného kódu odpovědi HTTP nebo rozsahů kódu odpovědi. Podporují se jednotlivé stavové kódy odpovědí oddělené čárkami nebo rozsah stavového kódu.
- Shoda textu odpovědi HTTP – Kritérium porovnávání sondy, které sleduje text odpovědi HTTP a odpovídá řetězci zadanému uživatelem. Vyhledávání hledá pouze přítomnost řetězce zadaného uživatelem v textu odpovědi a nejedná se o plnohodnotné využití regulárního výrazu. Zadaná shoda musí být 4090 znaků nebo méně.
Kritéria shody je možné zadat pomocí rutiny New-AzApplicationGatewayProbeHealthResponseMatch .
Příklad:
$match = New-AzApplicationGatewayProbeHealthResponseMatch -StatusCode 200-399
$match = New-AzApplicationGatewayProbeHealthResponseMatch -Body "Healthy"
Kritéria shody je možné připojit ke konfiguraci sondy pomocí operátoru v PowerShellu -Match .
Některé případy použití pro vlastní testy
- Pokud back-endový server umožňuje přístup jenom ověřeným uživatelům, sondy aplikační brány obdrží kód odpovědi 403 místo 200. Vzhledem k tomu, že klienti (uživatelé) jsou povinni se ověřit pro živý provoz, můžete nakonfigurovat sondovací provoz tak, aby přijímal 403 jako očekávanou odpověď.
- Pokud má backend server nainstalovaný certifikát se zástupným znakem (*.contoso.com), který slouží různým subdoménám, můžete použít vlastní kontrolu s konkrétním názvem hostitele (vyžadovaným pro SNI), který je přijat k navázání úspěšné kontroly protokolu TLS a označit tento server jako zdravý. Pokud je v nastavení back-endu možnost "Přepsat název hostitele" nastavena na NE, budou se různé příchozí názvy hostitelů (subdomény) předávat do back-endu tak, jak jsou.
Úvahy o NSG
Podrobná kontrola podsítě služby Application Gateway prostřednictvím pravidel NSG je možná ve verzi Public Preview. Další podrobnosti najdete tady.
U aktuálních funkcí platí určitá omezení:
Pro skladovou položku Application Gateway SKU v1 musíte povolit příchozí internetový provoz na portech TCP 65503-65534 a pro TCP porty 65200-65535 pro SKU v2 s cílovou podsítí jako Libovolná a zdrojovou značkou služby jako GatewayManager. Tento rozsah portů se vyžaduje pro komunikaci s infrastrukturou Azure.
Kromě toho není možné blokovat odchozí připojení k internetu a musí být povolený příchozí provoz přicházející ze značky AzureLoadBalancer .
Další informace najdete v tématu Přehled konfigurace služby Application Gateway.
Další kroky
Po seznámení s monitorováním stavu služby Application Gateway můžete nakonfigurovat na Portálu Azure vlastní sondu stavu nebo pomocí PowerShellu a modelu nasazení Azure Resource Manageru vlastní sondu stavu.