Konfigurowanie usługi Private Link dla eksperymentów opartych na agentach (wersja zapoznawcza)
W tym artykule opisano kroki wymagane do skonfigurowania usługi Azure Private Link dla eksperymentu opartego na agencie usługi Azure Chaos Studio (wersja zapoznawcza). Bieżące środowisko użytkownika jest oparte na obsłudze prywatnych punktów końcowych, które są włączone w ramach publicznej wersji zapoznawczej funkcji prywatnych punktów końcowych. Spodziewaj się, że to środowisko będzie ewoluować wraz z upływem czasu, ponieważ funkcja została ulepszona do jakości ogólnej dostępności. Jest ona obecnie dostępna w wersji zapoznawczej.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
- Zdefiniuj eksperyment oparty na agencie, wykonując kroki opisane w artykule Tworzenie eksperymentu chaosu, który używa błędu opartego na agencie w witrynie Azure Portal.
Uwaga
Jeśli zasób docelowy został utworzony przy użyciu witryny Azure Portal, rozszerzenie maszyny wirtualnej agenta chaosu zostanie automatycznie zainstalowane na maszynie wirtualnej hosta. Jeśli element docelowy jest włączony przy użyciu interfejsu wiersza polecenia platformy Azure, postępuj zgodnie z dokumentacją programu Chaos Studio, aby najpierw zainstalować rozszerzenie maszyny wirtualnej na maszynie wirtualnej. Do momentu zakończenia konfiguracji prywatnego punktu końcowego rozszerzenie maszyny wirtualnej zgłasza stan złej kondycji. To zachowanie jest oczekiwane.
Ograniczenia
- Musisz użyć naszego interfejsu API REST 2023-10-27-preview, aby utworzyć i użyć usługi Private Link tylko w przypadku eksperymentów opartych na agentach. Nie ma obsługi usługi Private Link dla eksperymentów opartych na agentach w naszym interfejsie API REST stabilnym dla ga do H1 2024.
- Całe kompleksowe środowisko tego przepływu wymaga użycia interfejsu wiersza polecenia. Nie można wykonać bieżącego kompleksowego środowiska w witrynie Azure Portal.
- Typ zasobu Usługi Chaos Studio Private Accesses (CSPA) ma ścisłe mapowanie wartości 1:1 zasobu Chaos Target:CSPA (abstrakcja dla prywatnego punktu końcowego). Zezwalamy na utworzenie tylko pięciu zasobów CSPA na subskrypcję w celu zachowania oczekiwanego środowiska dla wszystkich naszych klientów.
Tworzenie zasobu dostępu prywatnego w usłudze Chaos Studio
Aby użyć prywatnych punktów końcowych na potrzeby eksperymentów chaosu opartych na agencie, należy utworzyć nowy typ zasobu o nazwie Chaos Studio Private Accesses. CSPA to zasób, dla którego tworzone są prywatne punkty końcowe.
Obecnie ten zasób można utworzyć tylko na podstawie interfejsu wiersza polecenia. Zobacz następujący przykładowy kod, aby dowiedzieć się, jak utworzyć ten typ zasobu:
az rest --verbose --skip-authorization-header --header "Authorization=Bearer $accessToken" --method PUT --uri "https://centraluseuap.management.azure.com/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAResourceName>?api-version=2023-10-27-preview" --body '
{
"location": "<resourceLocation>",
"properties": {
"id": "<CSPAResourceName>",
"name": "<CSPAResourceName>",
"location": "<resourceLocation>",
"type": "Microsoft.Chaos/privateAccesses",
"resourceId": "subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAResourceName>"
}
}'
Nazwisko | Wymagania | Type | Opis |
---|---|---|---|
identyfikator subskrypcji | Prawda | String | Identyfikator GUID reprezentujący identyfikator subskrypcji platformy Azure. |
resourceGroupName | Prawda | String | Ciąg reprezentujący grupę zasobów platformy Azure. |
CSPAResourceName | Prawda | String | Ciąg reprezentujący nazwę, którą chcesz nadać zasobowi usługi Chaos Studio Private Access. |
resourceLocation | Prawda | String | Lokalizacja, w której ma być hostowany zasób (musi być regionem pomocy technicznej firmy Chaos Studio). |
Tworzenie sieci wirtualnej, podsieci i prywatnego punktu końcowego
Skonfiguruj żądaną sieć wirtualną, podsieć i punkt końcowy dla eksperymentu, jeśli jeszcze tego nie zrobiono.
Upewnij się, że dołączysz ją do tej samej sieci wirtualnej maszyny wirtualnej. Zrzuty ekranu zawierają przykłady tworzenia sieci wirtualnej, podsieci i prywatnego punktu końcowego. Typ zasobu należy ustawić na Microsoft.Chaos/privateAccesses, jak pokazano na zrzucie ekranu.
Mapowanie maszyny wirtualnej hosta agenta na zasób CSPA
Znajdź element docelowy Resource ID
, wykonując wywołanie GetTarget
:
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}?api-version=2023-10-27-preview
Polecenie GET
zwraca dużą odpowiedź. Zanotuj tę odpowiedź. Użyjemy tej odpowiedzi i zmodyfikujemy ją przed uruchomieniem PUT Target
polecenia , aby zamapować dwa zasoby.
Wywołaj PUT Target
polecenie przy użyciu tej odpowiedzi. Przed uruchomieniem PUT
polecenia należy dołączyć jeszcze dwa pola do treści polecenia.
Te dodatkowe pola są wyświetlane tutaj:
"privateAccessId": "subscriptions/<subID>/...
"allowPublicAccess": false
},
Oto przykładowy blok dotyczący tego, jak PUT Target
powinno wyglądać polecenie, oraz pola, które należy wypełnić:
Uwaga
Skopiuj treść z poprzedniego GET
polecenia. Należy ręcznie dołączyć privateAccessID
pola i allowPublicAccess
.
az rest --verbose --skip-authorization-header --header "Authorization=Bearer $accessToken" --method PUT --uri "https://management.azure.com/subscriptions/<subscriptionID>/resourceGroups/<resourceGroup>/providers/Microsoft.Compute/virtualMachines/<VMSSname>/providers/Microsoft.Chaos/targets/Microsoft-Agent?api-version=2023-10-27-preview " --body ' {
"id": "/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/microsoft.compute/virtualmachines/<VMSSName>/providers/Microsoft.Chaos/targets/Microsoft-Agent",
"type": "Microsoft.Chaos/targets",
"name": "Microsoft-Agent",
"location": "<resourceLocation>",
"properties": {
"agentProfileId": "<from target resource>",
"identities": [
{
"type": "AzureManagedIdentity",
"clientId": "<clientID>",
"tenantId": "<tenantID>"
}
],
"agentTenantId": "CHAOSSTUDIO",
"privateAccessId": "subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAresourceName>",
"allowPublicAccess": false
}} '
Uwaga
Wartość powinna być dokładnie zgodna PrivateAccessID
z wartością resourceID
użytą do utworzenia zasobu CSPA we wcześniejszej sekcji Tworzenie zasobu usługi Chaos Studio Private Access.
Uruchom ponownie usługę Azure Chaos Agent na maszynie wirtualnej
Po wprowadzeniu wszystkich wymaganych zmian na hoście uruchom ponownie usługę Azure Chaos Agent na maszynie wirtualnej.
Windows
Linux
W przypadku systemu Linux uruchom następujące polecenie z poziomu interfejsu wiersza polecenia:
Systemctl restart azure-chaos-agent
Uruchamianie eksperymentu opartego na agencie przy użyciu prywatnych punktów końcowych
Po ponownym uruchomieniu agent usługi Azure Chaos Powinien mieć możliwość komunikowania się z usługą płaszczyzny danych Agent Communication, a rejestracja agenta na płaszczyźnie danych powinna zakończyć się pomyślnie. Po pomyślnej rejestracji agent może wskazać jego stan z pulsem. Następnie możesz kontynuować uruchamianie eksperymentów opartych na agencie chaosu platformy Azure przy użyciu prywatnych punktów końcowych.