Udostępnij przez


Zdarzenia

Usługa CycleCloud 8.0 generuje zdarzenia w przypadku wystąpienia pewnych zmian (na przykład podczas tworzenia węzła lub usuwania klastra). Niektóre zdarzenia są natychmiastowe (na przykład usunięcie klastra), a niektóre zdarzenia reprezentują przejścia (na przykład utworzenie węzła, co oznacza utworzenie maszyny wirtualnej). W takich przypadkach zdarzenie jest wysyłane na końcu przejścia, bez względu na to, czy zakończyło się sukcesem.

Możesz skonfigurować usługę CycleCloud do publikowania w temacie usługi Event Grid, łącząc go na stronie Ustawienia usługi CycleCloud . Aby skierować zdarzenia do miejsca docelowego, takiego jak kolejka magazynowa, dołącz do tematu subskrypcje zdarzeń usługi Event Grid. Program może wykorzystywać zdarzenia i przetwarzać je.

Obiekty zdarzeń

Zdarzenia są zgodne ze standardowym schematem usługi Event Grid, a wszystkie szczegóły specyficzne dla usługi CycleCloud są zawarte we właściwości data.

Nazwa Typ Opis
eventId Sznurek Jednoznacznie identyfikuje zdarzenie
czas wydarzenia Sznurek Czas tego zdarzenia (rrrr-MM-ddTHH:mm:ss. SSSZZ)
typ zdarzenia Sznurek Rodzaj przejścia stanowego, które miało miejsce (na przykład Microsoft.CycleCloud.NodeCreated)
Temat Sznurek Zasób, którego dotyczy problem (zobacz Temat zdarzenia)
wersja danych Sznurek Schemat używany dla data (obecnie "1")

Ponadto dla niemal wszystkich zdarzeń istnieje kilka właściwości data niestandardowych:

Nieruchomość Typ Opis
stan Stan (ciąg) Czy to przejście zakończyło się pomyślnie, czy nie
powód Przyczyna (ciąg) Dlaczego to zdarzenie zostało zainicjowane
komunikat Sznurek Czytelne dla człowieka podsumowanie tego zdarzenia
kod błędu Sznurek Kod tej operacji, jeśli zakończył się niepowodzeniem lub był niedostępny. Pamiętaj, że ten kod może pochodzić bezpośrednio z wywołań platformy Azure i może nie być obecny dla wszystkich błędów

Zdarzenia klastra

Usługa CycleCloud wysyła zdarzenia, gdy klastry są modyfikowane. Zdarzenia klastra zawierają następujące typowe właściwości w programie data:

Nieruchomość Typ Opis
nazwa klastra Sznurek Nazwa klastra

Microsoft.CycleCloud.ClusterStarted

To zdarzenie jest wywoływane, gdy klaster zostanie uruchomiony.

Microsoft.CycleCloud.KlasterZakończony

To zdarzenie jest wyzwalane po zakończeniu działania klastra.

Microsoft.CycleCloud.KlasterUsunięty

To zdarzenie jest uruchamiane po usunięciu klastra.

Microsoft.CycleCloud.RozmiarKlastraZwiekszony

To zdarzenie jest wyzwalane, gdy węzły są dodawane do klastra. Istnieje jedno zdarzenie dla każdego dodanego zestawu węzłów. (Węzły w zestawie mają tę samą definicję).

Nieruchomość Typ Opis
żądane węzły Liczba całkowita Ile węzłów zażądano dla tego zestawu
węzłyDodane Liczba całkowita Ile węzłów zostało dodanych do klastra
nodeArray Sznurek Tablica węzłów, z której zostały utworzone te węzły.
Identyfikator subskrypcji Sznurek Identyfikator subskrypcji dla zasobów tego węzła
region Sznurek Lokalizacja tego węzła
vmSku Sznurek Jednostka SKU (czyli typ maszyny) dla maszyny wirtualnej
priorytet Sznurek Model cenowy maszyny wirtualnej obowiązujący (albo "zwykły", albo "spot")
placementGroupId Sznurek Grupa umieszczania, w której znajdują się te węzły, o ile istnieje

Zdarzenia węzła

Usługa CycleCloud wysyła zdarzenia za każdym razem, gdy węzły przechodzą między stanami. Te zdarzenia węzła obejmują dodatkowy kontekst w ramach data właściwości:

