发布管道与集成运行时冲突

2023-12-23

此问题涉及如果数据工厂中定义了自托管集成运行时,如何通过 CI(在 VSTS 中)传播数据工厂。

我设置了 3 个环境 - Dev/UAT/Prod,每个环境都有自己的数据工厂。

开发人员托管主协作分支。我正在使用 VSTS 从 adf_publish 分支检索工件并将模板部署到 UAT(生产将在稍后完成)。我遵循了本指南中的大部分内容here https://learn.microsoft.com/en-us/azure/data-factory/continuous-integration-deployment.

使用自承载集成运行时 (IR) 部署到空白 UAT 时,在 UAT 中部署的 IR 是来自 dev 的共享 IR 的副本(不是链接类型),这会导致错误,因为 IR 使用的凭据不会是正确的。我希望如此,因为我们实际上只是部署资源组模板的精确副本,仅覆盖工厂名称,但是如果不通过自托管 IR VM 重新认证,IR 将无法工作。

如果我在 UAT 环境中预先注册链接的 IR(链接到开发 IR),则部署会因冲突而失败,因为资源组模板中的 IR 与我刚刚在 UAT 中创建的 IR 名称相同。如果是不同的名称 - 没有冲突,但链接的服务将指向模板 IR 而不是我为 UAT 创建的模板

文档中有一条注释说 IR 运行时在所有平台上应该相同,但我认为这不可能是真的 - 其中一个(大概是源/开发)必须是共享类型,而其他类型必须链接和授权。

我可以看到(未经测试)的一个选项是让每个环境 IR 引用成为与实际 IR 的单独连接,但随后需要某种方式覆盖链接的服务以指向当前环境 IR 引用(通过模板参数覆盖?)。在这种情况下,我们需要阻止模板 IR 的部署,因为它不需要并且不起作用。

有没有人在这种情况下成功地让 CI 工作?我的感觉是该文档是用全球共享的 IR 编写的。要么我需要更好地理解链接服务定义中自动集成设置的目的。

非常感谢。 标记。


Update我认为该服务存在一些错误,因此不期待答案。如果我从我发布的错误报告中看到解决方案,我会在这里发布更新here https://social.msdn.microsoft.com/Forums/en-US/002e6f51-4656-4dda-ade1-a35747ffeb63/adf-continuous-integration-datalake-fails-if-self-hosted-integration-selected?forum=AzureDataFactory对于开发组。

简而言之,这只会影响您

  1. 您有一个自托管集成运行时 (IR),并且
  2. 您正在尝试将模板从现有数据工厂部署到新数据工厂(就像在 Dev->UAT->Prod 中一样)
  3. 您定义并使用自托管 IR 的数据湖 (ADLS) 链接服务。

如果模板中有自托管 IR,则新部署的副本将不会注册到任何服务器(无论是链接服务器还是新 ADF 所独有的服务器),因为模板仅记录 IR,而不会实例化 IR。

虽然这可以在部署后配置或脚本中修复,但它无法修复 ADL 中的依赖项。这是因为 ADL 链接服务想要使用 IR 加密服务主体......但 IR 在模板部署时不存在(即未在服务器上配置且未激活)。

如果您选择托管服务标识而不是服务主体作为 ADL 链接服务的身份验证,那么模板将无法部署,因为没有要加密的凭据,并且资源看起来像是需要加密某些内容。

目前的解决方法是使用 Azure 托管 IR 进行数据湖连接。不幸的是,这会导致安全问题,因为共享 IR 无法在我们的 ADL Gen 1 中列入白名单。

我会及时向大家发布。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

