Azure 机器学习 - 使用受保护工作区时的网络流量流

目录

    • 环境准备
    • 入站和出站要求
    • 方案:从工作室访问工作区
    • 方案:从工作室使用 AutoML、设计器、数据集和数据存储
    • 方案:使用计算实例和计算群集
    • 方案:使用联机终结点
        • 入站通信
        • 出站通信
    • 方案:使用 Azure Kubernetes 服务
    • 方案:使用 Azure 机器学习管理的 Docker 映像

当 Azure 机器学习工作区和关联的资源在 Azure 虚拟网络中受保护时,资源之间的网络流量会发生改变。 在没有虚拟网络的情况下,网络流量将通过公共 Internet 或在 Azure 数据中心内部流动。 引入虚拟网络 (VNet) 后,你可能还想要强化网络安全性。 例如,阻止 VNet 与公共 Internet 之间的入站和出站通信。

关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。

file

环境准备

本文假设采用以下配置:

  • Azure 机器学习工作区使用专用终结点来与 VNet 通信。
  • 工作区使用的 Azure 存储帐户、密钥保管库和容器注册表也使用专用终结点来与 VNet 通信。
  • 客户端工作站使用 VPN 网关或 Express Route 来访问 VNet。

入站和出站要求

方案所需的入站配置所需的出站配置其他配置
[从工作室访问工作区]NA
  • Microsoft Entra ID
  • Azure Front Door
  • Azure 机器学习服务

| 可能需要使用自定义 DNS 服务器。 有关详细信息,请参阅 将工作区与自定义 DNS 结合使用。 |
| [从工作室使用 AutoML、设计器、数据集和数据存储] | NA | NA |

  • 工作区服务主体配置
  • 允许从受信任的 Azure 服务进行访问

有关详细信息,请参阅如何在虚拟网络中保护工作区。 |
| [使用计算实例和计算群集]|

  • 端口 44224 上的 Azure 机器学习服务
  • 端口 29876-29877 上的 Azure Batch Management 服务

|

  • Microsoft Entra ID
  • Azure Resource Manager
  • Azure 机器学习服务
  • Azure 存储帐户
  • Azure Key Vault

| 如果使用防火墙,请创建用户定义的路由。 有关详细信息,请参阅配置入站和出站流量。 |
| [使用 Azure Kubernetes 服务] | NA | 有关 AKS 的出站配置的信息,请参阅如何保护 Kubernetes 推理。 | |
| [使用 Azure 机器学习管理的 Docker 映像]| NA |

  • Microsoft 容器注册表
  • viennaglobal.azurecr.io 全局容器注册表

| 如果工作区的 Azure 容器注册表位于 VNet 后面,请将工作区配置为使用计算群集来生成映像。 有关详细信息,请参阅如何在虚拟网络中保护工作区。 |

重要

Azure 机器学习使用多个存储帐户。 每个帐户存储不同的数据,并具有不同的用途:

  • 你的存储:你的 Azure 订阅中的 Azure 存储帐户用于存储你的数据和项目,例如模型、训练数据、训练日志和 Python 脚本。 例如,工作区的默认存储帐户在你的订阅中。 Azure 机器学习计算实例和计算群集通过端口 445 (SMB) 和 443 (HTTPS) 访问此存储中的文件和 blob 数据 。

    使用计算实例或计算群集时,存储帐户将装载为使用 SMB 协议的文件共享。 计算实例和群集使用此文件共享来存储数据、模型、Jupyter 笔记本、数据集等。访问存储帐户时,计算实例和群集使用专用终结点。

  • Microsoft 存储:Azure 机器学习计算实例和计算群集依赖于 Azure Batch,并且访问位于 Microsoft 订阅中的存储。 此存储仅用于管理计算实例/群集。 你的任何数据都不会存储在这里。 计算实例和计算群集使用端口 443 (HTTPS) 访问此存储中的 blob、表和队列数据 。

机器学习还会在 Azure Cosmos DB 实例中存储元数据。 默认情况下,此实例托管在 Microsoft 订阅中,由 Microsoft 管理。 可以选择在 Azure 订阅中使用 Azure Cosmos DB 实例。 有关详细信息,请参阅使用 Azure 机器学习进行数据加密。

方案:从工作室访问工作区

备注

本部分中的信息专用于从 Azure 机器学习工作室使用工作区。 如果你使用 Azure 机器学习 SDK、REST API、CLI 或 Visual Studio Code,则本部分中的信息不适用。

