1
FabricPath 2023-03-10 18:11:22 +08:00 1
这个不可能做到。
kubelet 写到 /var/lib/kubelet ,除了他自己,没人知道他写了这个目录。 iptables 、ipvs 、ipaddr/iproute 同理 |
2
Syiize 2023-03-10 19:02:27 +08:00 via Android
以我所知道的 deb 包举例,安装和卸载逻辑都是写在包里的安装和卸载脚本里的,所以想卸载的时候留东西很容易,只需要卸载脚本里不删除就可以了,包管理器并不知道软件包到底安装在什么地方。在比较开放的 Linux 世界里题主的要求比较难做到。
|
3
tairan2006 2023-03-11 10:19:44 +08:00 via Android
一般不是 helm 卸载么
|
4
julyclyde 2023-03-12 10:33:48 +08:00
安装的时候用包管理工具,甚至都做不到删干净(运行时产生的那些)
|
5
OldCarMan OP @FabricPath 嗯嗯,确实麻烦,在想等有空,要不要试一下搞个 linux 复杂应用的安装和卸载仓库(提供各种繁杂应用的安装和相应卸载脚本)。
@Syiize 是的,我觉得这样挺好的,另外备份和恢复最好也要有相应的脚本。 @tairan2006 没用过,不过你这个是不是必须使用 helm 安装的库才能用它来卸载 @julyclyde 是的,所以最好对每个库 /组件的路径配置,最好有一个大概的了解,要不然时间久了,有时会遗漏一些东西。 |
6
FabricPath 2023-03-13 10:13:09 +08:00
@OldCarMan 1 这个很理想,维护成本很高的,比如今天 kubeproxy 写了一堆 iptables ,明天又加了一堆 nft tables ,需要不断地跟进。
通常情况下,机器从集群里面摘掉要换业务使用的话,都直接拉去重装,全自动重装,所以成本比卸载软件低很多。 |