Citrix Virtual Apps and Desktops

Creare un catalogo AWS

Creare cataloghi di macchine descrive le procedure guidate che creano un catalogo di macchine. Le seguenti informazioni coprono i dettagli specifici degli ambienti di virtualizzazione AWS.

Nota:

Prima di creare un catalogo AWS, è necessario completare la creazione di una connessione ad AWS. Vedere Connessione ad AWS.

Limitazione

A partire da Citrix Virtual Apps and Desktops™ 2203 LTSR e versioni successive, il plug-in MCS AWS effettua la chiamata API AWS DescribeInstanceTypes e, se questa ha successo, MCS utilizza il nome dell’inventario creato dalla risposta API.

Pertanto, quando si esegue l’aggiornamento da CVAD 1912 a 2203 o versioni successive, disabilitare l’autorizzazione DefineInstanceType su AWS, quindi aggiornare il catalogo esistente utilizzando il comando Set-ProvScheme per corrispondere allo schema di denominazione AWS. Successivamente, aggiungere nuovamente le autorizzazioni DescribeInstanceType dopo che l’aggiornamento del catalogo è completo e l’offerta di servizi corrisponde allo schema di denominazione AWS.

Impostazioni di rete durante la preparazione dell’immagine

Durante la preparazione dell’immagine, viene creata una macchina virtuale (VM) di preparazione basata sulla VM originale. Questa VM di preparazione è disconnessa dalla rete. Per disconnettere la rete dalla VM di preparazione, viene creato un gruppo di sicurezza di rete per negare tutto il traffico in entrata e in uscita. Questo gruppo di sicurezza di rete persiste e viene riutilizzato. Il nome del gruppo di sicurezza di rete è Citrix.XenDesktop.IsolationGroup-GUID, dove GUID è generato casualmente.

Configurare la tenancy AWS

AWS offre le seguenti opzioni di tenancy:

  • Tenancy condivisa (il tipo predefinito): più istanze Amazon EC2 di clienti diversi potrebbero risiedere sullo stesso hardware fisico.
  • Tenancy dedicata: le istanze EC2 vengono eseguite solo su hardware con altre istanze che Lei ha distribuito. Altri clienti non utilizzano lo stesso hardware.

È possibile utilizzare MCS per il provisioning di host dedicati AWS tramite PowerShell.

Configurare la tenancy di host dedicati AWS tramite PowerShell

È possibile creare un catalogo di macchine con tenancy host definita tramite PowerShell.

Un host dedicato Amazon [EC2] è un server fisico con capacità di istanza [EC2] completamente dedicata, che Le consente di utilizzare licenze software esistenti per socket o per VM.

Gli host dedicati hanno un utilizzo preimpostato basato sul tipo di istanza. Ad esempio, un singolo host dedicato allocato di tipo di istanza C4 Large è limitato all’esecuzione di 16 istanze. Per maggiori informazioni, consultare il sito AWS.

I requisiti per il provisioning su host AWS includono:

  • Un’immagine BYOL (bring your own license) importata (AMI). Con gli host dedicati, utilizzi e gestisca le Sue licenze esistenti.
  • Un’allocazione di host dedicati con un utilizzo sufficiente a soddisfare le richieste di provisioning.
  • Abilitare l’auto-placement.

Per eseguire il provisioning su un host dedicato in AWS utilizzando PowerShell, utilizzi il cmdlet New-ProvScheme con il parametro TenancyType impostato su Host.

Per maggiori informazioni, consultare la documentazione per sviluppatori Citrix.

Acquisire le proprietà della macchina dalle AMI

Quando crea un catalogo per il provisioning di macchine utilizzando Machine Creation Services (MCS) in AWS, seleziona un’AMI per rappresentare l’immagine master/golden di quel catalogo. Da quell’AMI, MCS utilizza uno snapshot del disco. Nelle versioni precedenti, se desiderava ruoli o tag sulle Sue macchine, avrebbe utilizzato la console AWS per impostarli individualmente. Questa funzionalità è abilitata per impostazione predefinita.