从工作室访问工作区时,网络流量的流如下所示:

  • 为了向资源进行身份验证,将使用 Azure Active Directory。
  • 对于管理和部署操作,将使用 Azure 资源管理器。
  • 对于 Azure 机器学习特定的任务,将使用 Azure 机器学习服务
  • 为了访问 Azure 机器学习工作室 (https://ml.azure.com),将使用 Azure FrontDoor。
  • 对于大多数存储操作,流量将流经工作区默认存储的专用终结点。 使用 AutoML、设计器、数据集和数据存储]部分介绍了例外情况。
  • 此外,还需要配置一个 DNS 解决方案,以便能够解析 VNet 中的资源名称。 有关详细信息,请参阅 将工作区与自定义 DNS 结合使用。

file

方案:从工作室使用 AutoML、设计器、数据集和数据存储

Azure 机器学习工作室的以下功能使用数据事件探查:

  • 数据集:从工作室探索数据集。
  • 设计器:可视化模块输出数据。
  • AutoML:查看数据预览/配置文件并选择目标列。
  • 标记

数据事件探查依赖于 Azure 机器学习托管服务能够访问工作区的默认 Azure 存储帐户。 该托管服务并不存在于你的 VNet 中,因此无法直接访问 VNet 中的存储帐户。 工作区使用服务主体来访问存储。

提示

可以在创建工作区时提供服务主体。 如果你不这样做,系统将为你创建一个与工作区同名的服务主体。

若要允许访问存储帐户,请将存储帐户配置为允许工作区的“资源实例”或选择“允许受信任服务列表中的 Azure 服务访问此存储帐户” 。 此设置允许托管服务通过 Azure 数据中心网络访问存储。

接下来,将工作区的服务主体添加到存储帐户专用终结点的“读取者”角色。 此角色用于验证工作区和存储子网信息。 如果它们相同,则允许访问。 最后,服务主体还需要对存储帐户拥有“Blob 数据参与者”访问权限。

有关详细信息,请参阅如何在虚拟网络中保护工作区的“Azure 存储帐户”部分。

![Diagram of traffic between client, data profiling, and storage]

file

方案:使用计算实例和计算群集

Azure 机器学习计算实例和计算群集是由 Microsoft 托管的托管服务。 它们构建于 Azure Batch 服务的基础之上。 它们虽然存在于 Microsoft 托管环境中,但也会注入到你的 VNet 中。

创建计算实例或计算群集时,还会在 VNet 中创建以下资源:

  • 具有所需出站规则的网络安全组。 这些规则允许从 Azure 机器学习(在端口 44224 上使用 TCP)和 Azure Batch 服务(在端口 29876-29877 上使用 TCP)进行入站访问。

    重要

    如果使用防火墙来阻止从 Internet 访问 VNet,则必须配置该防火墙以允许此流量。 例如,可以使用 Azure 防火墙创建用户定义的路由。 有关详细信息,请参阅配置入站和出站网络流量。

  • 具有公共 IP 的负载均衡器。

还允许对以下服务标记进行出站访问。 对于每个标记,请将 region 替换为计算实例/群集的 Azure 区域:

  • Storage.region - 此出站访问用于连接到 Azure Batch 服务管理的 VNet 中的 Azure 存储帐户。
  • Keyvault.region - 此出站访问用于连接到 Azure Batch 服务管理的 VNet 中的 Azure 密钥保管库帐户。

来自计算实例或群集的数据访问将通过 VNet 存储帐户的专用终结点进行。

如果在计算实例上使用 Visual Studio Code,则必须允许其他出站流量。 有关详细信息,请参阅配置入站和出站网络流量。

file

方案:使用联机终结点

托管联机终结点的入站和出站通信安全性是分开配置的。

入站通信

可以在终结点上使用 public_network_access 标志来保护与联机终结点评分 URL 的入站通信。 将标志设置为 disabled 可确保联机终结点仅通过 Azure 机器学习工作区的专用终结点接收来自客户端虚拟网络的流量。

Azure 机器学习工作区的 public_network_access 标志还控制联机终结点的可见性。 如果此标志为 disabled,则只能从包含工作区的专用终结点的虚拟网络访问评分终结点。 如果此标志为 enabled,则可以从虚拟网络和公用网络访问评分终结点。

出站通信

通过为 Azure 机器学习工作区启用托管虚拟网络隔离,可以在工作区级别保护来自部署的出站通信。 启用此设置会导致 Azure 机器学习为工作区创建托管虚拟网络。 工作区托管虚拟网络中的任何部署都可以使用虚拟网络的专用终结点进行出站通信。