发布管道与集成运行时冲突 的相关文章

  • 获取子文件夹Azure数据工厂中的所有文件名

    我在数据湖中有一个以下文件夹结构 我想从 ParentFolder 目录的所有子文件夹中获取所有 csv 文件名 我的所有文件都是 csv 文件 是否有一种使用元数据活动的简单方法 父文件夹 gt 年 2020 文件夹 2020 10 20
  • 在 ADF 管道中将文件 blob 存储的访问层从热层更改为存档层

    我想使用 ADF 管道将文件从一个容器复制到另一个容器 在复制时我必须将访问层从热层更改为存档层 我必须使用 ADF 管道来实现这一点 帮助我找到一种不使用自定义活动的方法会很棒 我没有在任何活动中看到实现此目的的直接属性 您可以尝试下面的
  • Azure数据工厂:处理until/for活动中的内部故障

    我有一个包含 Until 活动的 Azure 数据工厂 v2 管道 在 的里面until是一个复制活动 如果失败 则会记录错误 与本文中完全相同 并且我希望循环继续 Azure 数据工厂管道 发生故障 虽然内部复制活动的错误已得到处理 但u
  • 如何在 SQL 中创建临时表以在多个 ADF 活动中使用?

    我需要在执行 Azure 数据工厂管道时在 SQL Server 中创建全局临时表 该表将在多项活动中使用 我已经尝试了几种方法 包括一种使用针对以下目标的存储过程活动sys sp executesqlSP 和CREATE TABLE语句作
  • 在“数据工厂”模式下启用发布

    我已在 Azure 数据工厂上启用 Git 我也创建了我的 Git 存储库 当我想创建一个新的管道时 我收到以下消息 您已在数据工厂中启用 GIT 数据工厂 模式下的发布已禁用 请切换回 GIT 模式以进行进一步更改 当我想选择 GitHu
  • 如何获取 ADF2 中动态内容中一个月的最后一天?

    我想根据 utcnow 时间戳获取一个月的最后一天 下面表达式中的 dd 应该自动为该月的最后一天 28 30 或 31 formatDateTime adddays utcnow 2 yyyy MM ddT23 59 59 999 考虑到
  • 数据工厂中的 U-SQL 作业失败

    每当我运行时 我总是从数据工厂收到以下错误U SQL作业 Job submission failed the user adla account name does not have permissions to a subfolder i
  • 在 Azure 数据工厂查找中处理 >5000 行

    我有一个复制活动 它将表从 MySQL 复制到 Azure 表存储 这很好用 但是当我在 Azure 表上进行查找时 出现错误 数据太多 这是按照文档设计的 Lookup 活动最多可包含 5 000 行 最大大小为 2 MB 另外还提 到了
  • 如何通过 Azure 批处理和数据工厂使用 Azure Analysis Services 进行身份验证

    我有一个 c Sharp 类库 它使用 AMO 库连接到 Azure Analysis Services 我想将其用作数据工厂管道的一部分来刷新多维数据集分区 这是通过 Azure 批处理作为自定义 net 活动完成的 var server
  • 在 Azure 数据工厂中引用 JSON 有效负载值作为 If 条件

    我有一个像这样的 Json 文件作为从 API 调用返回的有效负载 这是数据工厂中的 http 数据集类型 count 2 name DatasetABC columnNames Column 1 Column 2 rows 1234 56
  • 如何为Azure数据工厂链接服务中的azure表存储/blob存储动态提供连接字符串

    动态更改 Azure 数据工厂中表存储或 Blob 存储的连接字符串 目前 我可以看到数据库相关数据集的此类选项吗 如何在表或 Blob 存储中实现相同的效果 我相信这就是你想要的 https learn microsoft com en
  • 如何从 Azure 数据工厂运行 PowerShell

    I have PowerShell该脚本将复杂的 CSV 文件分割为每 1000 条记录的较小的 CSV 文件 这是代码 i 0 Get Content C Users dell Desktop Powershell Input bigsi
  • Azure ADF V2 ForEach 文件将数据从 Blob 存储复制到 SQL 表

    我需要设计一个 ADF 管道 将在名为 Current 的特定 Blob 存储文件夹路径上创建的 CSV 文件复制到 SQL 表 成功复制后 我必须将文件移动到存档文件夹 我已经完成的事情 我正在使用复制数据活动来复制 CSV 文件并加载到
  • 创建后如何在 Azure 数据工厂中启用诊断

    我正在尝试在通过 c 自动化应用程序创建 azure 数据工厂后使用 ARM 模板启用诊断 我尝试对非计算资源模板使用此处的步骤 https learn microsoft com en us azure monitoring and di
  • Azure 数据工厂:如何在另一个管道成功完成后触发管道

    在 Azure 数据工厂中 如何在其他管道成功完成后触发管道 详细地 我试图在其他管道成功完成后触发 SSIS 包 我已经知道我可以将 SSIS 包保存为管道 并像其他管道一样使用触发器运行它 但是如何确保 SSIS 包管道仅在其他管道完成
  • 从文件流上传到 ADLS

    我正在 ADF 中进行自定义活动 其中涉及从 Azure 存储 Blob 读取多个文件 对它们进行一些处理 最后将生成的文件写入 Azure Data Lake Store 最后一步是我停止的地方 因为据我所知 NET SDK 只允许从本地
  • 如何获取管道运行ID

    我是 Azure 新手 我需要使用 C 查找 Azure 中管道的最新活动 RunID 我不想调用管道实例 只想获取最后一个活动的 RunID 当我尝试时 可以调用管道并获取 ID 任何人都可以帮助我吗 我发现执行此操作的方法是查询数据工厂
  • Azure 数据工厂:查询 CosmosDB 源中的 _ts(纪元)字段

    我正在尝试将数据从 Azure CosmosDB 复制到 Azure SQL 数据库 在 Azure CosmosDB 源中 查询如下 select from c where c DefinitionTime gt formatDateTi
  • Azure数据工厂上传到Salesforce并引用另一个对象上的字段

    这是这样的场景 我们正在使用 Azure DataFactoryV2 运行一系列管道 这些管道从本地数据源获取帐户数据 将其转换并上传到 Salesforce 目前我们想要导入一个帐户并将其与另一个帐户关联 帐户存在标准的父 子关系 例如经
  • SQL Server 抱怨无效的 json

    我正在使用 Azure 数据工厂和 Azure SQL 数据库编写 ETL 工具 数据工厂捕获映射数据流的输出并将其作为字符串插入到 SQL Server 表 Audit OperationsEventLog 的 StatusMessage

