在启用磁盘加密的情况下创建池

在使用虚拟机配置创建 Azure Batch 池时,可以通过指定磁盘加密配置,使用平台管理的密钥来加密池中的计算节点。

本文介绍了如何创建启用了磁盘加密的 Batch 池。

重要

Azure Batch 针对“中国北部”、“中国北部 2”区域推出的公共预览版目前支持使用平台管理的密钥在主机上进行加密。 此预览版在提供时没有附带服务级别协议,不建议将其用于生产工作负荷。 某些功能可能不受支持或者受限。 有关详细信息,请参阅适用于 Azure 预览版的补充使用条款

为什么使用带有磁盘加密配置的池?

使用 Batch 池,可以在计算节点的 OS 和临时磁盘上访问并存储数据。 使用平台管理的密钥对服务器端磁盘进行加密,将会以较低的开销方便地对这些数据实施保护。

Batch 将会根据池配置和区域的可支持性在计算节点上应用这些磁盘加密技术之一。

你无法指定将哪种加密方法应用于池中的节点。 而是需要提供要在其节点上加密的目标磁盘,然后 Batch 可以选择适当的加密方法,从而确保在计算节点上对指定的磁盘进行加密。

重要

如果要使用自定义映像创建池,则只有在使用 Windows VM 时才能启用磁盘加密。

Azure 门户

在 Azure 门户中创建 Batch 池时,请选择“磁盘加密配置”下的“TemporaryDisk”或“OsAndTemporaryDisk” 。

Azure 门户中磁盘加密配置选项的屏幕截图。

创建池后,可在池的“属性”部分中看到磁盘加密配置目标。

显示 Azure 门户中磁盘加密配置目标的屏幕截图。

示例

以下示例演示了如何使用 Batch .NET SDK、Batch REST API 和 Azure CLI 来加密 Batch 池中的 OS 和临时磁盘。

Batch .NET SDK

pool.VirtualMachineConfiguration.DiskEncryptionConfiguration = new DiskEncryptionConfiguration(
    targets: new List<DiskEncryptionTarget> { DiskEncryptionTarget.OsDisk, DiskEncryptionTarget.TemporaryDisk }
    );

Batch REST API

REST API URL:

POST {batchURL}/pools?api-version=2020-03-01.11.0
client-request-id: 00000000-0000-0000-0000-000000000000

请求正文:

"pool": {
    "id": "pool2",
    "vmSize": "standard_a1",
    "virtualMachineConfiguration": {
        "imageReference": {
            "publisher": "Canonical",
            "offer": "UbuntuServer",
            "sku": "18.04-LTS"
        },
        "diskEncryptionConfiguration": {
            "targets": [
                "OsDisk",
                "TemporaryDisk"
            ]
        }
        "nodeAgentSKUId": "batch.node.ubuntu 18.04"
    },
    "resizeTimeout": "PT15M",
    "targetDedicatedNodes": 5,
    "targetLowPriorityNodes": 0,
    "taskSlotsPerNode": 3,
    "enableAutoScale": false,
    "enableInterNodeCommunication": false
}

Azure CLI

az batch pool create \
    --id diskencryptionPool \
    --vm-size Standard_DS1_V2 \
    --target-dedicated-nodes 2 \
    --image canonical:ubuntuserver:18.04-LTS \
    --node-agent-sku-id "batch.node.ubuntu 18.04" \
    --disk-encryption-targets OsDisk TemporaryDisk

后续步骤