Händelser
CycleCloud 8.0 genererar händelser när vissa ändringar inträffar (t.ex. när en nod skapas eller ett kluster tas bort). Vissa händelser sker omedelbart (t.ex. när ett kluster tas bort) och vissa händelser representerar övergångar (t.ex. att skapa en nod som innebär att en virtuell dator skapas). I dessa fall skickas händelsen i slutet av övergången, oavsett om den lyckas eller inte.
CycleCloud kan konfigureras för att publicera till ett Event Grid-ämne genom att ansluta det på sidan CycleCloud-inställningar i CycleCloud. Event Grid-händelseprenumerationer kan kopplas till ämnet för att dirigera händelserna till ett mål, till exempel en lagringskö, där ett program kan använda händelser och bearbeta dem.
Händelseobjekt
Händelserna finns i standardschemat för Event Grid. Alla CycleCloud-specifika element finns i data
egenskapen för händelsen.
Namn | Typ | Description |
---|---|---|
eventId | Sträng | Identifierar händelsen unikt |
Händelsetid | Sträng | Tiden för den här händelsen (åå-MM-ddTHH:mm:ss. SSSZZ) |
Händelsetyp | Sträng | Den typ av tillståndsövergång som skedde (t.ex. Microsoft.CycleCloud.NodeCreated ) |
ämne | Sträng | Den berörda resursen (se Händelseämne) |
Dataversion | Sträng | Schemat som används för (för data närvarande "1") |
Dessutom finns det flera anpassade egenskaper för data
nästan alla händelser:
Egenskap | Typ | Description |
---|---|---|
status | Status (sträng) | Om övergången lyckades eller inte |
orsak | Orsak (sträng) | Varför den här händelsen initierades |
meddelande | Sträng | En läsbar sammanfattning av händelsen |
errorCode | Sträng | Koden för den här åtgärden om den misslyckades eller inte var tillgänglig. Observera att detta kan komma direkt från Azure-anrop och kanske inte finns för alla fel |
Klusterhändelser
CycleCloud skickar händelser när kluster ändras. Klusterhändelser innehåller följande vanliga egenskaper i data
:
Egenskap | Typ | Description |
---|---|---|
clusterName | Sträng | Namnet på klustret |
Microsoft.CycleCloud.ClusterStarted
Den här händelsen utlöses när ett kluster startas.
Microsoft.CycleCloud.ClusterTerminated
Den här händelsen utlöses när ett kluster avslutas.
Microsoft.CycleCloud.ClusterDeleted
Den här händelsen utlöses när ett kluster tas bort.
Microsoft.CycleCloud.ClusterSizeIncreased
Den här händelsen utlöses när noder läggs till i klustret. Det finns en händelse för varje uppsättning noder som läggs till. (Noder i en uppsättning har samma definition.)
Egenskap | Typ | Description |
---|---|---|
nodesRequested | Integer | Hur många noder som begärdes för den här uppsättningen |
noderLägg till | Integer | Hur många noder som faktiskt har lagts till i klustret |
nodeArray | Sträng | Nodmatrisen som dessa noder skapades från |
subscriptionId | Sträng | Prenumerations-ID för den här nodens resurser |
region | Sträng | Platsen för den här noden |
vmSku | Sträng | SKU:n (d.v.s. datortyp) för den virtuella datorn |
prioritet | Sträng | Den virtuella datorns prismodell i praktiken (antingen "vanlig" eller "spot") |
placementGroupId | Sträng | Placeringsgruppen dessa noder finns i, om sådana finns |
Nodhändelser
CycleCloud skickar händelser när noder ändrar tillstånd. Nodhändelser innehåller ytterligare information i egenskapen data
:
Egenskap | Typ | Description |
---|---|---|
status | Status (sträng) | Om den här händelsen lyckades eller inte |
clusterName | Sträng | Namnet på klustret som noden finns i. Namn är inte unika över tid |
nodeName | Sträng | Namnet på den nod som påverkas. Namn är inte unika över tid |
nodeId | Sträng | ID:t för den här noden. Nod-ID :t är unika över tid och när en nod har tagits bort återanvänds inte ID:t |
nodeArray | Sträng | Namnet på den nodearray som noden skapades från |
resourceId | Sträng | Azure-resursen för den virtuella datorn, om det fanns en som skapades |
subscriptionId | Sträng | Prenumerations-ID för den här nodens resurser |
region | Sträng | Platsen för den här noden |
vmSku | Sträng | SKU:n (d.v.s. datortyp) för den virtuella datorn |
prioritet | Sträng | Den virtuella datorns prismodell i praktiken (antingen "vanlig" eller "spot") |
placementGroupId | Sträng | Placeringsgruppen som den här noden finns i, om någon |
retryCount | Integer | Hur många gånger den här specifika åtgärden försöktes tidigare (se Antal återförsök) |
Timing | (Objekt) | En karta över faser i den här händelsen och deras varaktigheter (se Timing) |
Microsoft.CycleCloud.NodeLägg till
Den här händelsen utlöses för varje nod som läggs till i ett kluster. (Information om hur du hämtar en händelse för en uppsättning noder som läggs till samtidigt finns i ClusterSizeIncreased.) Detta skickas när noden först visas i användargränssnittet, så att den inte har någon tidsinformation.
Microsoft.CycleCloud.NodeSkapad
Den här händelsen utlöses varje gång en nod startas för första gången (dvs. en virtuell dator skapas för den). Den här händelsen innehåller följande tidsinformation:
Create
: Den totala tiden för att skapa noden. Detta inkluderar att skapa den virtuella datorn och konfigurera den virtuella datorn.CreateVM
: Hur lång tid det tog att skapa den virtuella datorn.Configure
: Hur lång tid det tog att installera programvara och konfigurera noden.
Microsoft.CycleCloud.NodeDeallocated
Den här händelsen utlöses varje gång en nod frigörs. Den här händelsen innehåller följande tidsinformation:
Deallocate
: Den totala tiden för att frigöra noden.DeallocateVM
: Hur lång tid det tog att frigöra den virtuella datorn.
Microsoft.CycleCloud.NodeStarted
Den här händelsen utlöses varje gång en nod startas om från ett frigjort tillstånd. Den här händelsen innehåller följande tidsinformation:
Start
: Den totala tiden det tog att starta om den frigjorda noden.StartVM
: Hur lång tid det tog att starta den frigjorda virtuella datorn.
Microsoft.CycleCloud.NodeTerminated
Den här händelsen utlöses varje gång en nod avslutas och dess virtuella dator tas bort. Den här händelsen innehåller följande tidsinformation:
Terminate
: Den totala tid det tog att avsluta noden.DeleteVM
: Hur lång tid det tog att ta bort den virtuella datorn.
Ämne
Varje händelse har ett "ämne" som kan användas för filtrering i Event Grid. Händelser i CycleCloud har ämnen i följande mönster:
/sites/SITENAME
: för händelser som är specifika för en viss CycleCloud-installation/sites/SITENAME/clusters/CLUSTERNAME
: för händelser på klusternivå/sites/SITENAME/clusters/CLUSTERNAME/nodes/NODENAME
: för händelser på nodnivå
Detta gör att en Event Grid-prenumeration kan "omfångsbestämmande" till ett specifikt prefix för att samla in en delmängd händelser. Detta kan användas tillsammans med filtrering av händelsetyp.
Status
Succeeded
: åtgärden lyckades.Failed
: Åtgärden lyckades inte. Det finns ofta enreason
och/ellererrorCode
uppsättning.Canceled
: åtgärden avbröts.
Anledning
Vissa händelser har en anledning till att de initierades. Om inget annat anges anges dessa för ClusterSizeIncreased
händelserna , NodeAdded
, NodeCreated
, NodeDeallocated
, NodeStarted
och NodeTerminated
.
Autoscaled
: noden ändrades som svar på en begäran om automatisk skalning som gjorts via API:etUserInitiated
: åtgärden utfördes direkt via användargränssnittet eller CLISystem
: Åtgärden initierades av CycleCloud (t.ex. som standard tas körningsnoder bort automatiskt från klustret när den avslutas)SpotEvicted
: Händelsen utlöstes eftersom en virtuell dator för oanvänd kapacitet avlägsnades (endast NodeTerminated-händelser)VMDisappeared
: händelsen utlöstes på grund av att en virtuell dator utan oanvänd kapacitet försvann (endast NodeTerminated-händelser)AllocationFailed
: Det gick inte att allokera den virtuella datorn på grund av placerings- eller kapacitetsbegränsningar (endast NodeTerminated/NodeDeallocated-händelser, med statusen som anger resultatet av åtgärden avsluta/frigöra)
Anteckning
reason
Anges för NodeTerminated-händelser för att ange varför noden avslutades.
När en nod inte kan skapas på grund av kapacitet misslyckas den med den specifika felkoden från Azure (där det finns flera).
Noden avslutas sedan automatiskt och orsaken till avslutningen är AllocationFailed
.
När en virtuell dator med oanvänd plats tas bort hade skapandeåtgärden redan slutförts.
Noden avslutas sedan automatiskt och orsaken till avslutningshändelsen är SpotEvicted
.
Tidsinställning
Vissa händelser innehåller tidsinformation. Posten timing
i data
är ett objekt med nycklar som motsvarar faser av händelsen och värden som totalt antal sekunder. Varje händelse kan ha flera associerade tidssteg. Anta till exempel att en nod läggs till i ett kluster, startas och avslutas:
- T1: Användaren lägger till en nod. En
NodeAdded
händelse skickas utan tidsinställning. - T2: Åtgärden create-VM misslyckas, så
NodeCreated
skickas med statusen Misslyckades och följande tidsinformation:Create
: T2-T1CreateVM
: T2-T1
- T3: Användaren klickar på Försök igen
- T4: Åtgärden Create-VM lyckas, så noden börjar installera programvara.
- T5. Programvaran installeras, så
NodeCreated
skickas med statusen Lyckades och följande tidsinformation:Create
: (T5-T3)CreateVM
: (T4-T3)Configure
: (T5-T4)
- T6: Användaren klickar på Avsluta.
- T7: Åtgärden delete-VM lyckas, så
NodeTerminated
skickas med tillståndet Lyckades och följande tidsinformation:Started
: T6-T5Terminate
: T7-T6DeleteVM
: T7-T6
Tidigare tidsinställning för tillstånd
Första gången en nod övergår till ett tillstånd (oavsett om den lyckas eller inte) har den inget tidigare tillstånd. När måltillståndet sedan ändras efter den tidpunkten inkluderas den tid som spenderades i föregående tillstånd i händelsen för det nya måltillståndet. Observera att detta endast inkluderas om det har nått det tidigare tillståndet. Dessa tidsposter mäter därför hur lång tid det tar för följande:
Started
: före den här händelsen hade noden körts (t.ex. grön)Deallocated
: före den här händelsen hade noden frigjortsTerminated
: Före den här händelsen hade noden varit avstängd
Detta kan till exempel användas för att spåra hur länge en virtuell dator med oanvänd kapacitet kördes innan den avlägsnades.
Antal försök
Vissa åtgärder kan göras om i CycleCloud om de misslyckas. Dessa åtgärder återspeglas i NodeCreated
händelserna , NodeDeallocated
, NodeStarted
och NodeTerminated
. Dessa händelser innehåller en valfri retryCount
egenskap för händelsens data
egenskap som anger hur många gånger innan åtgärden utfördes. Den här egenskapen ingår i efterföljande återförsök, oavsett om dessa försök lyckades eller misslyckades.