giovedì 18 ottobre 2018

PowerCLI 11.0.0 Updates - Automatic script to remove unnecessary modules


Disclaimer: Some of the procedures described below is not officially supported by VMware. Use it at your own risk.

L'11 Ottobre scorso è stata rilasciata la nuova versione PowerCLI 11.0.0 con un impressionante numero di novità ed aggiornamenti:

  • Added a new Security module
  • Added new cmdlets for Host Profiles
  • Added a new cmdlet to interact with NSX-T in VMware Cloud on AWS
  • Support for vSphere 6.7 Update 1
  • Support for NSX-T 2.3
  • Support for Horizon View 7.6
  • Support for vCloud Director 9.5
  • Multiplatform support for the Cloud module
  • Updated the Get-ErrorReport cmdlet
  • Removed the PCloud module
  • Removed the HA module
maggiori informazioni possono essere trovare sul blog ufficiale VMware a questo link.

L'update della PowerCLI di per se è semplice, come indicato anche in un mio precedente post è sufficiente lanciare il comando 'Update-Module -Name VMware.PowerCLI' ...


... e come per le precedenti versioni, se si utilizza Update-Module per aggiornare i moduli, le versioni esistenti non vengono rimosse (vedi Update a PowerCLI Module). Come vediamo dall'immagine sotto ci sono righe che contengono gli stessi moduli ma con diverse versioni.

Esattamente come indicato nel precedente post procedo con la rimozione dei moduli non più necessari; con la differenza che questa volta, ho realizzato un piccolo script in PowerShell per aiutarmi con l'identificazione dei moduli duplicati e la rimozione di quelli con versione inferiore.

Lo script di seguito è stato testato su Mac ....

#!/usr/local/bin/pwsh 
########################################################################################
#  File  : PurgeDuplicatePowerCliModules.ps1
#  Author: Lorenzo Moglie
#  Date  : 17.10.2018
#  Version     : 1.0.0.0
#  Disclaimer  : The script is provided as is, use at your own risk.
#  Description : This script list the VMware Modules Available into a TXT file. Read 
#                the txt file, line by line and comparing the duplicate modules 
#                uninstalling the older version
#######################################################################################

Get-Module -Name VMware.* -ListAvailable | select Name,Version > ModuleList.txt

$NameStr = ""
$VersionApp = ""
Get-Content ./ModuleList.txt | where {$_ -ne ""} | ForEach-Object { 
 $line=[regex]::Replace($_, "\s+", " ")
 $NameModule,$VersionModule = $line.split(' ')
 if($NameStr -match $NameModule) {  
  echo "Removing module: $NameModule --> Version One:$VersionModule --- Version Two:$VersionApp "
     if ([System.Version]::Parse($VersionModule) -lt [System.Version]::Parse($VersionApp)){
      echo "Removing version -> $VersionModule"
      Invoke-Expression  "Uninstall-Module -Name $NameModule -RequiredVersion $VersionModule -force"
     } else {
      echo "Removing version -> $VersionApp"
      Invoke-Expression  "Uninstall-Module -Name $NameModule -RequiredVersion $VersionApp -force"
     }
     echo ""
 }
 $NameStr = $NameModule
 if (($VersionModule -match "Version") -Or ($VersionModule -match "-------")) {
   # Do Nothing 
 } else {
   $VersionApp = $VersionModule
 }
}
rm ./ModuleList.txt
Prima di lanciare il file "PurgeDuplicatePowerCliModules.ps1" modifichiamo i permessi in questo modo ...
LIF:Desktop lorenzo$ chmod +x PurgeDuplicatePowerCliModule.ps1 

... lanciamo lo script .....
LIF:Desktop lorenzo$ ./PurgeDuplicatePowerCliModule.ps1 

In fine. Verifichiamo che i moduli duplicati siano stati correttamente rimossi ....

LIF:Desktop lorenzo$ pwsh 
PowerShell v6.0.2
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /Users/lorenzo/Desktop> Get-Module -ListAvailable VMware.* | Select Version,Name   

That's it.


L'output dello script è stato migliorato in questo post "PowerCLI 11.4.0 Updates - Automatic script to remove unnecessary modules improved"

sabato 13 ottobre 2018

Remapping Keys in macOS

Problema
Utilizzo quotidianamente, sia per scopi lavorativi che personali un MAC Book Pro. Quando sono in ufficio mi capita spesso di connettere schermo e tastiera USB (APPLE Magic Keyboard + Tastierino numerico) esterni come quella mostrata qui.


Con altrettanta frequenza mi capita di utilizzare il tastierino numerico per digitare indirizzi IP. Ma forse per pigrizia, ho sempre digitato dal tastierino i numeri e mai il "." (punto). Questo perché nel tastierino numerico come possibile vedere sotto è presente la "," (virgola).



