Formazione e Tecnologia

Scripting

Powershell per creare da remoto le macchine virtuali Hyper-V

Powershell per creare da remoto le macchine virtuali Hyper-V

L’uso delle macchine virtuali è molto frequente per implementare diverse tipologie di servizi presso un cliente, senza dover necessariamente aggiungere un server o un computer dedicato. Un caso frequente è quello del classico Microsoft SQL Server necessario per gestire piccoli servizi interni, dove una macchina virtuale evita di installare un server dedicato e l’impiego della versione per Linux limita la necessità di risorse hardware.

Tornando all’oggetto necessario per la virtualizzazione, per quanto non sia da tutti amato, uno degli strumenti di virtualizzazione esistenti e molto utilizzato è Microsoft Hyper-V.

L’uso di questo strumento mette a disposizione un consistente numero di comandi con il modulo di gestione Powershell, con i suoi cmdlet è possibile svolgere anche da remoto tutte le operazioni previste per la console di gestione e anche qualcuna in più.

Vogliamo condividere con voi il modo in cui creaimo delle nuove macchine virtuali usando Powershell, una situazione che si verifica molto spesso per la creazione di piattaforme di test.

Tabella dei Contenuti

Powershell e le nuove macchine virtuali

La procedura di creazione richiede degli step secondo una specifica sequenza, che andiamo ad approfondire nel seguito. Nelle prime realizzazioni si può incappare in qualche errore, ma nulla di irrimediabile, basta cancellare la macchina virtuali e ripartire.

È inutile dire che abbiamo integrato in un RMM la procedura di creazione delle macchine virtuali e tutto quanto concerne il controllo del loro funzionamento.

Iniziamo!

Il commutatore… Continua a leggere

Esportare i drivers di Windows 10 con Powershell.

Esportare i drivers di Windows 10 con Powershell.

L’installazione di un nuovo computer è spesso ritenuta una passeggiata; infatti, basta dire avanti ad ogni richiesta proposta da Microsoft Windows 10 (11), senza valutare cosa si sta accettando. Quando si sostituisce un computer ci sono diversi aspetti da considerare e che possono causare una perdita di tempo, come la presenza di una vecchia stampante i cui driver non sono disponibili, o qualsiasi altro dispositivo nella medesima situazione.

Con l’avvento di Windows 10 è presente una funzionalità, gestita con Powershell, che consente di eseguire un’esportazione dei drivers presenti nel sistema operativo, salvandoli in un percorso a scelta, anche esterno al computer. Il risultato dell’esportazione può essere anche di diversi giga byte, ma quando non sono disponibili i driver per il nuovo computer, sarà sufficiente dirgli di svolgere la ricerca nel percorso contenente la vecchia esportazione.

L’operazione può anche essere automatizzata con degli script schedulati, così da disporre dei driver anche nel caso di un guasto irreparabile del disco. Ovviamente tutto quello che passa da uno script può essere dato in gestione ad un RMM.

L’obiettivo è esportare i driver del sistema operativo mediante una cmdlet di Powershell, per poi poterli usare nel caso di reinstallazione del sistema operativo, semplicemente mantenendo il materiale su una chiavetta o in un altro punto da dove richiamarli nel momento del bisogno.

La procedura è in realtà disponibile a partire dal sistema operativo Microsoft Windows 8.1 e da… Continua a leggere

Lavoro di squadra tra software

Lavoro di squadra tra software

In un precedente articolo abbiamo visto come ottimizzare gli script Powershell, arrivando a creare dei moduli contenenti le funzioni utilizzate per le proprie attività di manutenzione.

Il modulo è quel passaggio che consente di avere sottomano delle funzioni usabili da più procedure e usabili direttamente dalla console Powershell del computer e del server, la loro combinazione permette di semplificare il lavoro ottenendo un “lavoro di squadra”, dove i membri della squadra sono i moduli realizzati e legati tra loro delle procedure che li impiegano.

Per noi individuare lo User ID degli utenti collegati richiede un solo comando (Get-AllUSID) e non diversi cmdlet e filtri combinati.

