Povolení šifrování disků pro uzly clusteru Azure Service Fabric ve Windows

V tomto kurzu se dozvíte, jak povolit šifrování disků na uzlech clusteru Service Fabric ve Windows. Tento postup budete muset provést pro každý typ uzlu a škálovací sady virtuálních počítačů. K šifrování uzlů použijeme funkci Azure Disk Encryption ve škálovacích sadách virtuálních počítačů.

Průvodce se zabývá následujícími tématy:

  • Klíčové koncepty, které je potřeba znát při povolování šifrování disků ve škálovacích sadách virtuálních počítačů clusteru Service Fabric ve Windows.
  • Postup před povolením šifrování disku na uzlech clusteru Service Fabric ve Windows
  • Postup povolení šifrování disku na uzlech clusteru Service Fabric ve Windows

Poznámka

K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Požadavky

Vlastní registrace

Šifrování disků ve verzi Preview pro škálovací sadu virtuálních počítačů vyžaduje vlastní registraci. Použijte k tomu následující postup:

  1. Nejprve spusťte následující příkaz:
    Register-AzProviderFeature -ProviderNamespace Microsoft.Compute -FeatureName "UnifiedDiskEncryption"
    
  2. Počkejte asi 10 minut, než se stav změní na Zaregistrováno. Stav můžete zkontrolovat spuštěním následujícího příkazu:
    Get-AzProviderFeature -ProviderNamespace "Microsoft.Compute" -FeatureName "UnifiedDiskEncryption"
    Register-AzResourceProvider -ProviderNamespace Microsoft.Compute
    

Azure Key Vault

  1. Vytvořte trezor klíčů ve stejném předplatném a stejné oblasti jako škálovací sada a pak pomocí rutiny PowerShellu vyberte zásadu přístupu EnabledForDiskEncryption pro trezor klíčů. Zásady můžete nastavit také pomocí uživatelského rozhraní Key Vault v Azure Portal pomocí následujícího příkazu:
    Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -EnabledForDiskEncryption
    
  2. Nainstalujte nejnovější verzi Azure CLI, která obsahuje nové příkazy pro šifrování.
  3. Nainstalujte nejnovější verzi sady Azure SDK z verze Azure PowerShell. Následují rutiny služby Azure Disk Encryption škálovací sady virtuálních počítačů, které umožňují (nastavit) šifrování, načíst (získat) stav šifrování a odebrat (zakázat) šifrování v instanci škálovací sady.
Příkaz Verze Zdroj
Get-AzVmssDiskEncryptionStatus 1.0.0 nebo novější Az.Compute
Get-AzVmssVMDiskEncryptionStatus 1.0.0 nebo novější Az.Compute
Disable-AzVmssDiskEncryption 1.0.0 nebo novější Az.Compute
Get-AzVmssDiskEncryption 1.0.0 nebo novější Az.Compute
Get-AzVmssVMDiskEncryption 1.0.0 nebo novější Az.Compute
Set-AzVmssDiskEncryptionExtension 1.0.0 nebo novější Az.Compute

Podporované scénáře šifrování disků

  • Šifrování škálovacích sad virtuálních počítačů se podporuje jenom u škálovacích sad vytvořených se spravovanými disky. Nepodporuje se pro nativní (ani nespravované) škálovací sady disků.
  • Šifrování se podporuje pro svazky s operačním systémem a daty ve škálovacích sadách virtuálních počítačů ve Windows. Zákaz šifrování se podporuje také pro svazky s operačním systémem a daty pro škálovací sady virtuálních počítačů ve Windows.
  • Operace obnovení z image a upgradu virtuálních počítačů pro škálovací sady virtuálních počítačů nejsou v aktuální verzi Preview podporované.

Vytvoření nového clusteru a povolení šifrování disku

Pomocí následujících příkazů vytvořte cluster a povolte šifrování disků pomocí šablony Azure Resource Manager a certifikátu podepsaného svým držitelem.

Přihlášení k Azure

Přihlaste se pomocí následujících příkazů:

Login-AzAccount
Set-AzContext -SubscriptionId <guid>


azure login
az account set --subscription $subscriptionId

Použijte vlastní šablonu, kterou už máte.

Pokud potřebujete vytvořit vlastní šablonu, která bude vyhovovat vašim potřebám, důrazně doporučujeme začít s některou ze šablon, které jsou k dispozici na stránce s ukázkami šablon pro vytvoření clusteru Azure Service Fabric . Informace o přizpůsobení šablony clusteru najdete v následujících doprovodných materiálech.

Pokud už vlastní šablonu máte, pečlivě zkontrolujte, jestli jsou všechny tři parametry související s certifikátem v šabloně a souboru parametrů pojmenované takto a že hodnoty mají hodnotu null:

   "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

Nasazení aplikace do clusteru Service Fabric ve Windows

Pokud chcete nasadit aplikaci do clusteru, postupujte podle pokynů v tématu Nasazení a odebrání aplikací pomocí PowerShellu.

Povolení šifrování disků pro škálovací sady virtuálních počítačů vytvořené dříve

Pokud chcete povolit šifrování disků pro škálovací sady virtuálních počítačů, které jste vytvořili v předchozích krocích, spusťte následující příkazy:


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

Ověření, jestli je pro škálovací sadu virtuálních počítačů ve Windows povolené šifrování disků

Stav celé škálovací sady virtuálních počítačů nebo jakékoli instance ve škálovací sadě získáte spuštěním následujících příkazů.


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

Kromě toho se můžete přihlásit ke škálovací sadě virtuálních počítačů a ujistit se, že jsou jednotky šifrované.

Zákaz šifrování disků pro škálovací sadu virtuálních počítačů v clusteru Service Fabric

Zakažte šifrování disků pro škálovací sadu virtuálních počítačů spuštěním následujících příkazů. Všimněte si, že zákaz šifrování disků se vztahuje na celou škálovací sadu virtuálních počítačů, a ne na jednotlivé instance.


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


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

Další kroky

V tuto chvíli byste měli mít zabezpečený cluster a vědět, jak povolit a zakázat šifrování disků pro uzly clusteru Service Fabric a škálovací sady virtuálních počítačů. Podobné pokyny k uzlům clusteru Service Fabric v Linuxu najdete v tématu Šifrování disků pro Linux.