Delen via


Schijfversleuteling inschakelen voor Azure Service Fabric-clusterknooppunten in Windows

In deze zelfstudie leert u hoe u schijfversleuteling inschakelt op Service Fabric-clusterknooppunten in Windows. U moet deze stappen volgen voor elk van de knooppunttypen en virtuele-machineschaalsets. Voor het versleutelen van de knooppunten gebruiken we de Azure Disk Encryption-functie op virtuele-machineschaalsets.

In de handleiding worden de volgende onderwerpen behandeld:

  • Belangrijke concepten waarmee u rekening moet houden bij het inschakelen van schijfversleuteling op virtuele-machineschaalsets van het Service Fabric-cluster in Windows.
  • Stappen die moeten worden gevolgd voordat u schijfversleuteling inschakelt op Service Fabric-clusterknooppunten in Windows.
  • Stappen die moeten worden gevolgd om schijfversleuteling in te schakelen op Service Fabric-clusterknooppunten in Windows.

Notitie

Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

Vereisten

Zelfregistratie

Voor de preview-versie van schijfversleuteling voor de virtuele-machineschaalset is zelfregistratie vereist. Voer de volgende stappen uit:

  1. Voer eerst de volgende opdracht uit:
    Register-AzProviderFeature -ProviderNamespace Microsoft.Compute -FeatureName "UnifiedDiskEncryption"
    
  2. Wacht ongeveer 10 minuten totdat de status Geregistreerd wordt gelezen. U kunt de status controleren door de volgende opdracht uit te voeren:
    Get-AzProviderFeature -ProviderNamespace "Microsoft.Compute" -FeatureName "UnifiedDiskEncryption"
    Register-AzResourceProvider -ProviderNamespace Microsoft.Compute
    

Azure Key Vault

  1. Maak een sleutelkluis in hetzelfde abonnement en dezelfde regio als de schaalset en selecteer vervolgens het toegangsbeleid EnabledForDiskEncryption in de sleutelkluis met behulp van de PowerShell-cmdlet. U kunt het beleid ook instellen met behulp van de Key Vault-gebruikersinterface in Azure Portal met de volgende opdracht:
    Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -EnabledForDiskEncryption
    
  2. Installeer de nieuwste versie van de Azure CLI, met de nieuwe versleutelingsopdrachten.
  3. Installeer de nieuwste versie van de Azure SDK vanuit de Azure PowerShell-release . Hieronder ziet u de Azure Disk Encryption-cmdlets van de virtuele-machineschaalset om versleuteling in te schakelen (instellen), versleutelingsstatus op te halen (ophalen) en versleuteling te verwijderen (uitschakelen) op het exemplaar van de schaalset.
Opdracht Versie Bron
Get-AzVmssDiskEncryptionStatus 1.0.0 of hoger Az.Compute
Get-AzVmssVMDiskEncryptionStatus 1.0.0 of hoger Az.Compute
Disable-AzVmssDiskEncryption 1.0.0 of hoger Az.Compute
Get-AzVmssDiskEncryption 1.0.0 of hoger Az.Compute
Get-AzVmssVMDiskEncryption 1.0.0 of hoger Az.Compute
Set-AzVmssDiskEncryptionExtension 1.0.0 of hoger Az.Compute

Ondersteunde scenario's voor schijfversleuteling

  • Versleuteling voor virtuele-machineschaalsets wordt alleen ondersteund voor schaalsets die zijn gemaakt met beheerde schijven. Het wordt niet ondersteund voor systeemeigen (of onbeheerde) schijfschaalsets.
  • Versleuteling wordt ondersteund voor besturingssysteem- en gegevensvolumes in virtuele-machineschaalsets in Windows. Versleuteling uitschakelen wordt ook ondersteund voor besturingssysteem- en gegevensvolumes voor virtuele-machineschaalsets in Windows.
  • Installatiekopie van virtuele machines en upgradebewerkingen voor virtuele-machineschaalsets worden niet ondersteund in de huidige preview.

Een nieuw cluster maken en schijfversleuteling inschakelen

Gebruik de volgende opdrachten om een cluster te maken en schijfversleuteling in te schakelen met behulp van een Azure Resource Manager-sjabloon en een zelfondertekend certificaat.

Aanmelden bij Azure

Meld u aan met de volgende opdrachten:

Login-AzAccount
Set-AzContext -SubscriptionId <guid>


azure login
az account set --subscription $subscriptionId

De aangepaste sjabloon gebruiken die u al hebt

Als u een aangepaste sjabloon wilt maken die aan uw behoeften voldoet, raden we u ten zeerste aan om te beginnen met een van de sjablonen die beschikbaar zijn op de pagina met voorbeelden van sjablonen voor het maken van een Azure Service Fabric-cluster. Zie de volgende richtlijnen om de sectie met clustersjablonen aan te passen.

Als u al een aangepaste sjabloon hebt, controleert u of alle drie de certificaatparameters in de sjabloon en het parameterbestand als volgt worden genoemd en dat de waarden als volgt null zijn:

   "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

Een toepassing implementeren in een Service Fabric-cluster in Windows

Als u een toepassing in uw cluster wilt implementeren, volgt u de stappen en richtlijnen bij Toepassingen implementeren en verwijderen met behulp van PowerShell.

Schijfversleuteling inschakelen voor de virtuele-machineschaalsets die eerder zijn gemaakt

Voer de volgende opdrachten uit om schijfversleuteling in te schakelen voor de virtuele-machineschaalsets die u in de vorige stappen hebt gemaakt:


$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>

Controleer of schijfversleuteling is ingeschakeld voor een virtuele-machineschaalset in Windows

Haal de status van een volledige virtuele-machineschaalset of een exemplaar in een schaalset op door de volgende opdrachten uit te voeren.


$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>

Daarnaast kunt u zich aanmelden bij de virtuele-machineschaalset en ervoor zorgen dat de stations zijn versleuteld.

Schijfversleuteling uitschakelen voor een virtuele-machineschaalset in een Service Fabric-cluster

Schakel schijfversleuteling voor een virtuele-machineschaalset uit door de volgende opdrachten uit te voeren. Houd er rekening mee dat het uitschakelen van schijfversleuteling van toepassing is op de hele virtuele-machineschaalset en niet op een afzonderlijk exemplaar.


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


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

Volgende stappen

Op dit moment moet u een beveiligd cluster hebben en weten hoe u schijfversleuteling kunt in- en uitschakelen voor Service Fabric-clusterknooppunten en virtuele-machineschaalsets. Zie Schijfversleuteling voor Linux voor vergelijkbare richtlijnen voor Service Fabric-clusterknooppunten in Linux.