问题标签 [argo-workflows]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes-helm - 无法将 argo 工作流 cron 安装为 helm 图表
我想安装一个 argo 工作流模板和工作流 cron 作业作为掌舵图。helm install 命令表示已安装图表。但我看到只有工作流模板被部署并且 cron 作业没有。
文件夹结构:
执行 helm install 命令时,我看到如下
当我列出模板时,我可以看到它
但无法看到 cron 作为图表的一部分安装
==================================================== =========================
cron 代码 (azure-migration-cron-etl.yaml)
模板代码 (azure-migration-etl-template.yaml)
值.yaml
kubernetes - 如何在 argo 和 kubernetes 中运行 akka 流媒体应用程序?
如何在 argo 和 kubernetes 中运行 akka 流应用程序,我找到了有关 kubernetes 和 akka 集群的文档,但我不需要 akka 集群,我只需要运行一个包含许多参与者的临时 akka 应用程序吗?还是需要一个akka集群?
kubernetes - 通过 http 访问 argo 工作流存档会导致权限被拒绝错误
我正在尝试通过 REST API 访问 Argo 工作流存档。文档说明我需要创建一个角色和一个令牌,所以我就是这样做的。可以像这样创建具有最小权限的角色:
事实上,这是可行的,我现在可以使用类似curl http://localhost:2746/api/v1/workflows/argo -H "Authorization: $ARGO_TOKEN"
. 但是,似乎需要更多权限才能访问诸如 之类的端点/api/v1/archived-workflows
,因为我得到的只是:
大概我需要在kubectl create role
命令中指定其他动词和/或资源,但我不知道是哪些,也找不到相关文档。有什么提示吗?
argo-workflows - 工作流 B 在完成后如何从工作流 A 触发?
我有两个工作流程 A 和 B。工作流程 A 如何在完成后触发工作流程 B,而无需引入第三个工作流程链接 A 和 B(使用步骤或 dag 的 fx)?
docker - Argo:可变数量的输出工件
在我的 Argo 工作流程步骤之一中,Docker 容器将一个大文件拆分为多个小文件。
这些教程展示了如何通过一次检查每个输出将少量和预定数量的输出(例如,2 或 3 个)保存为 S3 存储桶中的工件。
在我的用例中,我事先不知道会创建多少个小文件;它可以达到数百个。即使我知道提前创建了多少个较小的文件,大量的输出文件也很难遵循教程并一一指定。
有没有办法将所有输出保存到 S3 存储桶?
synchronization - 如果 Argo Workflow 已经在运行,如何防止它被重新提交?
用例是我们考虑通过带有 PubSub 的 Argo 事件触发 Argo 工作流。PubSub 不保证一条消息只传递一次。是否有一种简单的方法可以防止工作流在已经运行时再次被触发?
类似于 CronWorkflows的concurrencyPolicy
设置。
有一些东西要看 - 让我们假设whalesay工作流程:
我发现了以下两个有希望的问题 - 但我未能提取此问题的解决方案。
kubernetes - 我们如何正确分配 pod,以便 KFServing 可以将 GPU 实例缩减到零?
我正在使用 Argo 和 KFServing 与 Amazon EKS (Kubernetes) 设置 InferenceService。重要的是要知道我们的团队每个环境都有一个 EKS 集群,这意味着我们的集群中可能有多个我们无法控制的应用程序。
这是我们到目前为止的设置
- 我们将一个 docker 镜像推送到 Amazon ECR,其中包含我们训练和部署模型的逻辑
- 我们用于
argo
提交在 #1 中开始训练的工作流。在将 argo 安装到我们的 kubernetes 集群时,我们注意到它的组件有时会分配给 GPU 节点。 - 我们也在使用KFServing。KFServing 允许我们向上和向下自动缩放 GPU,特别是在不使用时缩放为零。KFServing 中的组件在将它们应用到我们的集群时也会被分配给 GPU 节点。
我们对#2 和#3(上图)的当前设置似乎阻止了 KFServing 缩小到零的能力。让我们担心的是,在 GPU 中拥有这些组件不会让 GPU 缩小。
哪些 Pod 需要分配给我们的 GPU 节点?
(选项 1)我们是否只需要分配我们的 argo 工作流 pod 并排斥其余部分?
- 或者 -
(选项 2)GPU 节点中是否需要其他 kfserving 组件才能正常工作?
选项 1:我们如何阻止所有 pod 进入我们的 GPU 节点,而不是 argo 工作流 pod?提醒一下,我们还有其他无法控制的应用程序,因此为每个 pod 添加节点关联似乎不切实际。
选项 2:当这些 GPU 节点中有 kfserving 组件时,这些 GPU 节点如何缩放到零?我的印象是缩小意味着节点中没有 pod。
kubernetes - 如何引用在 DAG 外部创建的 sys.stdout 以在带有 withParam 的 DAG 内部使用?
我正在使用 Argo 工作流程。
在 my 中有一个 DAG 步骤,entrypoint
它遵循几个正常的步骤。这些步骤之一执行sys.stdout
. 一旦进入 DAG 步骤,我希望某些任务能够引用sys.stdout
.
我知道如果我们想参考sys.stdout
当工作流从一个步骤进入下一步(没有 DAG)时,我们可以做{{steps.step-name.outputs.result}}
. 但是,这在 DAG 任务中不起作用。
如何在 DAG 任务中引用 sys.stdout 以便我可以使用它withParam
?
编辑:
工作流程如下所示:
一般来说,如果third-step
有 a ,我们可以通过insys.stdout
来引用它。但是,在这种情况下是 DAG,如果其中一个 DAG 任务想要使用 ,则在 DAG 任务中作为参数/参数调用会引发错误。{{steps.step03.outputs.result}}
fourth-step
fourth-step
sys.stdout
{{steps.step03.outputs.result}}
那么问题是如何正确引用内部DAG 任务sys.stdout
生成的?third-step
fourth-step
kubernetes - 如何查看 Pod 日志:必须为 pod 指定容器名称... 选择以下之一:[wait main]
我正在运行 Argo 工作流程并在 pod 的日志中收到以下错误:
此错误仅在某些时候发生,并且仅在我的一些模板中发生,但是当它发生时,它是在工作流中稍后运行的模板(即不是第一个模板运行)。我还不能确定将成功运行的参数,所以我会对调试提示感到满意。我已经粘贴了下面描述的输出。
根据搜索,我认为解决方案很简单,就是我需要在某处附加“-c main”,但我不知道在哪里,也无法在 Argo 文档中找到信息。
描述: