Development
Now Reading
Windows 10 ora ha il suo super package manager
0

Windows 10 ora ha il suo super package manager

Windows 10 è appena stato rilasciato e si puĂ² iniziare a scoprire tutte le funzionalitĂ  che il nuovo sistema si porta dietro, alcune molto note, altre molte meno. E’ il caso di PackageManagement,  un nome poco fantasioso che nasconde perĂ² il debutto sulle versioni client di Windows di un package manager che a molti ricorderĂ  il famoso apt-get disponibile su molte distribuzioni Linux. In realtĂ  sarebbe meglio definirlo un super package manager perchĂ© unifica le funzionalitĂ  di tutti i diversi sistemi di installazione e gestione applicazioni disponibili su Windows e sviluppati nel corso degli anni, oltre che rappresentare un sistema di inventoring e discovery. Basato su Powershell ed il nuovo Windows Management Framework 5.0, PackageManager è in realtĂ  il perfezionamento di diverse funzionalitĂ  e tecnologie sviluppate nel corso degli anni.

In realtà sarebbe meglio definirlo un super package manager perché unifica le funzionalità di tutti i diversi sistemi di installazione e gestione applicazioni disponibili su Windows e sviluppati nel corso degli anni, oltre che rappresentare un sistema di inventoring e discovery.

Super package manager

Il nome in codice di questa tecnologia è significativo perchĂ© era OneGet, che potremmo tradurre come Get unico o univoco, e questo tradisce l’obiettivo della nuova funzionalitĂ : unificare i dati di provenienti da tutti i sistemi di gestione del software inclusi in Windows. Un compito non semplice se si considera che le diverse tecnologie introdotte negli anni: MSI, MSU, APPX (le nuove applicazioni Windows 8+) e le fonti come il Pannello di Controllo e così via.

L'architettura interna di PackageManager

L’architettura interna di PackageManager

La particolaritĂ  di Package Manager è la sua capacitĂ  di riunire quelli che vengono chiamati provider che non sono altro che interfacce verso diverse tecnologie di discovery, inventory e installazione. Viene così fornito un singolo set di API, esposte da Powershell, attraverso cui è possibile gestire fonti locali e remote, ognuna delle quali viene collegata al sistema dal suo apposito provider. Sebbene Windows10 venga installato con provider di default per le tecnologie piĂ¹ comuni, è probabile che presto vengano sviluppate da terze parti interfacce che integrano tecnologie diverse, arricchendo di funzionalitĂ  e possibilitĂ  il nuovo sistema di gestione.

Quale problema risolve PackageManager

Nella sua presentazione Microsoft ha indicato come target per la nuova tecnologia gli ITPro e i DevOp. In sostanza con PackageManager gli amministratori dei sistemi client possono creare sofisticate procedure di deploy e configurazione attraverso la realizzazione di script Powershell e la possibilità di verificare i software installati su Windows, la versione installata, la presenza di eventuali nuove versioni e la possibilità di installare / disinstallare software. Diventa quindi possibile inviare comandi come

Find-Package google-chrome-x64 | Install-Package -Verbose -Force

che installa Chrome a 64bit ma anche controllare quali pacchetti o software (grazie all’integrazione con il provider Programs) siano giĂ  installati.

FunzionalitĂ  principali

Come mostrato nell’immagine, i comandi che si possono utilizzare con il PackageManager non sono tantissimi: si tratta delle funzioni principali di gestione.

L'elenco dei cmdlet disponibili

L’elenco dei cmdlet disponibili

I cmdlet sono abbastanza auto-esplicativi.  Con il secondo comando evidenziato nell’immagine che compare di seguito, viene effettuata la ricerca di tutte le versioni disponibili per il pacchetto PSReadline utilizzando perĂ² solamente il provider PSModule.

La ricerca di un pacchetto e delle sue versioni attraverso PackageManager

La ricerca di un pacchetto e delle sue versioni attraverso PackageManager

Le potenzialitĂ  di PackageManager sono evidenti se si pensa che ogni provider puĂ² operare su repository indipendenti e che in teoria si puĂ² cercare un pacchetto usando tutti i provider. La capacitĂ  di sviluppare provider personalizzati apre infatti molteplici scenari, soprattutto in ambito aziendale.

Nel terzo esempio, si procede all’installazione di un pacchetto specificandone la versione e senza necessitĂ  di specificare il provider:

L'installazione di uno dei pacchetti

L’installazione di uno dei pacchetti

Nell’ultimo esempio, invece, vengono elencati i pacchetti installati:

Inventory dei pacchetti installati

Inventory dei pacchetti installati

La particolaritĂ  di questo comando è che viene utilizzato il provider speciale Programs che è connesso al Pannello di Controllo e corrisponde alla visualizzazione Aggiungi/Rimuovi programmi di Windows. Il parametro -IncludeWindowsInstaller serve a generare un elenco completo di pacchetti confrontando Windows Installer con la sezione Aggiungi/Rimuovi programmi di Windows nella quale vengono elencati solo i programmi che decidono di registrarsi in quella sezione. E’ necessario ricordare, infatti, che la registrazione di un programma nella sezione Aggiungi/Rimuovi programma del Pannello di Controllo è “volontaria”, cioè l’installer del software puĂ² decidere di farla o meno.

Conclusioni

Il nuovo PackageManager è una novità molto attesa nel mondo della gestione dei client Windows. Le tecnologie di automazione lato server sono da anni uno dei cavalli di battaglia della piattaforma Windows perché Microsoft ha iniziato questo percorso molti anni fa, combinando tecnologie come Powershell, la gestione dei server attraverso il Server Manager fino ad arrivare alla gestione delle singole applicazioni o ruoli attraverso apposite funzionalità come la Web Platform o le estensioni di System Center VMM.

Dal lato dei client, le novitĂ  hanno impiegato piĂ¹ tempo ad arrivare anche se le basi – anche in questo caso – sono state gettate molti anni fa e la testimonianza di questo è la compatibilitĂ  di questa tecnologia (e di tutto Windows Management Framework) con Windows 2008 R2.

Se ve lo state chiedendo, il motivo per cui Redmond sta investendo molto in queste tecnologie è semplice: diventata service provider con Azure, Microsoft ha bisogno di una piattaforma completa che consenta a lei ed a chi sceglie Windows di gestire decine, centinaia, potenzialmente migliaia o piĂ¹ macchine in maniera semplice ed efficace attraverso l’automazione. Per Microsoft sarebbe semplice buttare giĂ¹ qualche nuova tecnologia e lasciare ai partner e/o clienti l’onere di modificare il proprio modo di lavorare per incorporarla, come viene fatto da molte altre aziende.

Invece anche con PackageManager Microsoft ha dimostrato di volersi fare carico di tutto l’ecosistema Windows fornendo non solo la compatibilitĂ  con le tecnologie precedenti ma innovando il sistema con il supporto di provider multipli e personalizzati.

What's your reaction?
Love It
100%
Interested
0%
Meh...
0%
What?
0%
Hate it
0%
Sad
0%
Laugh
0%
Sleep
0%
Wow !
0%
About The Author
The Server-Side Technology Staff
You must unlearn what you have learned.

Leave a Response