In qualità di consulente Citrix, mi capita spesso di lavorare a migrazioni di farm Citrix e di conseguenza ho spesso necessità di automatizzare la copia delle applicazioni pubblicate nella vecchia infrastruttura verso la nuova.
Ho per cui sviluppato in Powershell un tool che semplifica la migrazione delle applicazioni pubblicate, permettendo di definire granularmente cosa migrare e in quali Delivery Group di destinazione creare le pubblicazioni.
Il tool è stato sviluppato partendo da script Powershell condivisi dalla Community ed è di conseguenza libero per chiunque vorrà usarlo.
Il tool si basa sull’utilizzo dei comandi Powershell nativi esposti da Citrix tramite l’utilizzo del SDK. Se il tool viene eseguito su una VM che ha già presente l’SDK, viene visualizzata la voce “Citrix Snapin loaded”; altrimenti il programma presenta un bottone da cui scaricare il pacchetto SDK necessario. Il tool deve essere eseguito da un utente che abbia permessi di accesso alle farm.
Nella sezione “Export from Farm 1”, inserendo l’hostname o l’IP di un controller, è possibile esportare le applicazioni presenti sia in Delivery Groups che in Application Groups.
Spostandosi nella sezione “Import in Farm 2”, cliccando sul tasto “Load” vengono caricate tutte le esportazioni eseguite in precedenza (presenti nella cartella temporanea configurata nella prima tab). E’ possibile selezionare singolarmente le applicazioni che si vogliono importare o cliccare su “Select All” per selezionare tutte le applicazioni disponibili nel Delivery/Application Group selezionato.
Inserire l’host name o l’IP di un controller della farm di destinazione, connettersi, selezionare un Delivery Group di destinazione e importare le applicazioni selezionate in precedenza.
Le stesse attività eseguibili per l’importazione in una farm on-prem sono identicamente disponibili anche verso il Citrix Cloud. Diversamente dall’autenticazione on-prem, verso il Citrix Cloud è necessario autenticarsi tramite il caricamento di un file secureclient.csv (generato dal portale citrix.cloud.com) e dal CustomerId del tenant Cloud in uso.
Uno dei problemi che ho riscontrato durante l’utilizzo del Citrix Cloud è l’impossibilità di caricare file .ico desiderati in fase di pubblicazione di applicazioni custom (non recuperate automaticamente dallo start menu di una macchina esistente).
Volendo pubblicare una nuova applicazione, non presente nello start menu, si avrebbero a disposizione esclusivamente queste icone:
Come potete vedere, rispetto al Citrix Studio on-prem, non è possibile selezionare altre icone rispetto alle 9 disponibili. L’unica opzione possibile è cambiare l’icona tramite comandi Powershell.
In CVAMT ho per cui aggiunto la possibilità di selezionare applicazioni pubblicate precedentemente in Citrix Cloud e sostituirne l’icona presente. Così facendo è possibile pubblicare applicazioni con le icone desiderate.
In caso in cui la farm sorgente e destinazione non siano raggiungibili dalla stessa VM in uso, è sufficiente copiare il contenuto della cartella temporanea (dove sono state eseguite le esportazioni), in una cartella temporanea su un’altra VM da cui eseguire l’importazione. Resta chiaro che se i domini AD dovessero essere diversi, non sarebbe garantita l’importazione degli eventuali utenti/gruppi abilitati alle applicazioni.
Aggiornamento del 22/05/2020:
Ho notato che il tool, se eseguito direttamente su un Delivery Controller, si freeza in diverse occasioni. Le chiamate powershell sono state scritte per essere eseguite su una VM con a bordo il bacchetto CitrixPoshSdk:
https://download.apps.cloud.com/CitrixPoshSdk.exe
Tale pacchetto è diverso dal SDK che viene installato di default insieme a Citrix Studio e potrebbe per cui essere il motivo dei freeze. Approfondirò la questione nei prossimi giorni.
Le funzionalità di questo tool sono da considerare non garantite. Non sarò responsabile di malfunzionamenti e/o problemi derivanti dall’uso del suddetto tool. Consiglio di verificare manualmente le risorse migrate, al termine dell’attività di migrazione delle stesse.
Di seguito il link al repository per il Download:
Changelog
- 5 anni ago Add Prima pubblicazione
- 5 anni ago Update importazione nel Citrix Cloud non totalmente implementata
- 5 anni ago Add Implementazione importazione in Citrix Cloud terminata;
- 5 anni ago Update risoluzione freeze GUI e ottimizzazioni varie;
- 5 anni ago Add Freeze GUI in fase di importazione in Citrix Cloud risolto; ottimizzazione GUI.
- 5 anni ago Add Aggiunta funzionalità di cambio icona in Citrix Cloud
E bravo Silvio! 🙂
Grazie Alessandro 🙂
Bravo Silvio.
Ottimo tool.
Ciao Max,
Grazie! se hai consigli su come migliorarlo fammi sapere!
Silvio
Having trouble unpacking the tool. error 0x80004005.
Running Server 2019.
Any ideas?
Hi Torben,
I uploaded the compressed file to another sharing system because the previous system corrupted the .zip file.
You can download the correct .zip file by clicking on the CVAMT button (I have updated the link to use the new sharing system).
Regards,
Silvio