Suggerimento:

Per utilizzare l’acquisizione delle proprietà dell’istanza AWS, deve avere una VM associata all’AMI.

Per migliorare questo processo, MCS legge le proprietà dall’istanza da cui è stata acquisita l’AMI e applica il ruolo Identity Access Management (IAM) e i tag della macchina alle macchine di cui è stato eseguito il provisioning per un dato catalogo. Quando si utilizza questa funzionalità opzionale, il processo di creazione del catalogo trova l’istanza di origine AMI selezionata, leggendo un set limitato di proprietà. Queste proprietà vengono quindi archiviate in un modello di avvio AWS, che viene utilizzato per il provisioning delle macchine per quel catalogo. Qualsiasi macchina nel catalogo eredita le proprietà dell’istanza acquisite.

Le proprietà acquisite includono:

  • Ruoli IAM – applicati alle istanze di cui è stato eseguito il provisioning.
  • Tag - applicati alle istanze di cui è stato eseguito il provisioning, ai loro dischi e alle NIC. Questi tag vengono applicati alle risorse Citrix® transitorie, inclusi: bucket e oggetti S3, e AMI, snapshot e modelli di avvio.

Suggerimento:

L’assegnazione di tag alle risorse Citrix transitorie è facoltativa e configurabile utilizzando la proprietà personalizzata AwsOperationalResourcesTagging.

Acquisire la proprietà dell’istanza AWS

È possibile utilizzare questa funzionalità specificando una proprietà personalizzata, AwsCaptureInstanceProperties, durante la creazione di uno schema di provisioning per una connessione di hosting AWS:

New-ProvScheme -CustomProperties "AwsCaptureInstanceProperties,true" …<standard provscheme parameters

Per maggiori informazioni, consultare la documentazione per sviluppatori Citrix.

Nota:

La proprietà AwsCaptureInstanceProperties è deprecata. Si consiglia di utilizzare i profili macchina per specificare le proprietà della macchina per le VM.

Acquisire le proprietà della macchina dai profili macchina

Quando si crea un catalogo per il provisioning di macchine AWS utilizzando MCS, è possibile utilizzare un profilo macchina per preimpostare determinate impostazioni delle proprietà della macchina.

Per fare ciò, segua questi passaggi:

  1. Archivi i profili macchina nella stessa zona di disponibilità delle risorse in cui sta creando questo catalogo.
  2. Nella pagina Modello macchina della procedura guidata di creazione del catalogo, selezioni Usa un profilo macchina. Vengono visualizzati i profili macchina che si trovano nella stessa zona disponibile delle risorse selezionate.
  3. Selezioni un profilo macchina secondo necessità.

Nota:

È possibile utilizzare un profilo macchina o un’AMI per acquisire le proprietà della macchina. In Web Studio, quando si seleziona Usa un profilo macchina, l’opzione Applica le proprietà del modello macchina alle macchine virtuali viene automaticamente nascosta.

Assegnare tag alle risorse operative AWS

Quando si crea un catalogo per il provisioning di macchine in AWS utilizzando MCS, è possibile controllare se applicare il ruolo IAM e le proprietà dei tag a tali macchine. È anche possibile controllare se applicare i tag delle macchine alle risorse operative.

Un’Amazon Machine Image (AMI) rappresenta un tipo di appliance virtuale utilizzata per creare una macchina virtuale all’interno dell’ambiente Amazon Cloud, comunemente denominato EC2. Si utilizza un’AMI per distribuire servizi che utilizzano l’ambiente EC2. Quando si crea un catalogo per il provisioning di macchine utilizzando MCS per AWS, si seleziona l’AMI che fungerà da immagine golden per quel catalogo.

Importante:

La creazione di cataloghi acquisendo una proprietà di istanza e un modello di avvio è necessaria per l’utilizzo dell’assegnazione di tag alle risorse operative.

