用于 Azure HDInsight 的传输中 IPSec 加密
本文介绍如何为 Azure HDInsight 群集节点之间的通信实现传输中加密。
背景
Azure HDInsight 提供了多种不同的安全功能来保护企业数据。 这些解决方案按多个要素(外围安全性、身份验证、授权、审核、加密和合规性)分组。 静态数据和传输中的数据都可以应用加密。
Azure 存储帐户上的服务器端加密以及作为 HDInsight 群集一部分的 Azure VM 上的磁盘加密都包括静态加密。
在 HDInsight 上加密传输中的数据是通过传输层安全性 (TLS) 来实现的,可用于访问节点之间的群集网关 Internet 协议安全性 (IPSec)。 可选择在所有头节点、工作器节点、边缘节点、zookeeper 节点以及网关和 ID 代理节点之间启用 IPSec。
启用传输中加密
Azure 门户
若要使用 Azure 门户来创建启用传输中加密的新群集,请执行以下步骤:
开始正常的群集创建过程。 有关初始的群集创建步骤,请参阅通过使用 Azure 门户在 HDInsight 中创建基于 Linux 的群集。
完成“基本”和“存储”选项卡上的设置 。 继续进行到“安全性 + 网络”选项卡。
在“安全性 + 网络”选项卡上,选中“启用传输中加密”复选框 。
通过 Azure CLI 创建启用了传输中加密的群集
使用 isEncryptionInTransitEnabled
属性启用传输中加密。
可以下载示例模板和参数文件。 在使用下面的模板和 Azure CLI 代码片段之前,请将以下占位符替换为其正确值:
占位符 | 说明 |
---|---|
<SUBSCRIPTION_ID> |
Azure 订阅的 ID |
<RESOURCE_GROUP> |
要在其中创建新群集和存储帐户的资源组。 |
<STORAGEACCOUNTNAME> |
应与群集配合使用的现有存储帐户。 名称应采用 ACCOUNTNAME.blob.core.chinacloudapi.cn 的形式 |
<CLUSTERNAME> |
你的 HDInsight 群集的名称。 |
<PASSWORD> |
你选择的使用 SSH 及 Ambari 仪表板登录群集的密码。 |
<VNET_NAME> |
将要部署群集的虚拟网络。 |
以下代码片段将会执行下述初始步骤:
- 登录到 Azure 帐户。
- 设置要在其中执行创建操作的活动订阅。
- 为新的部署活动创建新的资源组。
- 部署模板来创建新群集。
az cloud set -n AzureChinaCloud
az login
# az cloud set -n AzureCloud //means return to Public Azure.
az account set --subscription <SUBSCRIPTION_ID>
# Create resource group
az group create --name <RESOURCEGROUPNAME> --location chinaeast2
az deployment group create --name HDInsightEnterpriseSecDeployment \
--resource-group <RESOURCEGROUPNAME> \
--template-file hdinsight-enterprise-security.json \
--parameters parameters.json