用于保护出站通信的旧网络隔离方法通过禁用部署的 egress_public_network_access 标志来工作。 强烈建议改用工作区托管虚拟网络来保护部署的出站通信。 与旧方法不同,在部署中使用工作区托管虚拟网络时,部署的 egress_public_network_access 标记不再适用。 相反,出站通信将由为工作区的托管虚拟网络设置的规则控制。

方案:使用 Azure Kubernetes 服务

有关 Azure Kubernetes 服务所需的出站配置的信息,请参阅如何保护推理的连接要求部分。

备注

Azure Kubernetes 服务负载均衡器不是 Azure 机器学习创建的负载均衡器。 若要将模型作为仅在 VNet 上可用的受保护应用程序来托管,请使用 Azure 机器学习创建的内部负载均衡器。 若要允许公共访问,请使用 Azure 机器学习创建的公共负载均衡器。

如果模型需要额外的入站或出站连接(例如连接到外部数据源),请使用网络安全组或防火墙来允许流量。

方案:使用 Azure 机器学习管理的 Docker 映像

Azure 机器学习提供可用于训练模型或执行推理的 Docker 映像。 如果你不指定自己的映像,则会使用 Azure 机器学习提供的映像。 这些映像托管在 Microsoft Container Registry (MCR) 上。 它们还托管在名为 viennaglobal.azurecr.io 的异地复制的 Azure 容器注册表上。

如果你提供自己的 Docker 映像(例如,在你提供的 Azure 容器注册表上),则不需要使用 MCR 或 viennaglobal.azurecr.io 进行出站通信。

提示

如果 Azure 容器注册表在 VNet 中受保护,则 Azure 机器学习无法使用它来生成 Docker 映像。 在这种情况下,必须指定一个 Azure 机器学习计算群集来生成映像。 有关详细信息,请参阅如何在虚拟网络中保护工作区。

file

关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/134643.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ROS 学习应用篇(三)服务Server学习之Server

话题Topic是订阅器与发布器节点之间的,而服务则是客户端(Client)和服务器(Server)间的,前者是异步的,后者是同步的。而且话题是单项的不需要服务器上线,而服务是双向的。在开启服务之…

使用米联客FPGA开发板进行光口开发时遇到的问题总结

使用的开发板型号:米联客MA703FA, 实物图如下 FPGA型号为a35t 米联客提供的开发板资料中的FPGA型号为a100,所以要想使用开发板例程必须进行FPGA的重新选择。如下图 通过对开发板原理图的分析,例程代码不用做任何修改就可使用&am…

Linux常用命令——bzless命令

在线Linux命令查询工具 bzless 增强.bz2压缩包查看器 补充说明 bzless命令是增强“.bz2”压缩包查看器,bzless比bzmore命令功能更加强大。 语法 bzless(参数)参数 文件:指定要分屏显示的.bz2压缩包。 在线Linux命令查询工具

Pathways

信号通路signaling pathway-武汉华美生物 (cusabio.cn) 神经信号通路(Neuronal Signaling)--selleck.cn PI3K/Akt/mTOR信号通路 表观遗传 甲基化 免疫&炎症 酪氨酸蛋白激酶 血管生成 凋亡 自噬 内质网应激&UPR响应 JAK/STAT信号通路 MAPK信号通路 细胞骨架…

网络运维Day11

文章目录 if语句if单分支应用案例 if双分支应用案例 if多分支应用案例 for循环while循环案例 正则表达式基本正则Perl兼容的正则 综合练习总结 if语句 if单分支 if单分支的语法组成: if 条件测试;then 命令序列 fiif 条件测试then 命令序列 fi应用案例 判断用…

Linux学习教程(第二章 Linux系统安装)2

第二章 Linux系统安装 四、使用U盘安装Linux系统 前面章节介绍了如何通过虚拟机 VMware 安装 Linux 系统,而实际开发中,我们更多的是要将 Linux 系统直接安装到电脑上。 直接在电脑上安装 Linux 系统的常用方法有 2 种,分别是用光盘安装和用…

软件自动化测试平台

软件测试分类黑盒、白盒、功能、API、接口、压力测试和性能测试, 自动化测试平台是一种用于自动化执行软件测试过程的工具。 一、自动化测试平台-功能性 1. 接口自动化:对接软件的接口进行测试,验证接口的功能和性能。 2. Web 自动化&…

了解项目管理软件的功能和用途