Per creare un catalogo AWS, è necessario prima creare un’AMI per l’istanza che si desidera sia l’immagine golden. MCS legge i tag da quell’istanza e li incorpora nel modello di avvio. I tag del modello di avvio vengono quindi applicati a tutte le risorse Citrix create nel Suo ambiente AWS, inclusi:

  • Macchine virtuali
  • Dischi VM
  • Interfacce di rete VM
  • Bucket S3
  • Oggetti S3
  • Modelli di avvio
  • AMI

Assegnare un tag a una risorsa operativa

Per utilizzare PowerShell per assegnare tag alle risorse:

  1. Apra una finestra PowerShell dall’host DDC.
  2. Esegua il comando asnp citrix per caricare i moduli PowerShell specifici di Citrix.

Per assegnare un tag a una risorsa per una VM di cui è stato eseguito il provisioning, utilizzi la nuova proprietà personalizzata AwsOperationalResourcesTagging. La sintassi per questa proprietà è:

New-ProvScheme -CustomProperties "AwsCaptureInstanceProperties,true; AwsOperationalResourcesTagging,true" …<standard provscheme parameters>

Dove andare dopo

Copiare i tag sulle VM

È possibile copiare i tag su NIC e dischi (disco di identità, disco di cache di scrittura e disco del sistema operativo) specificati nel profilo macchina su VM appena create in un catalogo di macchine MCS. È possibile specificare questi tag in una qualsiasi delle origini del profilo macchina (istanza VM AWS o versione del modello di avvio AWS). Questa funzionalità è applicabile ai cataloghi di macchine e alle VM persistenti e non persistenti.

Nota:

  • Nella console AWS EC2, non è possibile visualizzare i valori di Tag Network Interfaces (Tag interfacce di rete) in Launch Template Version Resource Tags (Tag risorsa versione modello di avvio). Tuttavia, è possibile eseguire il comando PowerShell aws ec2 describe-launch-template-versions --launch-template-id lt-0bb652503d45dcbcd --versions 12 per visualizzare le specifiche dei tag.
  • Se un’origine del profilo macchina (VM o versione del modello di avvio) ha due interfacce di rete (eni-1 e eni-2), e eni-1 ha il tag t1 e eni-2 ha il tag t2, allora la VM ottiene i tag di entrambe le due interfacce di rete.

Creare un catalogo utilizzando un profilo macchina

Quando si crea un catalogo per il provisioning di macchine utilizzando Machine Creation Services™ (MCS) in AWS, è ora possibile utilizzare un profilo macchina per acquisire le proprietà hardware da un’istanza EC2 (VM) o da una versione del modello di avvio e applicarle alle macchine di cui è stato eseguito il provisioning. Le proprietà acquisite possono includere, ad esempio, le proprietà del volume EBS, il tipo di istanza, l’ottimizzazione EBS e altre configurazioni AWS supportate. Durante la modifica del catalogo, il profilo macchina delle macchine di cui è stato eseguito il provisioning può essere modificato fornendo una VM o un modello di avvio diverso.

Nota:

Le proprietà del volume EBS sono derivate solo da un profilo macchina.

Considerazioni importanti

Le considerazioni importanti durante la creazione di un catalogo di macchine MCS:

  • Se si aggiungono parametri di proprietà hardware della macchina nei comandi New-ProvScheme e Set-ProvScheme, i valori forniti nei parametri sovrascrivono i valori nel profilo macchina.
  • Se si imposta AwsCaptureInstanceProperties su true e non si imposta la proprietà MachineProfile, vengono acquisiti solo i ruoli IAM e i tag.
  • Non è possibile impostare contemporaneamente AwsCaptureInstanceProperties e MachineProfile.

    Nota:

    La proprietà AwsCaptureInstanceProperties è deprecata.

  • È necessario fornire esplicitamente i valori delle seguenti proprietà:

    • TenancyType
    • Security Group
    • NIC o Virtual Network
  • È possibile abilitare AwsOperationalResourcesTagging solo se si abilita AwsCaptureInstanceProperties o si specifica un profilo macchina.

