Documentazione
Console e metriche
Due modi di osservare una macchina già in esecuzione: un collegamento in diretta al suo schermo o al suo terminale, e i grafici che raccontano che cosa ha fatto. Entrambi passano attraverso il suo agente e nessuno dei due richiede che qualcosa di suo sia raggiungibile da internet.
La console
Una sessione di console è un tunnel: dal suo browser alla piattaforma, dalla piattaforma al suo agente attraverso il collegamento già aperto, e dal suo agente alla macchina. La piattaforma che sta nel mezzo non guarda mai il contenuto: conta i byte e li inoltra.
Come viene stabilita una sessione
- Il pannello richiede un ticket per quel singolo server. La richiesta viene rifiutata se non dispone dell’autorizzazione a usare la console di questo server, se l’agente non è connesso, se l’integrazione è disattivata o se la macchina non si trova in uno stato che prevede una console.
- Il ticket è valido per un minuto e può essere usato una volta sola. Indica il server, quindi un ticket per qualcos’altro non può aprire questa console.
- Il suo browser apre un socket separato con quel ticket. Lì tutti i controlli vengono rifatti, perché in quel minuto le cose possono cambiare.
- L’agente si collega alla macchina e comunica di quale protocollo si tratta: uno schermo per una macchina virtuale, un terminale per un server di gioco. Il suo browser rifiuta un protocollo che non conosce, con un messaggio anziché con un rettangolo nero.
Limiti
- Una sessione dura al massimo un’ora. La piattaforma lo impone per conto proprio, accanto all’agente, e comunica il motivo della chiusura.
- Se il suo browser non riesce a stare al passo, il tunnel viene messo in pausa anziché interrotto. Solo quando la coda diventa davvero grande la sessione viene chiusa.
- La sessione viene registrata nel registro delle attività come sessione: quanto è durata e quanti dati sono passati in ciascuna direzione. Mai il contenuto.
Quali provider ne hanno una
Una scheda console compare ovunque l’integrazione ne offra una, e la relativa pagina delle integrazioni indica quali lo fanno. Le macchine virtuali e i server di gioco possono avere uno schermo o un terminale dal vivo; un account di hosting è una porzione di una macchina condivisa, senza nulla di proprio a cui collegarsi, quindi non ne ha mai una.
- Per Proxmox si tratta dello schermo della macchina stessa, sulla stessa porta e con lo stesso token che l’integrazione già utilizza, quindi non serve un secondo varco nel suo firewall.
- Per Pterodactyl è il terminale del server di gioco, ritrasmesso da Wings. Si vedono l’output della console, i cambi di stato e i dati di utilizzo, ed è possibile inviare comandi.
Metriche
Ogni server viene misurato con lo stesso ritmo di venti secondi del polling. Le misurazioni recenti vengono conservate così come sono per i grafici rapidi; quelle più vecchie vengono aggregate in blocchi di cinque minuti con un valore medio, un minimo e un massimo, così un picco non sparisce dentro la media.
Gli intervalli di tempo
Un’ora e sei ore vengono disegnate a partire dalle misurazioni recenti, un giorno e una settimana da quelle aggregate. Gli intervalli aggregati portano inoltre una banda che mostra il valore più alto e quello più basso di ogni blocco.
Che cosa viene rappresentato
I grafici disponibili per un server dipendono da ciò che il suo provider è in grado di misurare.
- Macchine virtuali: processore, memoria, disco, rete e throughput del disco. L’utilizzo del disco all’interno del sistema guest non è visibile all’hypervisor, quindi quel grafico mostra la dimensione assegnata.
- Account di hosting: l’utilizzo della quota disco. È ciò che riporta un pannello di controllo.
- Server di gioco: processore, memoria, disco e rete. Wings non riporta il throughput del disco.
I vuoti
Dopo una disconnessione le misurazioni non vengono reinviate, di proposito. Un agente che è stato assente lascia un vuoto nel grafico anziché una raffica di punti retrodatati, e la linea si interrompe invece di essere tirata dritta.
Le misurazioni recenti vengono conservate per qualche ora, quelle aggregate per un mese. Un server eliminato mantiene i suoi grafici finché non scadono.
Le metriche dell’agente stesso
Un agente ha grafici propri, divisi in quattro gruppi: l’host su cui gira, il processo dell’agente, il collegamento con la piattaforma e l’interfaccia di rete da cui serve le installazioni. Quando una famiglia ha più etichette, vengono disegnate le tre più attive e le altre vengono elencate per nome.
Il log dell’agente
Oltre alle metriche esiste un log operativo che l’agente trasmette in diretta: che cosa stanno facendo il suo runtime, la sua sessione, le sue integrazioni, il suo servizio di installazione e i suoi download. È composto dall’agente a partire da codici e parametri, quindi viene reso nella sua lingua, ed è ripulito due volte da tutto ciò che somiglia a un segreto, una volta sul suo host e una all’arrivo.