Skip to content

执行这个命令会删除 jumpstartmodels 与sagemakerendpointregistrations (如果存在),但是如果存在sagemaker相关的资源这些资源不会被删除。这将会导致后续重建jumpstartmodels是还是关联到了老的sagemaker资源 #284

@arch-team

Description

@arch-team

kubectl delete jumpstartmodels mistral-jumpstart -n default
执行这个命令会删除 jumpstartmodels 与sagemakerendpointregistrations (如果存在),但是如果存在sagemaker相关的资源这些资源不会被删除。这将会导致后续重建jumpstartmodels是还是关联到了老的sagemaker资源

主要原因:

  1. Kubernetes etcd 存储层面的并发冲突
    • 多个控制器(可能包括 kubectl delete 和 operator finalizer)同时尝试修改资源
    • ResourceVersion 不匹配导致乐观锁失败

  2. HyperPod Inference Operator 的 Bug
    • Operator 在处理 finalizer 时没有正确处理并发场景
    • 删除逻辑中存在竞争条件

  3. Finalizer 清理顺序问题
    • 两个 finalizer 可能存在依赖关系
    • 清理顺序不当导致状态不一致

为什么 SageMaker 资源没有被删除:
Operator 崩溃:在删除过程中遇到 Kubernetes API 错误后,Operator 停止了后续的清理工作
事务不完整:删除操作不是原子性的,部分完成后失败
错误恢复机制缺失:Operator 没有重试或错误恢复机制

这是一个典型的 Kubernetes Operator 并发控制问题,导致资源清理不完整,留下了孤立的 SageMaker 资源。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions