Rke2如何修改静态pod的yaml

环境信息:
RKE2 版本:
v1.20.7+rke2r2

节点 CPU 架构,操作系统和版本:
Linux elk-migrate 3.10.0-1160.15.2.el7.x86_64 #1 SMP Wed Feb 3 15:06:38 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

集群配置:
1 servers

问题描述:
在 /etc/rancher/rke2/config.yaml 里增加了 etcd-expose-metrics: “true” 参数

重现步骤:

  • 安装 RKE2 的命令:
curl -OLs https://github.com/rancher/rke2/releases/download/v1.20.7%2Brke2r2/rke2-images.linux-amd64.tar.zst
curl -OLs https://github.com/rancher/rke2/releases/download/v1.20.7%2Brke2r2/rke2.linux-amd64.tar.gz
curl -OLs https://github.com/rancher/rke2/releases/download/v1.20.7%2Brke2r2/sha256sum-amd64.txt
curl -sfL https://get.rke2.io --output install.sh
INSTALL_RKE2_ARTIFACT_PATH=/root/rke2-artifacts sh install.sh

在静态 pod yaml 中有了livenessProbe 探针,探测 127.0.0.1:2381,该地址无法响应导致 etcd不停的重启,而正确的地址是宿主机ip的2381 如 192.168.100.237:2381,怎么才能修改静态pod yaml,直接修改完过段时间会自动被rke2还原回来

cat  /var/lib/rancher/rke2/agent/pod-manifests/etcd.yaml
livenessProbe:
      failureThreshold: 8
      httpGet:
        host: 127.0.0.1
        path: /health
        port: 2381
        scheme: HTTP
      initialDelaySeconds: 15
      timeoutSeconds: 15

使用 v1.20.7+rke2r2 重现了该问题。

但使用 1.20 的最新版 v1.20.15+rke2r2 没有重现,应该是某个版本解决了这个问题:

root@ip-172-31-0-107:~# rke2 -v
rke2 version v1.20.15+rke2r2 (a8cc3abc5755028f23c8092c3c011dfac8de2491)
go version go1.16.10b7
root@ip-172-31-0-107:~# netstat -lntp | grep 2381
tcp        0      0 172.31.0.107:2381       0.0.0.0:*               LISTEN      12812/etcd
tcp        0      0 127.0.0.1:2381          0.0.0.0:*               LISTEN      12812/etcd