kubenetes: patch更新和替换、删除资源内容

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: kubenetes: patch更新和替换、删除资源内容

目录

使用(patch)补丁修改、更新资源的字段。

kubectl命令操作

替换:replace

新增:add

删除:remove

多个资源内容的修改、删除、新增

疑惑:

kubernetes-client/java操作Patch



使用(patch)补丁修改、更新资源的字段。

支持JSON和YAML格式。


kubectl命令操作

k8s版本1.13


替换:replace

kubectl patch pod valid-pod --type='json' -p='[{"op": "replace", "path": "/spec/containers/0/image", "value":"new image"}]'


新增:add

kubectl patch pod valid-pod --type='json' -p='[{"op": "add", "path": "/metadata/labels/MixedDeploy_Status", "value":"true"}]'


删除:remove

kubectl patch pod valid-pod --type='json' -p='[{"op": "remove", "path": "/metadata/labels/MixedDeploy_Status"}]'

 

多个资源内容的修改、删除、新增

参数:JSON数组


疑惑:

kubectl patch pod valid-pod -p '{"spec":{"containers":[{"name":"kubernetes-serve-hostname","image":"new image"}]}}'

在K8s版本为1.13上,使用这种方式修改更新资源,却提示unpatch


kubernetes-client/java操作Patch

CoreV1Api apiInstance = new CoreV1Api();
String name = "主机名称"; // String | name of the Node
// 新增
V1Patch body = new V1Patch("[{\"op\": \"add\", \"path\": \"/metadata/labels/MixedDeploy_Status\", \"value\":\"true\"}]");
// 替换更新
V1Patch body = new V1Patch("[{\"op\": \"replace\", \"path\": \"/metadata/labels/MixedDeploy_Status\", \"value\":\"false\"}]");
String pretty = "true";
String dryRun = null;
Boolean force = true; // Boolean | Force is going to \"force\" Apply requests. It means user will re-acquire conflicting fields owned by other people. Force flag must be unset for non-apply patch requests.
try {
    V1Node result = apiInstance.patchNode(name, body, pretty, dryRun, null, force);
    System.out.println(result);
} catch (ApiException e) {
    System.err.println("Exception when calling CoreV1Api#patchNode");
    e.printStackTrace();
}

 


相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
21天前
|
Kubernetes API 调度
在K8S中,k8s删除pod的过程是什么?
在K8S中,k8s删除pod的过程是什么?
|
2月前
|
缓存 Serverless API
函数计算产品使用问题之没有s.yaml文件,修改代码如何重新部署
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
26天前
|
存储 Kubernetes API
在K8S中,Pod删除过程会发生什么?
在K8S中,Pod删除过程会发生什么?
|
4月前
|
存储 Kubernetes API
k8s学习-ConfigMap(创建、使用、更新、删除等)
k8s学习-ConfigMap(创建、使用、更新、删除等)
1451 0
|
4月前
|
Ruby Perl
工程支持xcframework,检查pod版本及更新pod
工程支持xcframework,检查pod版本及更新pod
52 0
|
4月前
|
存储 Kubernetes 监控
k8s学习-DaemonSet(模板、创建、更新、回滚、删除等)
k8s学习-DaemonSet(模板、创建、更新、回滚、删除等)
107 0
28个案例问题分析---04---生产环境app打包未关联云空间--uniapp 打包
28个案例问题分析---04---生产环境app打包未关联云空间--uniapp 打包
173 0
|
缓存 索引
ES的删除和更新,旧数据到低是如何处理的?
根据ES的读写入原理,大家都知道ES写入时每秒从内存缓冲区(memory buffer)生成小的segment,将其递交给系统缓存(OS filesystem cache)中,后台会定期的对这些小的segment 合并成一个大的segment段
325 0
ES的删除和更新,旧数据到低是如何处理的?
|
Perl
kubectl 显示和查找资源
kubectl 显示和查找资源
595 0
|
Android开发
【Android 安装包优化】移除无用资源 ( 自动移除无用资源 | 直接引用资源 | 动态获取资源 id | Lint 检查资源 )(二)
【Android 安装包优化】移除无用资源 ( 自动移除无用资源 | 直接引用资源 | 动态获取资源 id | Lint 检查资源 )(二)
352 0
【Android 安装包优化】移除无用资源 ( 自动移除无用资源 | 直接引用资源 | 动态获取资源 id | Lint 检查资源 )(二)