Začínáme vytvářet internetový nástroj pro vyrovnávání zatížení pro cloudové služby
Azure Load Balancer je nástroj pro vyrovnávání zatížení úrovně 4 (TCP, UDP). Nástroj pro vyrovnávání zatížení poskytuje vysokou dostupnost díky distribuci příchozích přenosů mezi instance služeb, které jsou v pořádku, v cloudových službách nebo virtuálních počítačích v sadě nástroje pro vyrovnávání zatížení. Azure Load Balancer můžete také tyto služby prezentovat na více portech, více IP adresách nebo obojím.
Nástroj pro vyrovnávání zatížení můžete konfigurovat k těmto činnostem:
- Vyrovnávání zatížení příchozích přenosů z internetu do virtuálních počítačů. Nástroj pro vyrovnávání zatížení v tomto scénáři označujeme jako internetový nástroj pro vyrovnávání zatížení.
- Vyrovnávání zatížení přenosů mezi virtuálními počítači ve virtuální síti, mezi virtuálními počítači v cloudových službách nebo mezi místními počítači a virtuálními počítači ve virtuální síti mezi různými místy. Nástroj pro vyrovnávání zatížení v tomto scénáři označujeme jako interní nástroj pro vyrovnávání zatížení.
- Předávání externích přenosů konkrétní instanci virtuálního počítače
Důležité
Než začnete pracovat s prostředky Azure, je potřeba si uvědomit, že Azure má v současné době dva modely nasazení: Azure Resource Manager a klasický. Před zahájením práce s jakýmikoli prostředky Azure se ujistěte, že rozumíte modelům nasazení a příslušným nástrojům. Dokumentaci k různým nástrojům můžete zobrazit kliknutím na karty v horní části tohoto článku. Tento článek se týká modelu nasazení Classic. Případně zjistěte, jak vytvořit internetový nástroj pro vyrovnávání zatížení pomocí Azure Resource Manageru.
Cloudové služby jsou automaticky nakonfigurované s nástrojem pro vyrovnávání zatížení a lze je přizpůsobit prostřednictvím modelu služby.
Vytvoření nástroje pro vyrovnávání zatížení pomocí definičního souboru služby
K aktualizaci svojí cloudové služby můžete využít sadu Azure SDK pro .NET 2.5. Nastavení koncového bodu pro cloudové služby se provádí v definičním souboru (.csdef) služby.
Následující příklad ukazuje, jak je nakonfigurován soubor servicedefinition.csdef pro nasazení v cloudu:
Kontrolou fragmentu souboru .csdef vygenerovaného nasazením v cloudu zjistíte, že je externí koncový bod nakonfigurován pro používání protokolu HTTP na portech 10000, 10001 a 10002.
<ServiceDefinition name="Tenant">
<WorkerRole name="FERole" vmsize="Small">
<Endpoints>
<InputEndpoint name="FE_External_Http" protocol="http" port="10000" />
<InputEndpoint name="FE_External_Tcp" protocol="tcp" port="10001" />
<InputEndpoint name="FE_External_Udp" protocol="udp" port="10002" />
<InputEndpoint name="HTTP_Probe" protocol="http" port="80" loadBalancerProbe="MyProbe" />
<InstanceInputEndpoint name="InstanceEP" protocol="tcp" localPort="80">
<AllocatePublicPortFrom>
<FixedPortRange min="10110" max="10120" />
</AllocatePublicPortFrom>
</InstanceInputEndpoint>
<InternalEndpoint name="FE_InternalEP_Tcp" protocol="tcp" />
</Endpoints>
</WorkerRole>
</ServiceDefinition>
Kontrola stavu nástroje pro vyrovnávání zatížení pro cloudové služby
Následuje příklad testu stavu:
<LoadBalancerProbes>
<LoadBalancerProbe name="MyProbe" protocol="http" path="Probe.aspx" intervalInSeconds="5" timeoutInSeconds="100" />
</LoadBalancerProbes>
Nástroj pro vyrovnávání zatížení zkombinuje informace koncového bodu a informace testu a vytvoří adresu URL ve tvaru http://{DIP of VM}:80/Probe.aspx
, kterou lze použít k dotazování na stav služby.
Služba detekuje pravidelné testy ze stejné IP adresy. To je požadavek testu stavu přicházející z hostitele uzlu, ve kterém běží virtuální počítač. Služba musí odpovědět stavovým kódem HTTP 200, aby nástroj pro vyrovnávání zatížení předpokládal, že je služba v pořádku. Jakýkoli jiný stavový kód (například 503) přímo vyřadí virtuální počítač ze smyčky.
Definice testu také řídí frekvenci testu. V našem výše uvedeném případě provádí nástroj pro vyrovnávání zatížení testování koncového bodu každých 5 sekund. Pokud nedojde k obdržení kladné odpovědi po dobu 10 sekund (dva intervaly testu), předpokládá se, že je test mimo provoz a virtuální počítač je vyřazen ze smyčky. Podobně pokud je služba vyřazena ze smyčky a obdrží se kladná odpověď, služba se ihned zařadí zpět do smyčky. Pokud stav služby kolísá mezi V pořádku a Není v pořádku, nástroj pro vyrovnávání zatížení může rozhodnout, že se se zařazením služby zpět do smyčky počká, než bude v pořádku po dobu několika testů.
Další informace najdete ve schématu definice služby pro test stavu.
Další kroky
Začínáme s konfigurací interního nástroje pro vyrovnávání zatížení
Konfigurace distribučního režimu nástroje pro vyrovnávání zatížení
Konfigurace nastavení časového limitu nečinnosti protokolu TCP pro nástroj pro vyrovnávání zatížení