为私有数据设置 Azure 订阅和 VNet
Azure 私有数据处理涉及在 Azure 订阅和 VNet 内运行 Alteryx One Platform 数据处理群集。您的基础架构与 Alteryx 管理的 Azure 资源和软件的这种组合通常被称为私有数据处理。
本页面将重点介绍如何为 Alteryx One 上的私有数据处理设置您的 Azure 订阅和 VNet。
注意
Azure 订阅和 VNet 设置需要访问 Azure 门户并拥有相关权限。如果您没有此访问权限,请与 IT 团队联系以完成此步骤。
小心
切勿删除为私有数据处理预配的资源。
设置步骤
重要
要继续执行这些步骤,您必须获得 Azure Application Developer 和 Owner RBAC 角色。
步骤 1:选择 Azure 订阅
选择要在其中运行私有数据处理的订阅。
为了提高性能和降低出站成本,您的 Blob 存储和私有数据处理 AKS 群集应位于您为私有数据存储选择的同一区域和资源组中。这适用于您要连接到 Alteryx One 的任何数据源。
在 Azure 订阅中创建的 VPC 应专用于 Alteryx One。您可以使用 VPC 对等连接、传输网关、PrivateLink 或其他方式来设置与私有数据源的连接。
步骤 2:创建资源组
Alteryx One 所需的 Azure 云资源部署在资源组中。
创建名为
aac_resource_group的资源组。注意
aac_resource_group是本指南中的一个示例名称。您可以为资源组选择任何名称。使用以下参数标记资源组:
标记名称:
AACResource标记值:
aac
查看并创建资源组。
步骤 3:配置 IAM
在您的 Azure 订阅就绪后,现在设置服务主体和访问密钥。
注意
您可以使用相同的应用程序注册在同一租户下的不同订阅中预配私有数据处理。
步骤 3a:创建应用程序注册(服务账户)
创建名为
aac_automation_sa的新注册。在支持的账户类型上,选择任何组织目录中的账户(任何 Microsoft Entra ID 租户 - 多租户)。
选择注册。
生成访问密钥:
选择您刚刚创建的应用程序注册。
选择证书和私密密钥。
选择客户端私密密钥。
选择新建客户端密钥。
选择添加。
注意
您将需要应用程序注册客户端 ID 和私密密钥来预配用于私有数据处理的云资源。
步骤 3b:创建 IAM 自定义角色
您需要创建一个自定义 IAM 角色。将该 IAM 角色命名为 AAC_Base_SA_role,并附上以下角色文档。我们建议您使用 JSON 选项卡而不是可视化编辑器。Alteryx One 确实需要一些 * 权限才能运行。在创建角色时,预计会出现一些安全警告。
{
"properties": {
"roleName": "AAC_Base_SA_Role",
"description": "Custom role for provisioning AAC private data handling",
"assignableScopes": [
"/subscriptions/<subscription ID>"
],
"permissions": [
{
"actions": [
"Microsoft.Authorization/*/read",
"Microsoft.Network/applicationGateways/backendAddressPools/join/action",
"Microsoft.Network/locations/*",
"Microsoft.Network/networkInterfaces/*",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/publicIPAddresses/read",
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Resources/deployments/*",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/read",
"Microsoft.Resources/subscriptions/operationresults/read",
"Microsoft.Storage/storageAccounts/*",
"Microsoft.KeyVault/*",
"Microsoft.Network/virtualNetworks/subnets/read",
"Microsoft.Network/routeTables/routes/read",
"Microsoft.Network/routeTables/read",
"Microsoft.Authorization/roleDefinitions/write",
"Microsoft.Authorization/roleDefinitions/delete",
"Microsoft.Authorization/roleAssignments/delete"
],
"notActions": [],
"dataActions": [],
"notDataActions": []
}
]
}
}重要
AAC_Base_SA_Role 是一个示例角色名称。您可以为角色选择任何名称,但该名称必须以 AAC_Base 开头。
步骤 3c:将自定义角色绑定到订阅中的应用程序注册
步骤 4:创建网络安全组 (NSG)
在资源组
aac_resource_group中创建网络安全组。使用以下参数标记网络安全组:
标记名称:
AACResource标签值:
aac
步骤 5:配置虚拟专用网
步骤 5a:创建虚拟网络 (VNet)
在资源组
aac_resource_group中创建虚拟网络。提示
Azure 创建默认地址空间和默认子网。删除默认子网并更新地址空间。
以下列出的 CIDR 块专为 Alteryx One 控制平面保留。避免使用以下项设置 VPC CIDR:
100.64.0.0/1010.4.0.0/1410.64.0.0/2010.0.0.0/22
根据要部署的模块添加这些 IPv4 地址空间。您可能需要使用单个地址空间创建 VNet,然后选择设置 > 地址空间 以添加第二个地址空间。
对于 Designer Cloud 和 Machine Learning,添加
/18和/22地址空间。对于 Cloud Execution for Desktop,添加
/22地址空间
使用以下参数标记 VNet:
标记名称:
AACResource标记值:
aac
步骤 5b:配置功能切换符
在您的 Azure 订阅上注册 EnableAPIServerVnetIntegrationPreview 功能切换符。
注意
与私有数据源的连接需要 VNet 和数据源之间的网络路径。按照共担责任矩阵中的定义,您可以根据自己的网络策略和首选项设置这些网络路径。
步骤 5c:IP 允许列表
Alteryx Cloud 产品部署在 Kubernetes 群集中。控制平面通过 WireGuard VPN 隧道与数据平面 Kubernetes 群集进行安全通信。为了通过 WireGuard VPN 实现无缝和安全通信,必须在数据平面网络中将以下 IP 地址列入允许列表,供入站和出站流量使用:
Alteryx Cloud 中的 PDP | 将列入允许列表的 IP |
|---|---|
us1.alteryxcloud.com | Wireguard 服务器 IP:
控制平面 IP: 传送 IP:
|
eu1.alteryxcloud.com | Wireguard 服务器 IP:
控制平面 IP: 传送 IP:
|
au1.alteryxcloud.com | Wireguard 服务器 IP:
控制平面 IP: 传送 IP:
|
preprod.alteryxcloud.com | Wireguard 服务器 IP:
控制平面 IP: 传送 IP:
|
步骤 6:创建密钥保管库
您的数据源凭证使用您的密钥进行加密,并安全地存储在您的私有数据平面账户内的私有加密保管库(私有凭证存储)中。仅在您需要时,才会从库中检索这些凭证。
在资源组
aac_resource_group中创建密钥保管库。将此保管库命名为
aac-credentials-vault,然后单击下一步。选择基于 Azure 角色的访问控制作为权限模型,然后选择下一步以继续。
要允许访问,请选择所选网络。
添加在 为私有数据设置 Azure 订阅和 VNet - 步骤 5a:创建虚拟网络 (VNet) 中创建的虚拟网络 (VNet)。
选中全选复选框。
选择添加以继续。
标记密钥保管库
标记名称
Value
AACResource
aac
选择查看并创建。
注意
密钥保管库名称是在私有数据处理页面中提供的。
步骤 7:触发请求增加配额
默认情况下,每个 Azure 订阅对同时运行的 vCPU 数量设有上限。要运行您的私有环境,您需要请求增加配额。这使您的环境可以进行扩容以满足您的需求。
您指定的确切数量将取决于多种因素,例如正在运行的应用程序数量、在硬件不足时对等待作业运行的容忍度,以及您是否愿意支付更多基础架构费用以减少作业运行的等待时间。
下面,我们将提供关于在 Alteryx One Platform 上运行分析工作负载的建议数量。您可以选择其他数量。例如,为了限制环境成本,您可能不希望将规模扩展得过高。或者,您可能希望增加数量,因为您正在运行多个 Alteryx One Platform 应用程序,并且希望确保硬件始终可用。
Alteryx 建议针对以下项目请求增加配额:
CPU 限制
配额名称:区域 vCPU 总数
范围:区域
Azure 默认配额值:10
建议的配额值:800(50 个节点 * 每节点 16 个 CPU)
配额名称:标准 Basv2 系列 vCPU
范围:区域
Azure 默认配额值:10
建议的配额值:800(50 个节点 * 每节点 16 个 CPU)
步骤 8:触发私有数据处理预配
警告
在设置私有数据处理后更改或移除任何 Alteryx One 配置的公有云资源可能会导致不一致。这些不一致可能会导致作业执行期间或取消私有数据处理设置时出错。
数据处理环境预配是从 Alteryx One 中的管理控制台触发的。您需要工作区内的“工作区管理员”权限才能查看它。
在 Alteryx One 登录页面上,单击右上方包含您姓名首字母缩写的圆圈图标。从菜单中选择管理控制台。
从左侧导航菜单中选择私有数据处理。
在继续操作之前,确保私有数据存储显示已成功配置。如果状态为未配置,请先转至 ADLS as Private Data Storage,然后再返回此步骤。
在“私有数据处理”部分下,您需要填写 5 个字段。这些值可通过您刚才完成的设置步骤来获取。
选择创建将触发一组验证检查,以验证是否根据需要设置了 Azure 订阅。如果权限配置不正确,或者 VNet 资源未正确创建或添加标记,您将收到一条错误消息,其中包含的说明应为您指明正确的方向。
重要说明
配置更改的生效时间
Alteryx One Platform 是一个分布式系统。对私有数据处理配置所做的更改必须先传播到多个系统,然后才能完全生效。例如,如果您在配置私有数据处理时,您的工作区中已存在正在运行的计划作业,则随后的几分钟内,您可能仍会看到作业在 Alteryx 数据处理环境中执行。
Terraform Runner 对 VPC 的访问权限
Alteryx 使用 Terraform 将更改应用于 VPC 中的基础架构和云资源。我们将多个 IP 地址添加到 EKS 群集的允许列表中,以便我们的 Terraform Runner 和控制平面能够进行访问。
请勿修改此列表。
您可以在 将 Alteryx Service 的 IP 地址范围列入允许列表 上找到 Alteryx 控制平面地址。Alteryx 的 Terraform Runner 使用以下 IP 地址:
"44.227.135.252/32"
"44.225.123.94/32"
"104.193.47.0/24"
"66.35.44.241/32"
"74.199.216.160/27"
"54.188.210.240/32"
出站连接
在您的私有数据处理环境中运行的软件需要出站通信(出口),原因如下:
工作流通常需要访问公共数据源,例如云存储桶和数据仓库。
数据平面服务通常需要访问控制平面中运行的其他服务(进行 API 调用、订阅消息队列等)。
软件映像通常从映像存储库中检索,以确保您的软件始终是最新的。
Alteryx 会收集应用程序日志和遥测数据以监控数据平面服务的运行状况及性能,并支持故障排除工作。
请勿对您的 VPC 或安全组应用任何额外规则来阻止或限制此出站流量。
凭证轮换
在步骤步骤 3b:创建 IAM 自定义角色中,您创建了一个名为 aac_automation_sa 并附带客户端私密密钥的应用程序注册。Alteryx 不控制这些凭证。
Alteryx 建议根据贵公司的策略要求轮换此凭证。如果贵公司没有相关策略,每 90 天轮换一次私密密钥不失为一个良好的开端。只需记住,Alteryx 需要保留对 VPC 的访问权限,以更新云资源和软件、监控您的私有环境的运行状况以及进行故障排除。在 Azure 中轮换此凭证时,请记住登录 Alteryx One Platform 并提供最新的凭证。