gpt4 book ai didi

kubernetes - 如果 configMap(/secret) 作为卷安装在正在运行的 pod 中,在 master 上被删除会发生什么?

转载 作者:行者123 更新时间:2023-12-03 12:49:42 24 4
gpt4 key购买 nike

假设我有一个带有 configMap(或 secret )卷的 pod。
Pod 创建期间存在 ConfigMap(或 secret )对象,但我在 Pod 运行时删除了主节点上的 configMap(或 secret )对象。
什么是预期行为?它在任何地方都有记录吗?

正在运行的 Pod 是否已终止?
是否删除了 configMap(或 secret )文件并且 pod 继续运行?

这是我能找到的关于更新的 documentation,没有提到任何关于删除的内容。

When a ConfigMap already being consumed in a volume is updated, projected keys are eventually updated as well. Kubelet is checking whether the mounted ConfigMap is fresh on every periodic sync. However, it is using its local ttl-based cache for getting the current value of the ConfigMap. As a result, the total delay from the moment when the ConfigMap is updated to the moment when new keys are projected to the pod can be as long as kubelet sync period + ttl of ConfigMaps cache in kubelet.

最佳答案

您正在运行的工作负载不会发生任何变化。一旦它们被 master 上的 kube-scheduler 调度,然后被节点上的 kubelet 调度, ConfigMapsSecrets 等就会存储在节点的本地文件系统上。默认是这样的:

# ConfigMaps
/var/lib/kubelet/pods/<pod-id>/volumes/kubernetes.io~configmap/configmapname/
# Secret
/var/lib/kubelet/pods/<pod-id>/volumes/kubernetes.io~secret/secret-token/

这些实际上最终安装在容器中您在 pod 规范中指定的路径上的某个位置。

当您在 Kubernetes 中删除对象时,它实际上会从其数据存储 (etcd) 中删除。假设您的 pod 因任何原因需要重新启动,它们将无法重新启动。

简短的回答,您正在运行的工作负载没有任何 react ,但是如果您的 Pod 需要重新启动,它们将无法重新启动。

关于kubernetes - 如果 configMap(/secret) 作为卷安装在正在运行的 pod 中,在 master 上被删除会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54030468/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com