惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
The Blog of Author Tim Ferriss
IT之家
IT之家
Engineering at Meta
Engineering at Meta
WordPress大学
WordPress大学
博客园 - 三生石上(FineUI控件)
博客园 - 聂微东
C
Check Point Blog
T
Tailwind CSS Blog
博客园 - Franky
H
Help Net Security
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Google DeepMind News
Google DeepMind News
博客园 - 叶小钗
J
Java Code Geeks
腾讯CDC
罗磊的独立博客
爱范儿
爱范儿
阮一峰的网络日志
阮一峰的网络日志
Martin Fowler
Martin Fowler
酷 壳 – CoolShell
酷 壳 – CoolShell
I
InfoQ
B
Blog
V
Visual Studio Blog
F
Fortinet All Blogs

博客园 - xiezhengcai

日志分层设计 Ai阅读代码的局限性 业务系统缓存加速的五种缓存设计 vscode ssh开发无法读取go env配置 deepspeed ray + nccl + 张量并行 训练 ray集群 ray 分布式, 工作节点、reylet、 主节点、GCS ray分布式 nccl & mpi 跨节点通信 cudaMemsetParams 参数详细 cuda 中的内存拷贝 cuda 编程 cuda vllm 参数分类 张量计算流程图标注方法 为什么nn.Linear 的weight 是 (out_features, in_features) torch.view、unsqueeze、reshape、transpose 和 permute PyTorch交叉熵损失函数详解
The CustomResourceDefinition "applications.apps.abc....
xiezhengcai · 2025-07-17 · via 博客园 - xiezhengcai

参考文章:
https://medium.com/pareture/kubectl-install-crd-failed-annotations-too-long-2ebc91b40c7d

原因:
使用kubectl apply创建或更新资源时,系统都会自动添加一个名为kubectl.kubernetes.io/last-applied-configuration的元数据注解(metadata.annotation)。该注解是一个记录上次应用配置的JSON文档。通常情况下这不会引发问题,但在极少数情况下(例如处理大型CRD时),可能会因表面上的大小限制而导致问题。

解决方案:
使用 kubectl create 创建 CRD

使用 kubectl replace 更新 CRD

这两种方式不会添加 last-applied-configuration 字段。当然,你也可以先用 apply 创建 CRD,再针对过长的特定 CRD 改用 create 或 replace 操作

如果使用的是 Kubernetes v1.22 或更高版本,可以采用服务端应用(Server-Side Apply)。这是一种声明式管理方式,允许多个控制器通过部分配置(partial configurations)协同管理工作负载的不同部分,且不会使用客户端应用(Client-Side Apply)所依赖的注解。
使用方式:

kubectl apply --server-side -f ....