Le considerazioni importanti dopo la creazione di un catalogo di macchine MCS:

  • Solo le nuove VM aggiunte al catalogo sono interessate dalla modifica.
  • Non è possibile modificare un catalogo da basato su profilo macchina a catalogo non basato su profilo macchina.

Creare un catalogo di macchine utilizzando un profilo macchina

Per creare un catalogo di macchine utilizzando un profilo macchina:

  1. Apra una finestra PowerShell.
  2. Esegua asnp citrix* per caricare i moduli PowerShell specifici di Citrix.
  3. Crei un pool di identità se non è già stato creato. Ad esempio:

    New-AcctIdentityPool -IdentityPoolName idPool -NamingScheme ms## -Domain abcdf -NamingSchemeType Numeric
    <!--NeedCopy-->
    
  4. Esegua il comando New-ProvScheme. Ad esempio:

    New-ProvScheme -ProvisioningSchemeName demet-test-1
    -HostingUnitUid aa633238-9xxd-4cf6-80e8-232a758a1xx1
    -IdentityPoolUid 34d5b088-e312-416f-907d-16573xxxxxc4
    -CleanOnBoot
    -MasterImageVM 'XDHyp:\HostingUnits\cvad-test-scalestress\citrix-demet-ami.0 (ami-0ca813xxxxxx061ef).template'
    -MachineProfile 'XdHyp:\HostingUnits\cvad-test-scalestress\us-east-1a.availabilityzone\machine-profile-instance i (i-0xxxxxxxx).vm'
    <!--NeedCopy-->
    
  5. Completi la creazione del catalogo. Per maggiori informazioni, vedere Citrix PowerShell SDK.

Per aggiornare il profilo macchina su un catalogo inizialmente sottoposto a provisioning con un profilo macchina:

  1. Esegua il comando Set-ProvScheme. Ad esempio:

    Set-ProvScheme `
    -ProvisioningSchemeUid "<ID" `
    -MachineProfile "XDHyp:\HostingUnits\abc\us-east-1a.availabilityzone\citrix-cvad-machineprofile-instance (i-0xxxxxxxx).vm"
    <!--NeedCopy-->
    

Creare un catalogo con la versione del modello di avvio

È possibile creare un catalogo di macchine MCS con una versione del modello di avvio come input del profilo macchina. È anche possibile aggiornare l’input di un catalogo di profili macchina da una VM a una versione del modello di avvio e da una versione del modello di avvio a una VM.

Nella console AWS EC2, è possibile fornire le informazioni di configurazione dell’istanza di un modello di avvio insieme al numero di versione. Quando si specifica la versione del modello di avvio come input del profilo macchina durante la creazione o l’aggiornamento di un catalogo di macchine, le proprietà di quella versione del modello di avvio vengono copiate nelle VM VDA di cui è stato eseguito il provisioning.

Le seguenti proprietà possono essere fornite utilizzando l’input del profilo macchina o esplicitamente come parametri nei comandi New-ProvScheme o Set-ProvScheme. Se fornite nei comandi New-ProvScheme o Set-ProvScheme, hanno la precedenza sui valori del profilo macchina di queste proprietà.

  • Offerta di servizi
  • Reti
  • Gruppi di sicurezza
  • Tipo di tenancy

Nota:

Se l’offerta di servizi non è fornita nel modello di avvio del profilo macchina o come parametro nel comando New-ProvScheme, si riceverà un errore appropriato.

