Testování privátních koncových bodů nasazením zátěžového testování Azure ve virtuální síti Azure
V tomto článku se dozvíte, jak otestovat koncové body privátních aplikací pomocí zátěžového testování Azure. Vytvoříte prostředek azure Load Testing a povolíte ho generovat zatížení z vaší virtuální sítě (injektáž virtuální sítě).
Tato funkce umožňuje následující scénáře použití:
- Generování zátěže pro koncový bod nasazený v Azure Virtual Network.
- Generování zátěže pro veřejný koncový bod s omezením přístupu, jako je omezení IP adres klientů.
- Generování zátěže pro místní službu, která není veřejně přístupná a je připojená k Azure přes ExpressRoute.
Přečtěte si další informace o scénářích nasazení zátěžového testování Azure ve vaší virtuální síti.
Následující diagram obsahuje technický přehled:
Když spustíte zátěžový test, služba Azure Load Testing vloží do virtuální sítě následující prostředky Azure, které obsahují koncový bod aplikace:
- Virtuální počítače testovacího stroje. Tyto virtuální počítače během zátěžového testu vyvolávají koncový bod aplikace.
- Veřejná IP adresa.
- Skupina zabezpečení sítě (NSG).
- An Azure Load Balancer.
Tyto prostředky jsou dočasné a existují pouze v době, kdy je zátěžový test spuštěný. Pokud máte omezení nasazení veřejné IP adresy, nástroje pro vyrovnávání zatížení Azure nebo skupiny zabezpečení sítě ve vaší podsíti, můžete nasazení těchto prostředků zakázat. Další informace najdete v tématu Konfigurace zátěžového testu.
Pokud omezíte přístup k virtuální síti, musíte nakonfigurovat virtuální síť tak, aby umožňovala komunikaci mezi těmito zátěžovými testy Azure a vložené virtuální počítače.
Požadavky
- Váš účet Azure má ve virtuální síti roli Přispěvatel sítě nebo nadřazenou roli této role. Informace o ověření oprávnění najdete v tématu Kontrola přístupu uživatele k prostředkům Azure.
- Podsíť, kterou používáte pro zátěžové testování Azure, musí mít dostatek nepřiřazených IP adres, aby vyhovovala počtu modulů zátěžových testů pro váš test. Přečtěte si další informace o konfiguraci testu pro vysoké zatížení.
- Podsíť by neměla být delegována na žádnou jinou službu Azure. Nemělo by se například delegovat do služby Azure Container Instances (ACI). Další informace o delegování podsítě
- Podsíť by neměla mít povolený protokol IPv6. Zátěžové testování Azure nepodporuje podsítě s podporou protokolu IPv6. Další informace o protokolu IPv6 pro azure Virtual Network
- Azure CLI verze 2.2.0 nebo novější (pokud používáte CI/CD). Spuštěním příkazu vyhledejte
az --version
verzi nainstalovanou v počítači. Pokud potřebujete nainstalovat nebo upgradovat Azure CLI, přečtěte si, jak nainstalovat Azure CLI.
Konfigurace virtuální sítě
K otestování privátních koncových bodů připojíte Azure Load Testing k virtuální síti Azure. Virtuální síť by měla mít aspoň jednu podsíť a povolit odchozí provoz do služby Azure Load Testing.
Pokud ještě virtuální síť nemáte, pomocí těchto kroků vytvořte virtuální síť Azure na webu Azure Portal.
Důležité
Virtuální síť musí být ve stejném předplatném a stejné oblasti jako prostředek zátěžového testování.
Vytvoření podsítě
Při nasazování služby Azure Load Testing ve virtuální síti se doporučuje použít samostatné podsítě pro zátěžové testování Azure a pro koncový bod aplikace. Tento přístup umožňuje nakonfigurovat zásady přístupu k síťovému provozu speciálně pro každý účel. Přečtěte si další informace o tom, jak přidat podsíť do virtuální sítě.
(Volitelné) Konfigurace pravidel provozu
Zátěžové testování Azure vyžaduje, aby vložené virtuální počítače ve vaší virtuální síti umožňovaly odchozí přístup ke službě Azure Load Testing. Při vytváření virtuální sítě je ve výchozím nastavení povolený odchozí přístup.
Pokud plánujete dál omezit přístup k virtuální síti pomocí skupiny zabezpečení sítě nebo pokud už máte skupinu zabezpečení sítě, musíte nakonfigurovat odchozí pravidlo zabezpečení tak, aby povolovalo provoz z virtuálních počítačů testovacího modulu do služby Azure Load Testing.
Konfigurace odchozího přístupu pro zátěžové testování Azure:
Přihlaste se k portálu Azure.
Přejděte do skupiny zabezpečení sítě.
Pokud skupinu zabezpečení sítě ještě nemáte, vytvořte skupinu zabezpečení sítě pomocí následujícího postupu.
Vytvořte skupinu zabezpečení sítě ve stejné oblasti jako virtuální síť a přidružte ji k podsíti.
V levém navigačním panelu vyberte Odchozí pravidla zabezpečení.
Pokud chcete přidat nové odchozí pravidlo zabezpečení, vyberte + Přidat. Zadáním následujících informací vytvořte nové pravidlo.
Pole Hodnota Source Jakýkoli Rozsahy zdrojových portů * Cíl Jakýkoli Rozsahy cílových portů * Název azure-load-testing-outbound Popis Používá se pro různé operace spojené s orchestrací zátěžových testů. Výběrem možnosti Přidat přidáte pravidlo odchozího zabezpečení do skupiny zabezpečení sítě.
Konfigurace skriptu zátěžového testu
Virtuální počítače testovacího modulu, na kterých běží skript JMeter, se vloží do virtuální sítě, která obsahuje koncový bod aplikace. Teď můžete odkazovat přímo na koncový bod v souboru JMX pomocí privátní IP adresy nebo pomocí překladu ip adres ve vaší síti.
Například koncový bod s IP adresou 10.179.0.7 ve virtuální síti s rozsahem podsítě 10.179.0.0/18 může mít soubor JMX tyto informace:
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Internal service homepage" enabled="true">
<elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="Service homepage" enabled="true">
<collectionProp name="Arguments.arguments"/>
</elementProp>
<stringProp name="HTTPSampler.domain">10.179.0.7</stringProp>
<stringProp name="HTTPSampler.port">8081</stringProp>
<stringProp name="HTTPSampler.protocol"></stringProp>
<stringProp name="HTTPSampler.contentEncoding"></stringProp>
<stringProp name="HTTPSampler.path"></stringProp>
<stringProp name="HTTPSampler.method">GET</stringProp>
</HTTPSamplerProxy>
Konfigurace zátěžového testu
Pokud chcete do zátěžového testu zahrnout privátní hostované koncové body, musíte nakonfigurovat nastavení virtuální sítě pro zátěžový test. Nastavení virtuální sítě můžete nakonfigurovat na webu Azure Portal nebo je zadat v konfiguračním souboru testu YAML pro kanály CI/CD.
Důležité
Když nasadíte Zátěžové testování Azure ve virtuální síti, budou se vám účtovat další poplatky. Azure Load Testing nasadí Azure Load Balancer a veřejnou IP adresu ve vašem předplatném a může to být náklady na vygenerovaný provoz. Další informace najdete v informacích o cenách služby Virtual Network.
Konfigurace virtuální sítě na webu Azure Portal
Nastavení konfigurace virtuální sítě můžete zadat v průvodci vytvořením nebo aktualizací zátěžového testu.
Přihlaste se k webu Azure Portal pomocí přihlašovacích údajů pro vaše předplatné Azure.
Přejděte k prostředku azure Load Testing a v levém podokně vyberte Testy .
Otevřete průvodce vytvořením nebo aktualizací zátěžového testu jedním ze dvou způsobů:
Pokud chcete vytvořit nový test, vyberte + Vytvořit > nahrání skriptu JMeter.
Ze seznamu vyberte existující test a pak vyberte Upravit.
Na kartě Načtení vyberte režim privátního provozu a pak vyberte virtuální síť a podsíť.
Pokud máte ve virtuální síti více podsítí, nezapomeňte vybrat podsíť, která bude hostovat virtuální počítače vloženého testovacího modulu.
Důležité
Ujistěte se, že máte dostatečná oprávnění ke správě virtuálních sítí. Potřebujete roli Přispěvatel sítě.
(Volitelné) Pokud nechcete nasadit veřejnou IP adresu, nástroj pro vyrovnávání zatížení a skupinu zabezpečení sítě ve vaší podsíti, zkontrolujte , jestli nechcete nasadit veřejné IP adresy.
Když vyberete tuto možnost, ujistěte se, že existuje alternativní mechanismus, jako je Azure NAT Gateway, Azure Firewall nebo síťové virtuální zařízení (NVA), které umožňuje směrování odchozího provozu z podsítě.
Zkontrolujte nebo vyplňte informace o zátěžovém testu. Pokud chcete vytvořit nebo spravovat test, postupujte podle těchto kroků.
Vyberte Zkontrolovat a vytvořit a potom Vytvořit (nebo Použít při aktualizaci existujícího testu).
Po spuštění zátěžového testu azure Load Testing vloží virtuální počítače testovacího stroje do vaší virtuální sítě a podsítě. Testovací skript teď může přistupovat ke koncovému bodu soukromě hostované aplikace ve vaší virtuální síti.
Konfigurace virtuální sítě pro kanály CI/CD
Pokud chcete nakonfigurovat zátěžový test s nastavením virtuální sítě, aktualizujte konfigurační soubor testu YAML.
Otevřete terminál a pomocí Azure CLI se přihlaste k předplatnému Azure:
az login az account set --subscription <your-Azure-Subscription-ID>
Načtěte ID podsítě a zkopírujte výslednou hodnotu:
az network vnet subnet show -g <your-resource-group> --vnet-name <your-vnet-name> --name <your-subnet-name> --query id
V oblíbeném editoru otevřete konfigurační soubor testu YAML.
subnetId
Přidejte vlastnost do konfiguračního souboru a zadejte ID podsítě, které jste zkopírovali dříve:version: v0.1 testName: SampleTest testPlan: SampleTest.jmx description: 'Load test the website home page' engineInstances: 1 subnetId: <your-subnet-id> publicIPDisabled: False
Volitelně můžete vlastnost nastavit na
publicIPDisabled
True
hodnotu . Další informace o konfiguraci YAML naleznete v referenčních informacích k YAML testovací konfigurace.Důležité
Ujistěte se, že máte dostatečná oprávnění ke správě virtuálních sítí. Potřebujete roli Přispěvatel sítě.
Uložte konfigurační soubor YAML a potvrďte změny do úložiště zdrojového kódu.
Po aktivaci pracovního postupu CI/CD se spustí zátěžový test a teď má přístup ke koncovému bodu soukromě hostované aplikace ve vaší virtuální síti.
Řešení problému
Pokud chcete řešit problémy s vytvářením a spouštěním zátěžových testů u privátních koncových bodů, podívejte se, jak řešit potíže s testy privátních koncových bodů.
Další kroky
- Přečtěte si další informace o scénářích nasazení zátěžového testování Azure ve virtuální síti.
- Zjistěte, jak řešit potíže s testy privátních koncových bodů.