Share via


Abilitare la crittografia del disco per i nodi del cluster di Azure Service Fabric in Windows

In questa esercitazione si apprenderà come abilitare la crittografia del disco nei nodi del cluster di Service Fabric in Windows. È necessario seguire questa procedura per ognuno dei tipi di nodo e dei set di scalabilità di macchine virtuali. Per crittografare i nodi, si userà la funzionalità Crittografia dischi di Azure nei set di scalabilità di macchine virtuali.

La guida illustra gli argomenti seguenti:

  • Concetti chiave da tenere presenti quando si abilita la crittografia del disco nei set di scalabilità di macchine virtuali del cluster di Service Fabric in Windows.
  • Passaggi da seguire prima di abilitare la crittografia del disco nei nodi del cluster di Service Fabric in Windows.
  • Passaggi da seguire per abilitare la crittografia del disco nei nodi del cluster di Service Fabric in Windows.

Nota

È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

Prerequisiti

Autoregistrazione

L'anteprima della crittografia del disco per il set di scalabilità di macchine virtuali richiede la registrazione automatica. Eseguire la procedura descritta di seguito:

  1. Eseguire prima di tutto il comando seguente:
    Register-AzProviderFeature -ProviderNamespace Microsoft.Compute -FeatureName "UnifiedDiskEncryption"
    
  2. Attendere circa 10 minuti fino alla lettura dello stato Registrato. È possibile controllare lo stato eseguendo il comando seguente:
    Get-AzProviderFeature -ProviderNamespace "Microsoft.Compute" -FeatureName "UnifiedDiskEncryption"
    Register-AzResourceProvider -ProviderNamespace Microsoft.Compute
    

Azure Key Vault

  1. Creare un insieme di credenziali delle chiavi nella stessa sottoscrizione e nella stessa area del set di scalabilità, quindi selezionare i criteri di accesso EnabledForDiskEncryption nell'insieme di credenziali delle chiavi usando il relativo cmdlet di PowerShell. È anche possibile impostare i criteri usando l'interfaccia utente Key Vault nel portale di Azure con il comando seguente:
    Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -EnabledForDiskEncryption
    
  2. Installare la versione più recente dell'interfaccia della riga di comando di Azure, che include i nuovi comandi di crittografia.
  3. Installare la versione più recente di Azure SDK da Azure PowerShell versione. Di seguito sono riportati i cmdlet di Crittografia dischi di Azure del set di scalabilità di macchine virtuali per abilitare la crittografia (set), recuperare (ottenere) lo stato di crittografia e rimuovere (disabilitare) la crittografia nell'istanza del set di scalabilità.
Comando Versione Source (Sorgente)
Get-AzVmssDiskEncryptionStatus 1.0.0 o versioni successive Az.Compute
Get-AzVmssVMDiskEncryptionStatus 1.0.0 o versioni successive Az.Compute
Disable-AzVmssDiskEncryption 1.0.0 o versioni successive Az.Compute
Get-AzVmssDiskEncryption 1.0.0 o versioni successive Az.Compute
Get-AzVmssVMDiskEncryption 1.0.0 o versioni successive Az.Compute
Set-AzVmssDiskEncryptionExtension 1.0.0 o versioni successive Az.Compute

Scenari supportati per la crittografia dei dischi

  • La crittografia per i set di scalabilità di macchine virtuali è supportata solo per i set di scalabilità creati con dischi gestiti. Non è supportata per i set di scalabilità di dischi nativi (o non gestiti).
  • La crittografia è supportata per i volumi di dati e del sistema operativo nei set di scalabilità di macchine virtuali in Windows. La disabilitazione della crittografia è supportata anche per i volumi di dati e del sistema operativo per i set di scalabilità di macchine virtuali in Windows.
  • Le operazioni di ricreazione e aggiornamento delle macchine virtuali per i set di scalabilità di macchine virtuali non sono supportate nell'anteprima corrente.

Creare un nuovo cluster e abilitare la crittografia del disco

Usare i comandi seguenti per creare un cluster e abilitare la crittografia dei dischi tramite un modello di Azure Resource Manager e un certificato autofirmato.

Accedere ad Azure

Accedere con i comandi seguenti:

Login-AzAccount
Set-AzContext -SubscriptionId <guid>


azure login
az account set --subscription $subscriptionId

Usare il modello personalizzato già disponibile

Se è necessario creare un modello personalizzato in base alle proprie esigenze, è consigliabile iniziare con uno dei modelli disponibili nella pagina degli esempi di modelli di creazione del cluster di Azure Service Fabric . Per personalizzare la sezione del modello di cluster , vedere le indicazioni seguenti.