Per creare un catalogo utilizzando la versione del modello di avvio come input del profilo macchina:

  1. Apra una finestra PowerShell.
  2. Esegua asnp citrix* per caricare i moduli PowerShell specifici di Citrix.
  3. Ottenga l’elenco delle versioni del modello di avvio di un modello di avvio. Ad esempio:

    XDHyp:\HostingUnits\test\test-mp-sard (lt-01xxxxx).launchtemplate> ls | Select FullPath
    <!--NeedCopy-->
    
  4. Crei un pool di identità se non è stato creato. Ad esempio:

    New-AcctIdentityPool `
    -IdentityPoolName "abc11" `
    -NamingScheme "abc1-##" `
    -NamingSchemeType Numeric `
    -Domain "citrix-xxxxxx.local" `
    -ZoneUid "xxxxxxxx" `
    <!--NeedCopy-->
    
  5. Crei uno schema di provisioning con una versione del modello di avvio come input del profilo macchina. Ad esempio:

    New-ProvScheme `
    -ProvisioningSchemeName "MPLT1" `
    -HostingUnitUid "c7f71f6a-3f45-4xxx-xxxx-xxxxxxxxxx" `
    -IdentityPoolUid "bf3a6ba2-1f80-4xxx-xxxx-xxxxxxxxx" `
    -MasterImageVM "XDHyp:\HostingUnits\xxxd-ue1a\apollo-non-persistent-vda-win2022 (ami-0axxxxxxxxxxx).template" `
    -CleanOnBoot `
    -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-01xxxxx).launchtemplate\lt-01xxxxx (1).launchtemplateversion"
    <!--NeedCopy-->
    

    È anche possibile sovrascrivere parametri come l’offerta di servizi, i gruppi di sicurezza, la tenancy e le reti. Ad esempio:

    New-ProvScheme `
    -ProvisioningSchemeName "MPLT1" `
    -HostingUnitUid " c7f71f6a-3f45-4xxx-xxxx-xxxxxxxxxx" `
    -IdentityPoolUid " bf3a6ba2-1f80-4xxx-xxxx-xxxxxxxxx" `
    -MasterImageVM "XDHyp:\HostingUnits\xxxd-ue1a\apollo-non-persistent-vda-win2022 (ami-0axxxxxxxxxxx).template" `
    -CleanOnBoot `
    -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-01xxxx).launchtemplate\lt-01xxxx (1).launchtemplateversion" `
    -ServiceOffering "XDHyp:\HostingUnits\xxxd-ue1a\T3 Large Instance.serviceoffering"
    <!--NeedCopy-->
    
  6. Registri lo schema di provisioning come catalogo broker. Ad esempio:

    New-BrokerCatalog -Name "MPLT1" `
    -AllocationType Random `
    -Description "Machine profile catalog" `
    -ProvisioningSchemeId fe7df345-244e-4xxxx-xxxxxxxxx `
    -ProvisioningType Mcs `
    -SessionSupport MultiSession `
    -PersistUserChanges Discard
    <!--NeedCopy-->
    
  7. Completi la creazione del catalogo. Per maggiori informazioni, vedere Citrix PowerShell SDK

È anche possibile aggiornare l’input di un catalogo di profili macchina da una VM a una versione del modello di avvio e da una versione del modello di avvio a una VM. Ad esempio:

  • Per aggiornare l’input di un catalogo di profili macchina da una VM a una versione del modello di avvio:

     Set-ProvScheme -ProvisioningSchemeName "CloudServiceOfferingTest" `
     -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-0bxxxxxxxxxxxx).launchtemplate\lt-0bxxxxxxxxxxxx (1).launchtemplateversion"
     <!--NeedCopy-->
    
  • Per aggiornare l’input di un catalogo di profili macchina da una versione del modello di avvio a una VM:

     Set-ProvScheme -ProvisioningSchemeName "CloudServiceOfferingTest" `
     -MachineProfile "XDHyp:\HostingUnits\sard-ue1a\us-east-1a.availabilityzone\apollo-non-persistent-vda-win2022-2 (i-08xxxxxxxxx).vm"
     <!--NeedCopy-->
    

Filtrare le istanze VM

Un’istanza AWS EC2 che si utilizza come VM del profilo macchina deve essere compatibile affinché il catalogo di macchine possa essere creato e funzionare correttamente. Per elencare le istanze AWS EC2 che possono essere utilizzate come VM di input del profilo macchina, è possibile utilizzare il comando Get-HypInventoryItem. Il comando può impaginare e filtrare l’inventario delle VM disponibili su un’unità di hosting.

Impaginazione:

Get-HypInventoryItem supporta due modalità di impaginazione:

  • La modalità di impaginazione utilizza i parametri -MaxRecords e -Skip per restituire set di elementi:
    • -MaxRecords: il valore predefinito è 1. Questo controlla quanti elementi restituire.
    • -Skip: il valore predefinito è 0. Questo controlla quanti elementi saltare dall’inizio assoluto (o dalla fine assoluta) dell’elenco nell’hypervisor.
  • La modalità di scorrimento utilizza i parametri -MaxRecords, -ForwardDirection e -ContinuationToken per consentire lo scorrimento dei record:
    • -ForwardDirection: il valore predefinito è True. Questo viene utilizzato insieme a -MaxRecords per restituire il set successivo di record corrispondenti o il set precedente di record corrispondenti.
    • -ContinuationToken: restituisce gli elementi immediatamente dopo (o prima se ForwardDirection è false) ma non include l’elemento specificato in ContinuationToken.

Esempi di impaginazione:

  • Per restituire un singolo record del modello di macchina con il nome più basso. Il campo AdditionalData contiene TotalItemsCount e TotalFilteredItemsCount:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template
     <!--NeedCopy-->
    
  • Per restituire 10 record del modello di macchina con il nome più basso:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 10 | select Name
     <!--NeedCopy-->
    
  • Per restituire un array di record che terminano con il nome più alto:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -ForwardDirection $False -MaxRecords 10 | select Name
     <!--NeedCopy-->
    
  • Per restituire un array di record che iniziano dal modello di macchina associato al ContinuationToken specificato:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -ContinuationToken "ami-07xxxxxxxxxx" -MaxRecords 10
     <!--NeedCopy-->
    

Filtro:

I seguenti parametri opzionali aggiuntivi sono supportati per il filtro. È possibile combinare questi parametri con le opzioni di impaginazione.

  • -ContainsName "my_name": se la stringa specificata corrisponde a parte di un nome AMI, l’AMI viene inclusa nel risultato Get. Ad esempio:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 100 -ContainName ‘apollo’ | select Name
     <!--NeedCopy-->
    
  • -Tags '{ "Key0": "Value0", "Key1": "Value1", "Key2": "Value2" }': se un’AMI ha almeno uno di questi tag, viene inclusa nel risultato Get. Ad esempio:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 100 -Tags '{"opex owner": "Not tagged"}' | select Name
     <!--NeedCopy-->
    

    Nota:

    Sono supportati due valori di tag. Il valore di tag Not Tagged (Non taggato) corrisponde agli elementi che non hanno il tag specificato nel loro elenco di tag. Il valore di tag All values (Tutti i valori) corrisponde agli elementi che hanno il tag indipendentemente dal valore del tag. Altrimenti, la corrispondenza avviene solo se l’elemento ha il tag e il valore è uguale a quello specificato nel filtro.

  • -Id "ami-0a2d913927e0352f3": se l’AMI corrisponde all’ID specificato, viene inclusa nel risultato Get. Ad esempio:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -Id ami-xxxxxxxxxxxxx
     <!--NeedCopy-->
    

Filtro sul parametro AdditionalData:

Il parametro di filtro AdditionalData elenca i modelli o le VM in base alla loro capacità, offerta di servizi o qualsiasi proprietà presente in AdditionalData. Ad esempio:

(Get-HypInventoryItem -ResourceType "launchtemplateversion" -LiteralPath "XDHyp:\HostingUnits\aws" -MaxRecords 200).AdditionalData
<!--NeedCopy-->

È anche possibile aggiungere un parametro -Warn per indicare le VM incompatibili. Le VM sono incluse con un campo AdditionalData denominato Warning. Ad esempio:

(Get-HypInventoryItem -ResourceType "launchtemplateversion" -LiteralPath "XDHyp:\HostingUnits\aws" -MaxRecords 200 -Template "ami-015xxxxxxxxx" -Warn $true).AdditionalData
<!--NeedCopy-->

Maggiori informazioni