Nieruchomość Typ Opis
stan Stan (ciąg) Czy to zdarzenie zakończyło się pomyślnie
nazwa klastra Sznurek Nazwa klastra, do którego należy ten węzeł. Nazwy nie są unikatowe w czasie
nazwa węzła Sznurek Nazwa węzła, którego dotyczy problem. Nazwy nie są unikatowe w czasie
nodeId Sznurek Identyfikator węzła. Identyfikatory węzłów unikatowe. Po usunięciu węzła identyfikator nie jest dostępny do ponownego użycia.
nodeArray Sznurek Nazwa tablicy węzłów, z której utworzono ten węzeł
identyfikator zasobu Sznurek Zasób platformy Azure dla maszyny wirtualnej, jeśli został utworzony
Identyfikator subskrypcji Sznurek Identyfikator subskrypcji dla zasobów tego węzła
region Sznurek Lokalizacja tego węzła
vmSku Sznurek Jednostka SKU (czyli typ maszyny) dla maszyny wirtualnej
priorytet Sznurek Model cenowy maszyny wirtualnej obowiązujący (albo "zwykły", albo "spot")
placementGroupId Sznurek Grupa umieszczania, w jakiej znajduje się ten węzeł, jeśli istnieje
liczbaPonownychPrób Liczba całkowita Ile razy podjęto wcześniej próbę wykonania tej konkretnej akcji (zobacz Liczba ponownych prób)
Synchronizacja (Obiekt) Mapa etapów w tym zdarzeniu i ich czasy trwania (zobacz Chronometraż)

Microsoft.CycleCloud.NodeAdded

To zdarzenie jest wyzwalane dla każdego węzła dodanego do klastra. Aby odebrać pojedyncze zdarzenie dla wielu węzłów dodanych jednocześnie, zobacz ClusterSizeIncreased. To zdarzenie jest wysyłane, kiedy węzeł po raz pierwszy pojawia się w interfejsie użytkownika, więc nie ma żadnych informacji czasowych.

Microsoft.CycleCloud.NodeCreated

To zdarzenie jest wyzwalane za każdym razem, gdy węzeł jest uruchamiany po raz pierwszy (czyli po utworzeniu maszyny wirtualnej dla węzła). Zawiera następujące szczegóły czasowe:

  • Create: łączny czas tworzenia węzła. Tym razem obejmuje utworzenie maszyny wirtualnej i skonfigurowanie maszyny wirtualnej.
  • CreateVM: jak długo zajęło utworzenie maszyny wirtualnej.
  • Configure: jak długo trwało instalowanie oprogramowania i konfigurowanie węzła.

Microsoft.CycleCloud.NodeDeallocated

To zdarzenie jest wyzwalane za każdym razem, gdy węzeł zostanie zdezaktywowany. Zawiera następujące szczegóły czasowe:

  • Deallocate: całkowity czas zwolnienia węzła.
  • DeallocateVM: Jak długo zajęło zwolnienie zasobów maszyny wirtualnej.

Microsoft.CycleCloud.NodeStarted

To zdarzenie jest wyzwalane przy każdorazowym ponownym uruchomieniu węzła ze stanu odalokowania. Zawiera następujące szczegóły czasowe:

  • Start: Całkowity czas potrzebny na ponowne uruchomienie zdealokowanego węzła.
  • StartVM: jak długo uruchomienie odzyskanej maszyny wirtualnej trwało.

Microsoft.CycleCloud.NodeTerminated

To zdarzenie jest wyzwalane za każdym razem, gdy węzeł zostanie przerwany, a jego maszyna wirtualna zostanie usunięta. Zawiera następujące szczegóły czasowe:

  • Terminate: całkowity czas, który był potrzebny do zakończenia węzła.
  • DeleteVM: jak długo zajęło usunięcie maszyny wirtualnej.

Temat

Każde zdarzenie ma temat, którego można użyć do filtrowania w usłudze Event Grid. Zdarzenia w usłudze CycleCloud mają tematy w następującym wzorcu:

  • /sites/SITENAME: w przypadku zdarzeń specyficznych dla danej instalacji usługi CycleCloud
  • /sites/SITENAME/clusters/CLUSTERNAME: dla zdarzeń na poziomie klastra
  • /sites/SITENAME/clusters/CLUSTERNAME/nodes/NODENAME: dla zdarzeń na poziomie węzła

Ten wzorzec umożliwia określenie zakresu subskrypcji usługi Event Grid w odniesieniu do określonego prefiksu, aby zbierać podzestaw zdarzeń. Użyj tego wzorca z filtrowaniem typów zdarzeń.

Stan

  • Succeeded: operacja zakończyła się pomyślnie.
  • Failed: operacja nie powiodła się. Często występuje zestaw reason i/lub errorCode .
  • Canceled: operacja została anulowana.

Powód

