Raggiungere un Customer Edge
Funzionano quattro vie di accesso, e quale sia applicabile è determinato dallo stato del nodo, da dove si effettua la connessione e da ciò che si deve raggiungere — anziché da una preferenza.
| Via di accesso | Richiede nodo ONLINE | Richiede raggiungibilità di rete | Limiti | Copre |
|---|---|---|---|---|
| Debug API | sì | sì | circa 25–30 minuti di riscaldamento su un nuovo sito | 34 comandi |
| Site Console | no | tramite Azure Bastion, nessun jump host necessario | Bastion deve essere di SKU Standard con tunneling, e non è distribuito per impostazione predefinita | L’interfaccia di risoluzione dei problemi dei nodi di F5 |
| SSH | no | dall’interno della VNet, solo verso l’indirizzo interno | la chiave deve essere presente dal primo avvio | La Site CLI locale completa |
| Console seriale | no | no | una sessione per VM; limite di 2.048 caratteri per l’incolla | La Site CLI locale completa |
La console seriale è l’ultima risorsa, e la sola via che sopravvive a un nodo privo di un percorso di rete funzionante.
La Site Console è di solito la prima da provare. È quella che richiede meno —
nessuna chiave SSH da distribuire, nessun jump host, nessun IP pubblico sul nodo e nessuna sostituzione di VM —
perché l’accesso diventa una decisione di Azure RBAC anziché un problema di distribuzione di credenziali.
Offre l’interfaccia di risoluzione dei problemi di F5 anziché la superficie dei comandi, quindi conviene andare oltre
quando servono comandi specifici o si vuole automatizzare qualcosa. Il suo unico prerequisito è Azure
Bastion, che questa distribuzione rende opzionale (enable_bastion, predefinito false) perché un
host di SKU Standard viene fatturato indipendentemente dal fatto che qualcuno apra un tunnel.
SSH è la via a cui ricorrere quando l’API di debug non è sufficiente, perché l’appliance offre
molti più comandi dei 34 che quell’API espone. Ha due costi. La chiave viene
scritta da cloud-init e quindi deve essere presente al primo avvio, il che significa che abilitarla su
nodi in esecuzione sostituisce ogni VM CE — una ricostruzione della flotta anziché una modifica di configurazione. E
sshd risponde solo sull’indirizzo interno del nodo, quindi serve un host all’interno della VNet;
sondare l’indirizzo con cui si conosce il nodo riporterà sempre porta chiusa.
Perché la distinzione non è una preferenza
Sezione intitolata “Perché la distinzione non è una preferenza”L’API di debug è servita dal control plane di F5 Distributed Cloud, che inoltra verso
il nodo attraverso il tunnel che vpm stabilisce durante la registrazione. Nessuna registrazione significa
nessun tunnel, il che significa che l’API non ha nulla verso cui inoltrare.
Fallisce in un modo poco utile anziché evidente, quindi un nodo che non si è mai avviato sembra un problema dell’API.
La console seriale segue una strada del tutto diversa — attraverso la piattaforma Azure fino alla porta seriale emulata del nodo. Non le importa se il nodo si è registrato, se ha raggiungibilità di rete o se ha un data plane funzionante. Questa indipendenza è tutto il punto, ed è il motivo per cui la diagnostica di avvio deve rimanere abilitata sulle VM CE.
Credenziali
Sezione intitolata “Credenziali”Ogni via di accesso usa credenziali diverse, e nessuna di esse va indicata su una riga di comando.
- Debug API — un token API di F5 Distributed Cloud, come
XCSH_API_TOKEN, con l’ URL del tenant comeXCSH_API_URL. Il file di contestoxcshin~/.config/xcsh/contexts/<tenant>.jsoncontiene entrambi, ed è ciò chescripts/capture-sitecli.shlegge quando l’ambiente non li fornisce. Il tenant di questa distribuzione èf5-sales-demo; un token creato per un altro tenant restituisce un semplice401che sembra una credenziale scaduta. - Site Console — due credenziali, a livelli diversi. Il login interattivo di Azure
apre il tunnel Bastion, e l’account
admindell’appliance stesso effettua l’accesso alla console dietro di esso tramite HTTP Basic. Per il lato Azure Microsoft dichiara che serve il ruolo Reader sulla VM, sulla sua NIC e sull’host Bastion; tale requisito non è verificato qui, perché ogni test è stato eseguito come proprietario della sottoscrizione. - SSH — la metà privata della coppia di chiavi la cui metà pubblica la distribuzione ha scritto in
/var/home/admin/.ssh/authorized_keysal primo avvio, più un host all’interno della VNet da cui raggiungere l’indirizzo interno. Connettersi comeadmin, non comeazureuser. - Console seriale — il login interattivo di Azure. Non esiste un service principal per questo: il tenant Entra aziendale di F5 non ne consente il provisioning, motivo per cui nessuna parte di questo processo viene eseguita in CI.