Habilitar a criptografia de disco para usar nós de cluster do Azure Service Fabric no Windows
Neste tutorial, você aprenderá de que modo habilitar a criptografia de disco em nós de cluster do Service Fabric no Windows. Será preciso seguir as etapas abaixo para cada um dos tipos de nós ou conjuntos de dimensionamento de máquinas virtuais. Para criptografar os nós, usaremos a funcionalidade do Azure Disk Encryption em conjuntos de dimensionamento de máquinas virtuais.
O guia abordará os seguintes tópicos:
- Conceitos importantes a serem considerados ao habilitar a criptografia de disco em conjuntos de dimensionamento de máquinas virtuais de cluster do Service Fabric no Windows.
- Etapas a serem seguidas antes de habilitar a criptografia de disco em nós de cluster do Service Fabric no Windows.
- Etapas a serem seguidas para habilitar a criptografia de disco em nós de cluster do Service Fabric no Windows.
Observação
Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.
Pré-requisitos
Auto-registro
A versão prévia da criptografia de disco para o conjunto de dimensionamento de máquinas virtuais exige obter um auto-registro. Use as seguintes etapas:
- Primeiro, execute o seguinte comando:
Register-AzProviderFeature -ProviderNamespace Microsoft.Compute -FeatureName "UnifiedDiskEncryption"
- Aguarde cerca de 10 minutos até que a leitura do status seja Registrado. É possível verificar o status executando o seguinte comando:
Get-AzProviderFeature -ProviderNamespace "Microsoft.Compute" -FeatureName "UnifiedDiskEncryption" Register-AzResourceProvider -ProviderNamespace Microsoft.Compute
Azure Key Vault
- Crie um cofre de chaves na mesma assinatura e região do conjunto de dimensionamento, depois selecione a política de acesso EnabledForDiskEncryption no cofre de chaves usando o respectivo cmdlet do PowerShell. Também é possível definir a política usando a interface do usuário do Key Vault no portal do Azure com o seguinte comando:
Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -EnabledForDiskEncryption
- Instale a versão mais recente da CLI do Azure que tem os novos comandos de criptografia.
- Instale a versão mais recente do SDK do Azure da versão do Azure PowerShell. Veja abaixo os cmdlets do Azure Disk Encryption do conjunto de dimensionamento de máquinas virtuais para habilitar (definir) a criptografia, recuperar (obter) o status da criptografia e remover (desabilitar) a criptografia na instância do conjunto de dimensionamento.
Comando | Versão | Fonte |
---|---|---|
Get-AzVmssDiskEncryptionStatus | 1.0.0 ou posterior | Az.Compute |
Get-AzVmssVMDiskEncryptionStatus | 1.0.0 ou posterior | Az.Compute |
Disable-AzVmssDiskEncryption | 1.0.0 ou posterior | Az.Compute |
Get-AzVmssDiskEncryption | 1.0.0 ou posterior | Az.Compute |
Get-AzVmssVMDiskEncryption | 1.0.0 ou posterior | Az.Compute |
Set-AzVmssDiskEncryptionExtension | 1.0.0 ou posterior | Az.Compute |
Cenários com suporte para criptografia de disco
- A criptografia para os conjuntos de dimensionamento de máquinas virtuais é compatível somente com os conjuntos de dimensionamento criados com os discos gerenciados. Não é suportado para conjuntos de escala de discos nativos (ou não gerenciados).
- A criptografia é compatível com o sistema operacional e os volumes de dados usados em conjuntos de dimensionamento de máquinas virtuais no Windows. Desabilitar a criptografia também é compatível com o sistema operacional e os volumes de dados usados em conjuntos de dimensionamento de máquinas virtuais no Windows.
- As operações usadas para refazer imagem e atualizar a máquina virtual em conjuntos de dimensionamento de máquinas virtuais não são compatíveis com a versão prévia atual.
Criar um cluster e habilitar a criptografia de disco
Use os comandos a seguir para criar um cluster e habilitar a criptografia de disco usando um modelo do Azure Resource Manager e um certificado autoassinado.
Entrar no Azure
Entre usando os seguintes comandos:
Login-AzAccount
Set-AzContext -SubscriptionId <guid>
azure login
az account set --subscription $subscriptionId
Usar um modelo personalizado que você já tem
Caso precise criar um modelo personalizado para atender às suas necessidades, recomendamos começar com um dos modelos disponíveis na página de Exemplos de modelos de criação de cluster do Azure Service Fabric. Para personalizar seu modelo de cluster, confira as diretrizes a seguir.
Caso já tenha um modelo personalizado, verifique novamente se os três parâmetros relacionados ao certificado usados no modelo e no arquivo de parâmetro estão nomeados conforme mostrado abaixo, bem como se estes valores são nulos:
"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
Implantar um aplicativo em um cluster do Service Fabric no Windows
Para implantar um aplicativo em seu cluster, siga as etapas e as diretrizes descritas no artigo Implantar e remover aplicativos usando o PowerShell.
Habilitar a criptografia de disco para os conjuntos de dimensionamento de máquinas virtuais criados anteriormente
A fim de habilitar a criptografia de disco para os conjuntos de dimensionamento de máquinas virtuais criados por meio das etapas anteriores, execute os seguintes comandos:
$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>
Verifique se a criptografia de disco está habilitada para um conjunto de dimensionamento de máquinas virtuais no Windows
Obtenha o status de um conjunto de dimensionamento de máquinas virtuais completo ou instâncias em um conjunto de dimensionamento executando os comandos a seguir.
$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>
Além disso, é possível entrar no conjunto de dimensionamento de máquinas virtuais e verificar se as unidades estão criptografadas.
Desabilitar a criptografia de disco para um conjunto de dimensionamento de máquinas virtuais em um cluster do Service Fabric
Desabilite a criptografia de disco para um conjunto de dimensionamento de máquinas virtuais executando os comandos a seguir. Observe que desabilitar a criptografia de disco se aplica ao conjunto de dimensionamento de máquinas virtuais completo, em vez de somente uma instância individual.
$VmssName = "nt1vm"
$resourceGroupName = "mycluster"
Disable-AzVmssDiskEncryption -ResourceGroupName $rgName -VMScaleSetName $VmssName
az vmss encryption disable -g <resourceGroupName> -n <VMSS name>
Próximas etapas
Neste momento, você deve ter um cluster protegido e saber de que modo habilitar e desabilitar a criptografia de disco para os nós de cluster e conjuntos de dimensionamento de máquinas virtuais do Service Fabric. Para obter diretrizes semelhantes sobre os nós de cluster do Service Fabric no Linux, confira a Criptografia de disco para Linux.