Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Z tego artykułu dowiesz się, jak testować prywatne punkty końcowe aplikacji przy użyciu usługi Azure Load Testing. Utworzysz zasób usługi Azure Load Testing i włączysz go do generowania obciążenia z poziomu sieci wirtualnej (iniekcja sieci wirtualnej).
Ta funkcja umożliwia realizowanie następujących scenariuszy użycia:
- Generowanie obciążenia dla punktu końcowego wdrożonego w sieci wirtualnej platformy Azure.
- Generowanie obciążenia dla publicznego punktu końcowego z ograniczeniami dostępu, takimi jak ograniczanie adresów IP klientów.
- Generowanie obciążenia dla usługi lokalnej, która nie jest publicznie dostępna i jest połączona z platformą Azure za pośrednictwem usługi ExpressRoute.
Dowiedz się więcej na temat scenariuszy wdrażania testowania obciążenia platformy Azure w sieci wirtualnej.
Poniższy diagram zawiera omówienie techniczne:
Po uruchomieniu testu obciążeniowego usługa Azure Load Testing wprowadza następujące zasoby platformy Azure w sieci wirtualnej zawierającej punkt końcowy aplikacji:
- Maszyny wirtualne silnika testowego. Te maszyny wirtualne wywołują punkt końcowy aplikacji podczas testu obciążeniowego.
- Publiczny adres IP.
- Sieciowa grupa zabezpieczeń.
- Usługa Azure Load Balancer.
Te zasoby są efemeryczne i istnieją tylko wtedy, gdy test obciążeniowy jest uruchomiony. Jeśli masz ograniczenia dotyczące wdrażania publicznego adresu IP, modułu równoważenia obciążenia platformy Azure lub sieciowej grupy zabezpieczeń w podsieci, możesz wyłączyć wdrażanie tych zasobów. Aby uzyskać więcej informacji, zobacz Konfigurowanie testu obciążeniowego.
Jeśli ograniczysz dostęp do sieci wirtualnej, musisz skonfigurować sieć wirtualną, aby umożliwić komunikację między tymi testami obciążeniowymi platformy Azure i wstrzykniętymi maszynami wirtualnymi.
Wymagania wstępne
- Twoje konto platformy Azure ma rolę Współtwórca sieci lub rolę nadrzędną tej roli na sieci wirtualnej. Aby zweryfikować swoje uprawnienia, zobacz Sprawdzanie dostępu użytkownika do zasobów platformy Azure.
- Podsieć używana na potrzeby testowania obciążenia platformy Azure musi mieć wystarczającą liczbę nieprzypisanych adresów IP, aby pomieścić liczbę aparatów testów obciążeniowych na potrzeby testu. Dowiedz się więcej na temat konfigurowania testu pod kątem obciążenia na dużą skalę.
- Podsieć nie powinna być delegowana do żadnej innej usługi platformy Azure. Na przykład nie powinno być delegowane do usługi Azure Container Instances (ACI). Dowiedz się więcej na temat delegowania podsieci.
- Podsieć nie powinna mieć włączonego protokołu IPv6. Testowanie obciążenia platformy Azure nie obsługuje podsieci z obsługą protokołu IPv6. Dowiedz się więcej na temat protokołu IPv6 dla usługi Azure Virtual Network
- Interfejs wiersza polecenia platformy Azure w wersji 2.2.0 lub nowszej (jeśli używasz ciągłej integracji/ciągłego wdrażania). Uruchom polecenie
az --version, aby znaleźć wersję zainstalowaną na komputerze. Jeśli musisz zainstalować lub uaktualnić interfejs wiersza polecenia platformy Azure, zobacz Jak zainstalować interfejs wiersza polecenia platformy Azure.
Konfigurowanie sieci wirtualnej
Aby przetestować prywatne punkty końcowe, należy połączyć testowanie obciążenia platformy Azure z siecią wirtualną platformy Azure. Sieć wirtualna powinna mieć co najmniej jedną podsieć i zezwalać na ruch wychodzący do usługi Azure Load Testing.
Jeśli nie masz jeszcze sieci wirtualnej, wykonaj następujące kroki, aby utworzyć sieć wirtualną platformy Azure w witrynie Azure Portal.
Ważne
Sieć wirtualna musi znajdować się w tej samej subskrypcji i tym samym regionie co zasób testowania obciążenia.
Tworzenie podsieci
Podczas wdrażania testowania obciążenia platformy Azure w sieci wirtualnej zaleca się używanie oddzielnych podsieci na potrzeby testowania obciążenia platformy Azure i punktu końcowego aplikacji. Takie podejście umożliwia skonfigurowanie zasad dostępu do ruchu sieciowego specjalnie dla każdego celu. Dowiedz się więcej o dodawaniu podsieci do sieci wirtualnej.
(Opcjonalnie) Konfigurowanie reguł ruchu
Testowanie obciążenia platformy Azure wymaga, aby wirtualne maszyny włączone w tej sieci wirtualnej mogły uzyskiwać dostęp wychodzący do usługi Azure Load Testing. Domyślnie podczas tworzenia sieci wirtualnej dostęp wychodzący jest już dozwolony.
Jeśli planujesz jeszcze bardziej ograniczyć dostęp do sieci wirtualnej za pomocą grupy zabezpieczeń sieciowych, lub jeśli masz już grupę zabezpieczeń sieciowych, musisz skonfigurować regułę bezpieczeństwa dla ruchu wychodzącego, w celu umożliwienia ruchu z maszyn testowych do usługi Testowania obciążenia platformy Azure.
Aby skonfigurować dostęp wychodzący na potrzeby testowania obciążenia platformy Azure:
Zaloguj się do witryny Azure Portal.
Przejdź do sieciowej grupy zabezpieczeń.
Jeśli nie masz jeszcze sieciowej grupy zabezpieczeń, wykonaj następujące kroki, aby utworzyć sieciową grupę zabezpieczeń.
Utwórz sieciową grupę zabezpieczeń w tym samym regionie co sieć wirtualna, a następnie skojarz ją z podsiecią.
W nawigacji po lewej stronie wybierz Reguły zabezpieczeń wychodzących.
Wybierz pozycję + Dodaj, aby dodać nową regułę zabezpieczeń dla ruchu wychodzącego. Wprowadź następujące informacje, aby utworzyć nową regułę.
(No changes needed) Wartość Źródło Dowolne Zakresy portów źródłowych * Lokalizacja docelowa Dowolne Zakresy portów docelowych * Nazwa testowanie obciążeniowe Azure - wychodzące Opis Służy do różnych operacji związanych z organizowaniem testów obciążeniowych. Wybierz pozycję Dodaj , aby dodać regułę zabezpieczeń dla ruchu wychodzącego do sieciowej grupy zabezpieczeń.
Konfigurowanie skryptu testu obciążeniowego
Maszyny wirtualne środowiska testowego, które uruchamiają skrypt testowy, są umieszczane w sieci wirtualnej zawierającej punkt końcowy aplikacji. Teraz możesz odwoływać się bezpośrednio do punktu końcowego w skrypcie testowym przy użyciu prywatnego adresu IP lub użyć rozpoznawania nazw w sieci.
Na przykład w przypadku punktu końcowego z adresem IP 10.179.0.7 w sieci wirtualnej z zakresem podsieci 10.179.0.0/18 plik JMX może zawierać następujące informacje:
<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>
Konfigurowanie testu obciążeniowego
Aby uwzględnić prywatnie hostowane punkty końcowe w teście obciążeniowym, należy skonfigurować ustawienia sieci wirtualnej dla testu obciążeniowego. Ustawienia sieci wirtualnej można skonfigurować w witrynie Azure Portal lub określić w pliku konfiguracji testu YAML dla potoków ciągłej integracji/ciągłego wdrażania.
Ważne
Podczas wdrażania testowania obciążenia platformy Azure w sieci wirtualnej zostaną naliczone dodatkowe opłaty. Testowanie obciążenia platformy Azure wdraża Azure Load Balancer oraz publiczny adres IP w ramach subskrypcji, a także mogą wystąpić koszty związane z wygenerowanym ruchem. Aby uzyskać więcej informacji, zobacz informacje o cenach sieci wirtualnej.
Konfigurowanie sieci wirtualnej w witrynie Azure Portal
Ustawienia konfiguracji sieci wirtualnej można określić w kreatorze tworzenia/aktualizowania testów obciążeniowych.
Zaloguj się do witryny Azure Portal przy użyciu poświadczeń subskrypcji platformy Azure.
Przejdź do zasobu usługi Azure Load Testing i wybierz pozycję Testy w okienku po lewej stronie.
Otwórz kreatora do tworzenia lub aktualizacji testu obciążeniowego na jeden z dwóch sposobów:
Wybierz opcję + Utwórz > wgraj skrypt, jeśli chcesz utworzyć nowy test.
Wybierz istniejący test z listy, a następnie wybierz pozycję Edytuj.
Na karcie Ładowanie wybierz pozycję Tryb ruchu prywatnego, a następnie wybierz sieć wirtualną i podsieć.
Jeśli masz wiele podsieci w sieci wirtualnej, upewnij się, że wybrano podsieć, która będzie hostować maszyny wirtualne wstrzykniętego aparatu testowego.
Ważne
Upewnij się, że masz wystarczające uprawnienia do zarządzania sieciami wirtualnymi. Wymagana jest rola Współautora sieci.
(Opcjonalnie) Zaznacz Wyłącz wdrażanie publicznego adresu IP, jeśli nie chcesz wdrażać publicznego adresu IP, równoważnika obciążenia i grupy zabezpieczeń sieci w swojej podsieci.
Po wybraniu tej opcji upewnij się, że istnieje alternatywny mechanizm, taki jak usługa Azure NAT Gateway, usługa Azure Firewall lub wirtualne urządzenie sieciowe (WUS), aby włączyć routing ruchu wychodzącego z podsieci.
Przejrzyj lub wypełnij informacje o teście obciążeniowym. Wykonaj następujące kroki, aby utworzyć test lub zarządzać nim.
Wybierz Przejrzyj i utwórz, a następnie Utwórz (lub Zastosuj, jeśli aktualizujesz istniejący test).
Po rozpoczęciu testu obciążeniowego usługa Azure Load Testing wprowadza maszyny wirtualne silników testowych do Twojej sieci wirtualnej i podsieci. Skrypt testowy może teraz uzyskać dostęp do prywatnego punktu końcowego aplikacji hostowanej w sieci wirtualnej.
Konfiguracja sieci wirtualnej dla procesów CI/CD
Aby skonfigurować test obciążeniowy przy użyciu ustawień sieci wirtualnej, zaktualizuj plik konfiguracji testu YAML.
Otwórz terminal i użyj interfejsu wiersza polecenia platformy Azure, aby zalogować się do subskrypcji platformy Azure:
az login az account set --subscription <your-Azure-Subscription-ID>Pobierz identyfikator podsieci i skopiuj wynikowej wartości:
az network vnet subnet show -g <your-resource-group> --vnet-name <your-vnet-name> --name <your-subnet-name> --query idOtwórz plik konfiguracji testu YAML w ulubionym edytorze.
subnetIdDodaj właściwość do pliku konfiguracji i podaj skopiowany wcześniej identyfikator podsieci:version: v0.1 testName: SampleTest testPlan: SampleTest.jmx description: 'Load test the website home page' engineInstances: 1 subnetId: <your-subnet-id> publicIPDisabled: FalseOpcjonalnie możesz ustawić
publicIPDisabledwłaściwość naTrue. Aby uzyskać więcej informacji na temat konfiguracji YAML, zobacz dokumentację dotyczącą konfiguracji testowej YAML.Ważne
Upewnij się, że masz wystarczające uprawnienia do zarządzania sieciami wirtualnymi. Wymagana jest rola Współautora sieci.
Zapisz plik konfiguracji YAML i zatwierdź zmiany w repozytorium kodu źródłowego.
Po wyzwoleniu przepływu pracy CI/CD, test obciążeniowy zostanie uruchomiony i będzie mógł teraz uzyskać dostęp do punktu końcowego hostowanej prywatnie aplikacji w Twojej sieci wirtualnej.
Rozwiązywanie problemów
Aby rozwiązać problemy z tworzeniem i uruchamianiem testów obciążeniowych dla prywatnych punktów końcowych, zobacz , jak rozwiązywać problemy z testami prywatnego punktu końcowego.
Dalsze kroki
- Dowiedz się więcej na temat scenariuszy wdrażania testowania obciążenia platformy Azure w sieci wirtualnej.
- Dowiedz się, jak rozwiązywać problemy z prywatnymi testami punktów końcowych.