Niektóre zdarzenia mają przyczynę zainicjowania. O ile nie określono inaczej, te przyczyny są ustawiane na zdarzeniach ClusterSizeIncreased, NodeAdded, NodeCreated, NodeDeallocated, NodeStarted i NodeTerminated.

  • Autoscaled: węzeł został zmodyfikowany w odpowiedzi na żądanie skalowania automatycznego wykonane za pośrednictwem interfejsu API
  • UserInitiated: operacja została wykonana bezpośrednio za pośrednictwem interfejsu użytkownika lub interfejsu wiersza polecenia
  • System: CycleCloud rozpoczął operację (na przykład, domyślnie węzły obliczeniowe są automatycznie usuwane z klastra, gdy działanie się kończy)
  • SpotEvicted: eksmisja maszyny wirtualnej typu spot wyzwoliła zdarzenie (tylko zdarzenia NodeTerminated)
  • VMDisappeared: zniknięcie maszyny wirtualnej niezwiązanej z miejscem wyzwoliło zdarzenie (dotyczą tylko zdarzenia NodeTerminated)
  • AllocationFailed: nie można przydzielić maszyny wirtualnej z powodu ograniczeń umieszczania lub pojemności (tylko zdarzenia NodeTerminated/NodeDeallocated ze stanem wskazującym wynik operacji zakończenia/cofnięcia przydziału)

Uwaga

Właściwość reason jest ustawiana na zdarzenia NodeTerminated, aby wskazać powód zakończenia węzła. Gdy nie można utworzyć węzła z powodu pojemności, kończy się niepowodzeniem z określonym kodem błędu z platformy Azure (z których istnieje kilka). Węzeł zostanie następnie automatycznie zakończony, a przyczyną zakończenia jest AllocationFailed. Gdy uruchomiona maszyna wirtualna typu spot zostanie eksmitowana, operacja tworzenia zakończyła się już pomyślnie. Węzeł jest następnie automatycznie zakończony, a podany powód zakończenia to SpotEvicted.

Czas

Niektóre zdarzenia zawierają informacje czasowe. Wpis timing w data jest obiektem z kluczami odpowiadającymi etapom zdarzenia i wartościami jako całkowite sekundy. Każde zdarzenie może mieć wiele skojarzonych etapów czasowych. Załóżmy na przykład, że węzeł jest dodawany do klastra, uruchomiony i zakończony:

! Diagram chronometrażu usługi Event Grid

  • T1: Użytkownik dodaje węzeł. Zdarzenie NodeAdded jest wysyłane bez określenia czasu.
  • T2: Operacja tworzenia maszyny wirtualnej kończy się niepowodzeniem, dlatego NodeCreated jest wysyłana ze stanem nieudanym i następującymi informacjami o czasie:
    • Create: T2-T1
    • CreateVM: T2-T1
  • T3: Użytkownik klika pozycję Ponów próbę
  • T4: Operacja Create-VM kończy się pomyślnie, więc węzeł rozpoczyna instalowanie oprogramowania.
  • T5. Oprogramowanie zostało pomyślnie zainstalowane, dlatego NodeCreated jest wysyłane ze stanem Sukcesu i następującymi informacjami o czasie:
    • Create: (T5-T3)
    • CreateVM: (T4-T3)
    • Configure: (T5-T4)
  • T6: Użytkownik klika przycisk Zakończ.
  • T7: Operacja usuwania maszyny wirtualnej powiedzie się, więc NodeTerminated jest wysyłana ze stanem Sukces oraz następujące informacje dotyczące czasu:
    • Started: T6-T5
    • Terminate: T7-T6
    • DeleteVM: T7-T6

Poprzedni czas stanu

Przy pierwszym przejściu węzła do stanu (niezależnie od tego, czy się powiodło, czy nie), nie ma on poprzedniego stanu. Gdy stan docelowy zmieni się po tym punkcie, czas spędzony w poprzednim stanie zostanie uwzględniony w zdarzeniu dla nowego stanu docelowego. Ten czas jest uwzględniany tylko wtedy, gdy węzeł osiągnął poprzedni stan pomyślnie. Wpisy dotyczące czasu mierzą długość trwania następujących stanów:

  • Started: przed tym zdarzeniem węzeł był uruchomiony (czyli zielony)
  • Deallocated: przed tym zdarzeniem cofnięto przydział węzła
  • Terminated: przed tym zdarzeniem węzeł był wyłączony

Możesz użyć tego pomiaru czasu, aby śledzić, jak długo maszyna wirtualna typu spot była uruchomiona, zanim została wykluczona.

Liczba ponownych prób

W usłudze CycleCloud możesz ponowić próbę niektórych operacji, jeśli zakończy się to niepowodzeniem. Te operacje są odzwierciedlane w zdarzeniach NodeCreated, NodeDeallocated, NodeStartedi NodeTerminated . Zdarzenia te zawierają opcjonalną retryCount właściwość właściwości zdarzenia data , która wskazuje, ile razy podjęto próbę wykonania operacji przed tym zdarzeniem. Ta właściwość jest uwzględniana w kolejnych ponownych próbach, niezależnie od tego, czy te próby zakończyły się powodzeniem, czy niepowodzeniem.