随机推荐

  • 如何判断资源是否不受管理?

    我正在使用 Visual Studio 2017 编写 C 应用程序 我努力通过使用 using 语句来处理我实例化的所有对象 如果我实例化的对象不基于可隐式转换为 System IDisposable 的类型 Visual Studio
  • Vim 搜索并突出显示脚本中的控制

    我正在编写一个脚本 我想在其中以编程方式控制搜索 并突出显示它们 search 函数结果没有突出显示 我认为 因此使用该函数对我来说没有用 我想做的是使用 正常 命令来搜索变量 但这似乎并不简单 我可以编写命令 execute normal
  • 在 R 中保存和增量更新最近邻模型

    有几个最近邻 R 包 例如 FNN RANN yaImpute 但它们似乎都不允许保存 NN 数据结构 覆盖树 KD 树等 以便可以计算新查询的最近邻重建整个树 R中有这样的函数吗 我正在寻找一个返回数据结构的函数 当新数据到达时我可以增量
  • mathjax \textsc

    我如何让像 textsc 这样的东西工作 显然有可能启用它这个数学溢出答案 https meta mathoverflow net discussion 1046 why doesnt mathit work 还有其他人找到了至少允许使用小
  • 方向更改时如何更改网格布局

    我正在创建一个win8应用程序 我需要更改网格的布局 以便当用户在方向之间翻转时所有内容都适合屏幕 我明白我需要使用VisualStateManager但我无法理解任何教程 如果我有这个代码
  • PayPal 完整日期格式

    PayPal 以以下格式发回 payment date 字段 19 19 09 Sep 27 2011 我正在使用 php 来计算 payment date 的剩余天数 但我的代码是基于在 2011 09 27 12 19 00 获取格式
  • 如何在 Angular 2 项目中分离管理和前端 Web

    我将使用 Angular 2 构建一个完整的项目 该项目包含管理面板和供用户使用的前端 Web 我不知道如何将管理与网络分开 我应该使用路由吗 但这需要我导入内部的所有组件app module ts或者还有另一种方法可以使用两个app mo
  • 在 Groovy 中使用 JSONBuilder 排除空值

    是否可以使用默认的 JsonBuilder 库在 Groovy 中创建 JSON 值以排除对象的所有空值 例如 Jackson 在 Java 中通过注释类来排除空值所做的事情 一个例子是 userId 25 givenName John f
  • 如何在11g中通过select语句为新创建的表的列设置默认值

    我在 Oracle 11g 中创建一个表 其中一列使用默认值 语法是 create table xyz emp number ename varchar2 100 salary number default 0 这样就创建成功了 由于某些原
  • 为什么重载方法没有被调用?

    我认为被调用的方法是在运行时决定的 或者我错过了什么 示例代码 class Program static void Main string args var magic new MagicClass magic DoStuff new Im
  • 在 Cocoa 中使用 autorelease 的成本是多少?

    大多数苹果文档似乎都避免使用自动释放对象 特别是在创建 gui 视图时 但我想知道使用自动释放对象的成本是多少 UIScrollView timeline UIScrollView alloc initWithFrame CGRectMak
  • exoplayer播放器错误无法连接到hls链接

    我有一个 hls 链接 可以使用 mpv 正常播放 但在 exoplayer 中出现此错误 PlayerError com google android exoplayer2 ExoPlaybackException com google
  • IE 9 和 10 产生意外且不一致的 MediaError

    我们有一组 HTML 块 比如说大约 50 个 它们被迭代地解析并具有Audio动态添加的对象 var SomeAudioWrapper function name this internal player new Audio this i
  • VBA 根据输入值查找下一列

    在我现在尝试编写的程序中 我采用两列数字并对它们进行计算 在用户告诉我之前 我不知道这两列位于哪里 他们在我的代码所在的工作簿的单元格中输入列值 例如 如果用户输入 A 和 B 作为所有信息所在的列 我可以根据这些值执行计算 同样 如果他们
  • Visual Studio 下的 string::swap 复杂性

    The 参考参数 http en cppreference com w cpp string basic string swap页面说的是std basic string swap它具有恒定的复杂性 我认为这意味着无法复制内容 只能交换指针
  • JavaScript HtmlCollection 循环永远不会返回第二个元素

    我知道有关于如何访问和迭代 HtmlCollection 的答案 但它在这里对我不起作用 我得到了一些 tabSheetActive 类的元素 这些元素的数量可以是 1 或更多 我通过以下方式访问它们 var activeTabSheets
  • Python:通过套接字在两台计算机之间发送数据

    我正在编写一个脚本 该脚本可以在两台可以访问互联网的不同计算机之间传输数据 我正在使用 python 的套接字标准模块 当我在一台计算机上运行客户端和服务器时它工作正常 但当它们在不同计算机上运行时我无法使它们工作 这是我的服务器代码的一部
  • 尽管在前台运行且使用 START_STICKY,但在终止后无法重新启动服务

    我面临着一个关键问题 即绑定服务作为前台运行并带有通知 正如我找到的大多数教程和解决方案所提到的 我所做的一切都是正确的 我有一个启动服务然后与其绑定的活动 在服务的 onCreate 中 我使用 startForeground 并显示通知
  • 如何处理非常大的文本文件?

    我目前正在编写一些需要处理非常大的文本文件 至少几个 GiB 的东西 这里需要的是 这是固定的 基于 CSV 遵循 RFC 4180 嵌入式换行符除外 对行进行随机读取访问 但主要是逐行读取并接近末尾 在末尾添加行 换行 显然 这需要重写文
  • 发布管道与集成运行时冲突

    此问题涉及如果数据工厂中定义了自托管集成运行时 如何通过 CI 在 VSTS 中 传播数据工厂 我设置了 3 个环境 Dev UAT Prod 每个环境都有自己的数据工厂 开发人员托管主协作分支 我正在使用 VSTS 从 adf publi