数字化办公、无纸化办公的概念越来越火,项目管理软件也一跃成为了热门话题。项目管理软件到底什么?项目管理软件是不是项目团队才用得到?项目管理软件都能干什么?今天一篇文章让你对项目管理软件不再迷茫。 什么是项目管理软件&a…

优化编辑距离以测量文本相似度

一、说明 编辑距离是一种文本相似度度量,用于测量 2 个单词之间的距离。它有许多方面应用,如文本自动完成和自动更正。 对于这两种用例中的任何一种,系统都会将用户输入的单词与字典中的单词进行比较,以找到最接近的匹配项&#x…

Seata之TCC模式解读

目录 基本介绍 起源 概述 案例流程分析 TCC注意事项 空回滚 幂等 悬挂 具体使用 LocalTCC TwoPhaseBusinessAction 小结 基本介绍 起源 关于TCC的概念,最早是由Pat Helland于2007年发表的一篇名为《Life beyond Distributed Transactions:an Apost…

《网络协议》05. 网络通信安全 · 密码技术

title: 《网络协议》05. 网络通信安全 密码技术 date: 2022-09-10 15:16:15 updated: 2023-11-12 07:03:52 categories: 学习记录:网络协议 excerpt: 网络通信安全(ARP 欺骗,DoS & DDoS,SYN 洪水攻击,LAND 攻击&a…

2个器件,做1个恒流源

在项目中经常要用到恒流源,查找资料可以使用电压源芯片LM317构造一个电流源芯片。本文将电压源加上一个电阻改为电流源,这种设计思路可以扩展到其他类型的电源芯片上,如开关电源及其他类型的线性电源,关键点在于基准电压VREF的使用…

数据库 关系数据理论

问题 数据冗余更新异常插入异常删除异常 一个好的模式应当不会发生插入异常、删除异常和更新异常,数据冗余应尽可能少 数据依赖 定义:一个关系内部属性与属性之间的一种约束关系(该约束关系是通过属性间值的相等与否体现出来数据间相关联…

git02->gui图形化界面使用,ssh协议,idea集成GIT

gui图形化界面使用ssh协议idea集成GIT 1.gui图形化界面使用 2.ssh协议 git/github生成密钥并通过 操作分为本地电脑配置和github网站配置 第一步:本地电脑配置 右键空白处,选择Git Bash Here打开相关命令窗口 1.配置用户名和邮箱(如果已经配…

Go 14岁了

今天我们庆祝Go开源十四周年!Go度过了美好的一年,发布了两个功能齐全的版本和其他重要的里程碑。 我们在2月份发布了Go 1.20,在8月份发布了Go 1.21,更多地关注实现改进而不是新的语言更改。 在Go 1.20中,我们预览了配置…

基于多尺度分形残差注意力网络的超分辨率重建算法

1.引言 深度神经网络可以显著提高超分辨率的质量,但现有方法难以充分利用低分辨率尺度特征和通道信息,从而阻碍了卷积神经网络的表达能力。针对此类问题,本章提出了一种多尺度分形残差注意力网络(Multi-scale Fractal Residual A…

优秀智慧园区案例 - 深圳特区建发创智云城智慧园区,万字长文解析先进智慧园区建设方案经验

一、项目背景 1、项目背景 创智云城项目位于大湾区核心城市之一的深圳,且地处GDP第一的科技创新核心区——南山区,136万㎡新兴产业智慧之城矗立于湾区核心创新高地。项目所处西丽湖国际科教城,最具发展潜力,规划全域面积约57平方…

JavaWeb Day09 Mybatis-基础操作02-XML映射文件动态SQL

目录 Mybatis动态SQL介绍​编辑 一、案例 ①Mapper层 ②测试类 ③EmpMapper.xml ④结果​ 二、标签 (一)if where标签 ​①EmpMapper.xml ②案例 ③总结 (二)foreach标签 ①SQL语句 ②Mapper层 ③EmpMapper.xml ④…

N-133基于springboot,vue小说网站

开发工具:IDEA 服务器:Tomcat9.0, jdk1.8 项目构建:maven 数据库:mysql5.7 系统分前后台,项目采用前后端分离 前端技术:vueelementUI 服务端技术:springbootmybatis-plus 本项…

141.环形链表(LeetCode)

想法一 快慢指针,设置slow和fast指针,slow一次走一步,fast一次走两步,如果链表有环,它们最终会相遇,相遇时返回true;如果链表无环,它们最终走到空,跳出循环,…