修改kubernetes Yaml文件-yq命令行操作yaml文件

本文详细介绍了如何利用yq工具在Linux环境下修改YAML文件的键值,包括基本键值修改和嵌套键值的更新,以及一个示例展示了如何更改KubernetesDeployment的CalicoIP地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

yq下载链接

tar zxvf yq_linux_amd64.tar.gz 
mv yq_linux_amd64 /usr/bin/yq
chmod +x /usr/bin/yq
yq --help

yq
e 表示表达式
-i 表示修改

一、使用yq命令修改键值

:将key1的值从value1修改为new_value1。

yq e '.data.key1 = "new_value1"'  -i yaml_file.yaml
修改后的YAML文件内容:
yaml
data:  
  key1: new_value1  
  key2: value2

使用yq命令修改嵌套键值:将key2.key3的值从value3修改为new_value。

yq e -i '.data.key2.key3 = "new_value"' yaml_file.yaml

修改后的YAML文件内容:

yaml
data:  
  key1: value1  
  key2:  
    key3: new_value  
    key4: value4

二、示例yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  selector:
    matchLabels:
      app: nginx
  replicas: 1
  template:
    metadata:
      labels:
        app: nginx
      annotations:
        "cni.projectcalico.org/ipAddrs": "[\"10.244.126.10\"]"
    spec:
      containers:
        - name: nginx
          image: nginx

yq 将地址修改为10.244.126.110

yq e -i '.spec.template.metadata.annotations."cni.projectcalico.org/ipAddrs" = "[\"10.244.126.110\"]"' calico.yaml
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值