Condividi tramite


evento

CycleCloud 8.0 genera eventi quando si verificano determinate modifiche, ad esempio quando viene creato un nodo o un cluster viene eliminato. Alcuni eventi sono istantanei (ad esempio, l'eliminazione di un cluster) e alcuni eventi rappresentano transizioni (ad esempio, la creazione di un nodo che implica la creazione di una macchina virtuale). In questi casi, l'evento viene inviato alla fine della transizione, indipendentemente dal successo o meno.

CycleCloud può essere configurato per la pubblicazione in un argomento griglia di eventi connettendolo nella pagina Impostazioni CycleCloud in CycleCloud . Le sottoscrizioni di eventi griglia di eventi possono essere associate all'argomento per instradare gli eventi a una destinazione, ad esempio una coda di archiviazione, in cui un programma può utilizzare eventi ed elaborarli.

Oggetti evento

Gli eventi si trovano nello schema di Griglia di eventi standard. Tutti gli elementi specifici di CycleCloud si trovano nella proprietà dell'evento data .

Nome Tipo Descrizione
Eventid string Identifica in modo univoco l'evento
eventTime string Ora di questo evento (a-MM-ddTHH:mm:ss. SSSZZ)
eventType string Tipo di transizione dello stato che si è verificato (ad esempio, Microsoft.CycleCloud.NodeCreated)
subject string Risorsa interessata (vedere Oggetto evento)
dataVersion string Schema in uso per data (attualmente "1")

Inoltre, esistono diverse proprietà personalizzate in data per quasi tutti gli eventi:

Proprietà Type Descrizione
status Stato (stringa) Se questa transizione ha avuto esito positivo o meno
reason Motivo (stringa) Perché questo evento è stato avviato
message string Riepilogo leggibile di questo evento
errorCode string Codice per questa operazione se non è riuscito o non è stato disponibile. Si noti che questo può venire direttamente dalle chiamate di Azure e potrebbe non essere presente per tutti gli errori

Eventi del cluster

CycleCloud invia eventi quando vengono modificati i cluster. Gli eventi del cluster contengono le proprietà comuni seguenti in data:

Proprietà Type Descrizione
clusterName string Nome del cluster

Microsoft.CycleCloud.ClusterStarted

Questo evento viene attivato quando viene avviato un cluster.

Microsoft.CycleCloud.ClusterTerminated

Questo evento viene attivato quando un cluster viene terminato.

Microsoft.CycleCloud.ClusterDeleted

Questo evento viene attivato quando viene eliminato un cluster.

Microsoft.CycleCloud.ClusterSizeIncreased

Questo evento viene attivato quando i nodi vengono aggiunti al cluster. È presente un evento per ogni set di nodi aggiunti. I nodi in un set hanno la stessa definizione.

Proprietà Type Descrizione
nodeRequested Integer Quanti nodi sono stati richiesti per questo set
nodiAggiungi Integer Quanti nodi sono stati effettivamente aggiunti al cluster
nodeArray string Il nodoarray questi nodi sono stati creati da
subscriptionId string ID sottoscrizione per le risorse di questo nodo
regione string Posizione di questo nodo
vmSku string SKU (ad esempio, tipo di computer) per la macchina virtuale
priority string Modello di prezzo della macchina virtuale in effetti ("regolare" o "spot")
placementGroupId string Il gruppo di posizionamento in cui si trovano questi nodi, se presente

Eventi dei nodi

CycleCloud invia eventi quando i nodi cambiano stato. Gli eventi del nodo contengono informazioni aggiuntive nella data proprietà:

Proprietà Type Descrizione
status Stato (stringa) Indica se l'evento ha avuto esito positivo o negativo
clusterName string Nome del cluster in cui si trova questo nodo. I nomi non sono univoci nel tempo
nodeName string Nome del nodo interessato. I nomi non sono univoci nel tempo
nodeId string ID di questo nodo. Gli ID nodo sono univoci nel tempo e, dopo l'eliminazione di un nodo, l'ID non verrà riutilizzato
nodeArray string Il nome dell'oggetto nodearray da cui è stato creato questo nodo
resourceId string Risorsa di Azure per la macchina virtuale, se ne è stata creata una
subscriptionId string ID sottoscrizione per le risorse di questo nodo
regione string Posizione di questo nodo
vmSku string SKU (ad esempio, tipo di computer) per la macchina virtuale
priority string Il modello di determinazione prezzi della macchina virtuale in vigore ("regolare" o "spot")
placementGroupId string Il gruppo di posizionamento in cui si trova questo nodo, se presente
retryCount Integer Quante volte è stata tentata in precedenza questa azione specifica (vedere Numero tentativi)
temporizzazione (Oggetto) Mappa delle fasi di questo evento e delle relative durate (vedere Intervallo)

Microsoft.CycleCloud.NodeAdded

Questo evento viene generato per ogni nodo aggiunto a un cluster. Per ottenere un evento per un set di nodi aggiunti contemporaneamente, vedere ClusterSizeIncreased. Questo viene inviato quando il nodo viene visualizzato per la prima volta nell'interfaccia utente, quindi non dispone di informazioni sulla tempistica.

Microsoft.CycleCloud.NodeCreated

Questo evento viene generato ogni volta che viene avviato un nodo per la prima volta, ad esempio viene creata una macchina virtuale. Questo evento contiene le informazioni sulla tempistica seguenti:

  • Create: tempo totale per la creazione del nodo. Ciò include la creazione della macchina virtuale e la configurazione della macchina virtuale.
  • CreateVM: tempo necessario per creare la macchina virtuale.
  • Configure: tempo necessario per installare il software e configurare il nodo.

Microsoft.CycleCloud.NodeDeallocated

Questo evento viene generato ogni volta che un nodo viene deallocato. Questo evento contiene le informazioni sulla tempistica seguenti:

  • Deallocate: tempo totale per deallocare il nodo.
  • DeallocateVM: tempo necessario per deallocare la macchina virtuale.

Microsoft.CycleCloud.NodeStarted

Questo evento viene generato ogni volta che un nodo viene nuovamente avviato da uno stato deallocato. Questo evento contiene le informazioni sulla tempistica seguenti:

  • Start: tempo totale impiegato per riavviare il nodo deallocato.
  • StartVM: tempo necessario per avviare la macchina virtuale deallocata.

Microsoft.CycleCloud.NodeTerminata

Questo evento viene generato ogni volta che un nodo viene terminato e la relativa macchina virtuale viene eliminata. Questo evento contiene le informazioni sulla tempistica seguenti:

  • Terminate: tempo totale impiegato per terminare il nodo.
  • DeleteVM: tempo necessario per eliminare la macchina virtuale.

Oggetto

Ogni evento ha un "oggetto" che può essere usato per filtrare in Griglia di eventi. Gli eventi in CycleCloud hanno soggetti nel modello seguente:

  • /sites/SITENAME: per gli eventi specifici di una determinata installazione di CycleCloud
  • /sites/SITENAME/clusters/CLUSTERNAME: per gli eventi a livello di cluster
  • /sites/SITENAME/clusters/CLUSTERNAME/nodes/NODENAME: per gli eventi a livello di nodo

Ciò consente di "definire l'ambito" di una sottoscrizione di Griglia di eventi a un prefisso specifico per raccogliere un subset di eventi. Questa opzione può essere utilizzata in combinazione con il filtro del tipo di evento.

Stato

  • Succeeded: l'operazione ha avuto esito positivo.
  • Failed: l'operazione non è riuscita. Spesso è presente un reason oggetto e/o errorCode impostato.
  • Canceled: l'operazione è stata annullata.

Motivo

Alcuni eventi hanno un motivo per cui sono stati avviati. Se non diversamente indicato, questi vengono impostati negli ClusterSizeIncreasedeventi , NodeAdded, NodeDeallocatedNodeCreated, NodeStarted, e NodeTerminated .

  • Autoscaled: il nodo è stato modificato in risposta a una richiesta di scalabilità automatica effettuata tramite l'API
  • UserInitiated: l'operazione è stata eseguita direttamente tramite l'interfaccia utente o l'interfaccia della riga di comando
  • System: l'operazione è stata avviata da CycleCloud (ad esempio, per impostazione predefinita, i nodi di esecuzione vengono rimossi automaticamente dal cluster al termine)
  • SpotEvicted: l'evento è stato attivato perché è stata rimossa una macchina virtuale spot (solo eventi NodeTerminati)
  • VMDisappeared: l'evento è stato attivato perché una macchina virtuale non spot è scomparsa (solo eventi NodeTerminati)
  • AllocationFailed: non è stato possibile allocare la macchina virtuale a causa di vincoli di posizionamento o capacità (solo eventi NodeTerminati/NodeDeallocated, con lo stato che indica il risultato dell'operazione di terminazione/deallocazione)

Nota

l'oggetto reason è impostato sugli eventi NodeTerminati per indicare il motivo per cui il nodo è stato terminato. Quando non è possibile creare un nodo a causa della capacità, l'errore ha esito negativo con il codice di errore specifico di Azure (di cui esistono diversi). Il nodo viene quindi terminato automaticamente e il motivo della terminazione è AllocationFailed. Quando viene rimossa una macchina virtuale spot in esecuzione, l'operazione di creazione è già riuscita. Il nodo viene quindi terminato automaticamente e il motivo specificato per l'evento di terminazione è SpotEvicted.

Intervallo

Alcuni eventi contengono informazioni sulla tempistica. La timing voce in data è un oggetto con chiavi corrispondenti alle fasi dell'evento e i valori come secondi totali. A ogni evento possono essere associate più fasi di temporizzazione. Si supponga, ad esempio, che un nodo venga aggiunto a un cluster, avviato e terminato:

! Diagramma intervallo griglia di eventi

  • T1: l'utente aggiunge un nodo. Viene inviato un NodeAdded evento senza temporizzazione.
  • T2: l'operazione create-VM ha esito negativo, quindi NodeCreated viene inviato con lo stato Non riuscito e le informazioni di intervallo seguenti:
    • Create: T2-T1
    • CreateVM: T2-T1
  • T3: L'utente fa clic su Riprova
  • T4: l'operazione Create-VM ha esito positivo, quindi il nodo avvia l'installazione del software.
  • T5. Il software viene installato correttamente, quindi NodeCreated viene inviato con lo stato Di esito positivo e le informazioni di intervallo seguenti:
    • Create: (T5-T3)
    • CreateVM: (T4-T3)
    • Configure: (T5-T4)
  • T6: l'utente fa clic su Termina.
  • T7: l'operazione delete-VM ha esito positivo, quindi NodeTerminated viene inviata con uno stato di Esito positivo e le informazioni di intervallo seguenti:
    • Started: T6-T5
    • Terminate: T7-T6
    • DeleteVM: T7-T6

Intervallo di stato precedente

La prima volta che un nodo passa a uno stato (se correttamente o meno), non ha stato precedente. Quando lo stato di destinazione viene quindi modificato dopo questo punto, il tempo trascorso nello stato precedente viene incluso nell'evento per il nuovo stato di destinazione. Si noti che questa operazione è inclusa solo se ha raggiunto correttamente lo stato precedente. Di conseguenza, queste voci di intervallo misurano il periodo di tempo per quanto segue:

  • Started: prima di questo evento, il nodo era in esecuzione (ad esempio, verde)
  • Deallocated: prima di questo evento, il nodo era stato deallocato
  • Terminated: prima di questo evento, il nodo era stato disattivato

Questa operazione può essere usata, ad esempio, per tenere traccia della durata dell'esecuzione di una macchina virtuale spot prima dell'eliminazione.

Retry Count

Alcune operazioni possono essere riprovate in CycleCloud se hanno esito negativo. Queste operazioni vengono riflesse negli NodeCreatedeventi , NodeDeallocated, NodeStartede NodeTerminated . Questi eventi contengono una proprietà facoltativa retryCount nella proprietà dell'evento data che indica quante volte prima di questa operazione è stata tentata. Questa proprietà è inclusa nei tentativi successivi, indipendentemente dal fatto che tali tentativi abbiano avuto esito positivo o non riuscito.