Arrivati all’uso dei moduli, il passaggio successivo è il distribuirli posizionandoli nel giusto percorso e generare in modo automatico il relativo manifesto.

La generazione del manifesto è ben documentata da Microsoft e in diversi blog, per accedere a queste informazioni è sufficiente avvalersi del consulente Google.

Per praticità riportiamo alcuni link di riferimento:

Appresi gli elementi di base per rendere disponibile un modulo, diventa importante trovare una strategia che permetta di posizionarli seguendo uno standard, in tal senso diventa utile automatizzare, usando degli script che con pochi parametri permettano di compiere le operazioni necessarie alla delivery, ancora meglio se usando un RMM.

Tabella dei Contenuti

Gli elementi… Continua a leggere

Programmare con stile

Programmare con stile

Il tempo impiegato per svolgere un’attività è un fattore fondamentale, è sempre opportuno trovare una via che permetta di risparmiarlo, in un’escursione si cerca sempre di seguire l’itinerario che permette di raggiungere le tappe previste con il percorso più diretto e nel minor tempo.

Quando si programma si tende a scrivere il codice nel modo in cui passa per la mente, inserendo più volte le medesime sequenze di codice o eseguendo dopo quello che sarebbe meglio eseguire prima.

Il risultato finale è un codice che richiede microsecondi in più di processazione, che sommati ai microsecondi di altre procedure, fanno perdere del tempo processore e della memoria impiegata per il caricamento e l’esecuzione dello script.

In presenza di un RMM lo script realizzato deve essere, con ottimizzazioni diverse, trasferito al computer che lo deve eseguire, un’azione che richiede a sua volta dei secondi di sincronizzazione che potrebbero essere sfruttati per altre operazioni.

Da diversi anni realizziamo procedure in Powershell per svolgere diverse tipologie di operazioni ed in questi anni abbiamo sempre più cercato di realizzare del codice pulito e comprensibile.

In questo articolo scriveremo di come abbiamo impostato la realizzazione dei nostri script per ottenere il meglio da loro e dai dispositivi su cui vengono eseguiti.

Tabella dei Contenuti

La comprensione del codice

Sarebbe un falso dire che iniziamo a scrivere lo script seguendo dei rigidi formalismi, anche noi iniziamo a scrivere inserendo i cmdlet un po’ a caso, per iniziare a valutare… Continua a leggere

Reset del agente Axcient D2C

Reset del agente Axcient D2C

Tra le nostre soluzioni in ambito informatico abbiamo anche la soluzione di backup di tipo BCDR (Business Continuity and Disaster Recovey) di Axcient, ovvero una tipologia di software di backup che immagazzina in cloud protetti i salvataggi dei sistemi interessati.

L’operazione di salvataggio avviene attraverso un agente, che con i suoi servizi, si occupa di creare una fotografia (snapshot) del computer/server, utilizzando il servizio Shadow Copy di Windows, per estrapolando quindi le differenze rispetto al salvataggio precedente ed inviando il risultato nel cloud attraverso un meccanismo di comunicazione criptato.

La validità della soluzione è strettamente legata al corretto funzionamento dell’agente di backup, per questa ragione abbiamo realizzato diversi monitor per il controllo di funzionamento e di ritardo di esecuzione dei backup rispetto ai tempi attesi, che possono anche essere di quindici minuti.

Ogni prodotto software è soggetto alle interferenze dagli altri prodotti software e possono verificarsi situazioni contingenti che portano ad un malfunzionamento dell’agente e al conseguente fermo dei salvataggi.

Per far fronte a questo evento eccezionale è possibile eseguire una procedura di reset, di rapida esecuzione, ma che richiede l’accesso al computer, per tale ragione abbiamo realizzato uno script Powershell dedicato a Datto RMM, ma modificabile per qualsiasi RMM e nel caso eseguibile a mano sul computer interessato.

Per chiarire l’eccezionalità dell’evento di malfunzionamento dell’agente, basti pensare che la procedura ha almeno un anno di vita e dalla sua realizzazione è stata usata una sola… Continua a leggere