Se si dispone già di un modello personalizzato, verificare che tutti e tre i parametri correlati al certificato nel modello e il file di parametri siano denominati come segue e che i valori siano Null come indicato di seguito:

   "certificateThumbprint": {
      "value": ""
    },
    "sourceVaultValue": {
      "value": ""
    },
    "certificateUrlValue": {
      "value": ""
    },
$resourceGroupLocation="westus"
$resourceGroupName="mycluster"
$CertSubjectName="mycluster.westus.cloudapp.azure.com"
$certPassword="Password!1" | ConvertTo-SecureString -AsPlainText -Force 
$certOutputFolder="c:\certificates"

$parameterFilePath="c:\templates\templateparam.json"
$templateFilePath="c:\templates\template.json"


New-AzServiceFabricCluster -ResourceGroupName $resourceGroupName -CertificateOutputFolder $certOutputFolder -CertificatePassword $certpassword -CertificateSubjectName $CertSubjectName -TemplateFile $templateFilePath -ParameterFile $parameterFilePath 


declare certPassword=""
declare resourceGroupLocation="westus"
declare resourceGroupName="mylinux"
declare certSubjectName="mylinuxsecure.westus.cloudapp.azure.com"
declare parameterFilePath="c:\mytemplates\linuxtemplateparm.json"
declare templateFilePath="c:\mytemplates\linuxtemplate.json"
declare certOutputFolder="c:\certificates"


az sf cluster create --resource-group $resourceGroupName --location $resourceGroupLocation  \
	--certificate-output-folder $certOutputFolder --certificate-password $certPassword  \
	--certificate-subject-name $certSubjectName \
    --template-file $templateFilePath --parameter-file $parametersFilePath

Distribuire un'applicazione in un cluster di Service Fabric in Windows

Per distribuire un'applicazione nel cluster, seguire la procedura e le indicazioni riportate in Distribuire e rimuovere applicazioni con PowerShell.

Abilitare la crittografia del disco per i set di scalabilità di macchine virtuali creati in precedenza

Per abilitare la crittografia del disco per i set di scalabilità di macchine virtuali creati tramite i passaggi precedenti, eseguire i comandi seguenti:


$VmssName = "nt1vm"
$vaultName = "mykeyvault"
$resourceGroupName = "mycluster"
$KeyVault = Get-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName
$DiskEncryptionKeyVaultUrl = $KeyVault.VaultUri
$KeyVaultResourceId = $KeyVault.ResourceId

Set-AzVmssDiskEncryptionExtension -ResourceGroupName $resourceGroupName -VMScaleSetName $VmssName -DiskEncryptionKeyVaultUrl $DiskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -VolumeType All


az vmss encryption enable -g <resourceGroupName> -n <VMSS name> --disk-encryption-keyvault <KeyVaultResourceId>

Verificare se la crittografia del disco è abilitata per un set di scalabilità di macchine virtuali in Windows

Ottenere lo stato di un intero set di scalabilità di macchine virtuali o di qualsiasi istanza di un set di scalabilità eseguendo i comandi seguenti.


$VmssName = "nt1vm"
$resourceGroupName = "mycluster"
Get-AzVmssDiskEncryption -ResourceGroupName $resourceGroupName -VMScaleSetName $VmssName

Get-AzVmssVMDiskEncryption -ResourceGroupName $resourceGroupName -VMScaleSetName $VmssName -InstanceId "0"


az vmss encryption show -g <resourceGroupName> -n <VMSS name>

Inoltre, è possibile accedere al set di scalabilità di macchine virtuali e assicurarsi che le unità siano crittografate.

Disabilitare la crittografia del disco per un set di scalabilità di macchine virtuali in un cluster di Service Fabric

Disabilitare la crittografia del disco per un set di scalabilità di macchine virtuali eseguendo i comandi seguenti. Si noti che la disabilitazione della crittografia del disco si applica all'intero set di scalabilità di macchine virtuali e non a una singola istanza.


$VmssName = "nt1vm"
$resourceGroupName = "mycluster"
Disable-AzVmssDiskEncryption -ResourceGroupName $rgName -VMScaleSetName $VmssName


az vmss encryption disable -g <resourceGroupName> -n <VMSS name>

Passaggi successivi

A questo punto, è necessario avere un cluster sicuro e sapere come abilitare e disabilitare la crittografia del disco per i nodi del cluster di Service Fabric e i set di scalabilità di macchine virtuali. Per indicazioni simili sui nodi del cluster di Service Fabric in Linux, vedere Crittografia dischi per Linux.