Soluzione
Ho pensato quindi a come poter ri-mappare solo quello specifico tasto e non l'intero layout della tastiera.
La soluzione l'ho trovato nella technote "Remapping Keys in macOS 10.12 Sierra" di apple TN2450.
Per far funzionare il tutto bisogna procedere come indicato sotto. Da tenere presente che la modifica è temporanea e, ad ogni riavvio le impostazioni vengono perse (in futuro vediamo come rendere permanente questa modifica).
La soluzione è stata testata su di un ambiente macOS Mojave Versione 10.14.
  1. Apriamo un "Terminal"

  2. Procediamo con il verificare la lista dei device riconosciuti dal sistema ..digitando hidutil list


  3. Come possiamo vedere, la tastiera esterna è identificata dalla seguente stringa "Apple Keyboard"

  4. Prendiamo nota del ProductID (nel mio caso "0x221") e del VendorID (nel mio caso "0x5ac")

  5. Prendiamo nota dal link della Technote Apple dello "Usage ID (hex)" che corrisponde alla "," del tastierino alla riga "Keypad . and Delete" che corrisponde a "0x63".

  6. Prendiamo nota anche del carattere che vogliamo impostare al posto del tasto identificato alla riga "Keyboard . and ">"" con il UsageID che corrisponde a "0x37".

  7. Non ci resta che lanciare la seguente stringa da terminale ... e verificarne il funzionamento.

    LIF:~ Lorenzo$ hidutil property --matching '{"ProductID":0x221,"VendorID":0x5ac}' --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000063,"HIDKeyboardModifierMappingDst":0x700000037}]}'


  8. Funziona!!!!

  9. Se vogliamo ritornare alle impostazioni originali lanciare il comando:

    LIF:~ Lorenzo$ hidutil property  --set '{"UserKeyMapping":[]}'

  10. Per verificare le impostazioni lanciare il comando:
    LIF:~ Lorenzo$ hidutil property  --get "UserKeyMapping"


Prossimamente scrivorò, come fare in modo di attivare questa mappatura al ricnoscimento della tastiera, rendendolo permanente.

giovedì 4 ottobre 2018

New Advanced Deploy vSphere 6.5 Exam - 3V0-21.18


La settimana scorsa mi sono trovato a sostenere il nuovo esame "Advanced Deploy vSphere 6.5 Exam 2018" e volevo condividere alcune problematiche riscontrate, dovute spero, alla giovane età dell'esame.

VCAP-DCV 2018 Deploy Exam Details:
Exam Duration: 205 minutes
Number of Questions: 17 Questions
Passing Score: 300
Cost: $450
Format: Lab-based, Proctored

VCAP-DCV 2018 Deploy Exam Guide:
Exam Preparation Guide:
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/certification/vmware-vcap-dcv-2018-exam-prep-guide.pdf
Reference: https://www.vmware.com/education-services/certification/vcap-dcv-deploy-2018-exam.html

Il primo problema l'ho riscontrato nello schedulare l'esame. L'esame risulta essere disponibile sul sito della Pearson Vue, una volta scelto il centro dove sostenerlo non mi viene presentato nessun "calendar" per poterlo schedulare (giorno ed ora). In prima battuta ho pensato che fosse un problema del centro, magari non c'erano disponibilità in quella data. Ho quindi, provato a selezionare un altro centro ma con lo stesso risultato. Ho provato a selezionare vari centri a Milano, Roma, Bologna ..... sembra che questo esame non si possa schedulare.
L'unico modo che ho trovato per poterlo schedulare è stato, chiamando il supporto Pearson Vue.

Premesso: sapevo che l'esito di quest'esame non fosse immediato. Mi aspettavo dopo qualche ora di ricevere una email con l'esito dell'esame, ma nulla di fatto. Il giorno successivo non avendo ricevuto nessun tipo di notifica decido di scrivere al servizio Education di VMware chiedendo informazioni. Ehhh, dopo essere passato per varie persone del supporto, esattamente dopo una settimana dall'esame vengo a scoprire che il risultato di questo nuovo esame sarà disponibile tra le 4 e le 6 settimane....



non mi resta che incrociare le dita ed attendere.

Di seguito alcuni link utili per la preparazione all'esame:
VCAP6-DCV Deploy Exam Simulator – FREE (virtualg.uk)
VCAP6-DCV Deploy Practice (sostechblog.com)
VCAP6-DCV Deployment Exam Preparation (shirazerosagon.blogspot.com)
VCAP6-DCV Deployment Study Guide (vjenner.com)
VMware Hands-on Lab (VMware)

Ultimo consiglio utilizzare quotidianamente ESXi :-)