Avvia le applicazioni satellitari con Microsoft Azure
CasaCasa > Blog > Avvia le applicazioni satellitari con Microsoft Azure

Avvia le applicazioni satellitari con Microsoft Azure

Aug 28, 2023

Di Simon Bisson, editorialista, InfoWorld |

La transizione di Microsoft Azure verso una piattaforma basata su Kubernetes gli ha conferito un'interessante capacità che sta lentamente iniziando a trasformarsi in un vantaggio competitivo: Azure è ora portabile.

Stiamo già vedendo alcuni aspetti di tale portabilità nelle soluzioni edge di Azure, basate su Azure Arc e Azure Stack, e nella capacità di spingere i servizi cognitivi di Azure containerizzati sull'hardware edge e di eseguire funzioni serverless all'esterno del cloud. Un cloud portatile offre una grande flessibilità, con modelli di sviluppo nativi del cloud che scalano dai computer Raspberry Pi a scheda singola ai sistemi distribuiti globali in più aree geografiche.

Allo stesso tempo, il cloud scalabile e portatile ti consente di utilizzare le stesse API e gli stessi SDK ovunque tu voglia. Non è interamente una soluzione "scrivi una volta, esegui ovunque", ma hai un ambiente scalabile, flessibile e componibile che può essere gestito utilizzando strumenti di orchestrazione devops familiari su e giù per lo stack.

Ora Microsoft sta portando Azure nello spazio. Azure Space è il wrapper per una gamma di strumenti e tecnologie diversi, dalle stazioni terrestri satellitari portatili ad Azure Orbital Space, una piattaforma di sviluppo per applicazioni spaziali. Per quelli di noi che scrivono codice, la cosa più interessante è Azure Orbital Space. Quasi un anno dopo averlo annunciato, Microsoft mantiene il suo Orbital Space SDK sotto stretto controllo; l'SDK per la creazione di applicazioni indipendenti dai satelliti è disponibile solo tramite un'anteprima privata.

Tuttavia, possiamo avere una buona idea di ciò che offre dalla documentazione pubblica disponibile e dai repository GitHub. Ciò che è chiaro è che, come previsto, si basa sullo stesso insieme di tecnologie Azure che Microsoft utilizza per la sua piattaforma edge, trattando i satelliti semplicemente come un altro host edge. Ciò significa che dovrebbe essere molto semplice prendere qualsiasi codice edge esistente di Azure e spingerlo nello spazio.

Le applicazioni vengono eseguite su una piattaforma virtualizzata che fornisce interfacce comuni per comunicazioni, dati e sensori, con applicazioni realizzate in Visual Studio Code utilizzando pipeline CI/CD familiari e framework di test. Una volta creata, un'applicazione può essere caricata su hardware in orbita che supporta contenitori e Dapr, il runtime dell'applicazione distribuita open source. Questo approccio supporta lo sviluppo e la condivisione di modelli per le comuni applicazioni spaziali, nonché la capacità di eseguire una maggiore elaborazione dei dati in un satellite.

Ad esempio, un satellite per l’osservazione della Terra potrebbe utilizzare modelli di visione artificiale ospitati in container per identificare, ad esempio, gli incendi nelle immagini che cattura. Identificando le posizioni degli incendi in orbita, il satellite potrebbe inviare a terra solo le immagini rilevanti e i dati sulla posizione, invece di consumare una larghezza di banda limitata per inviare tutti i dati delle immagini a una stazione di terra per l’elaborazione. Con gli strumenti di intelligenza artificiale e le funzionalità edge di Azure al centro del programma AI for Earth di Microsoft, le applicazioni e gli strumenti esistenti per le risorse terrestri potrebbero essere collocati dove sono necessari a un costo minimo, offrendo ai paesi in via di sviluppo l'accesso a dati preziosi.

L’intelligenza di bordo basata su questi approcci sta ora alimentando una nuova generazione di hardware satellitare, a metà tra i cubesat a basso costo con sensori relativamente semplici e la dipendenza dall’analisi a terra, e le più grandi piattaforme di imaging delle risorse terrestri gestite dal governo. Qui stai lavorando con hardware progettato per l'elaborazione in loco, una piattaforma di medie dimensioni con sensori a risoluzione più elevata. Puoi pensarlo come un data center edge nello spazio.

Un altro aspetto utile di Azure Orbital Space SDK è che semplifica l'aggiornamento del software spaziale in base alle esigenze. L'utilizzo di Dapr come destinazione di distribuzione garantisce che il codice indirizzi un set noto di API e, poiché Dapr viene eseguito come contenitore sidecar, il contenitore dell'applicazione diventa l'unità di distribuzione, consumando i componenti Dapr secondo necessità. Il codice può essere creato e testato sulla Terra, utilizzando un set locale di servizi satellitari virtualizzati, consentendo la convalida del codice rispetto alle API prima di essere caricato sull'host contenitore del satellite.