Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 为什么有些库伯内特人';资源在创建后是不变的?_Kubernetes - Fatal编程技术网

Kubernetes 为什么有些库伯内特人';资源在创建后是不变的?

Kubernetes 为什么有些库伯内特人';资源在创建后是不变的?,kubernetes,Kubernetes,查看Kubernetes的源代码:,至少持久卷和存储类在创建后是不可变的 这是为什么?这是库伯内特斯的核心概念。一些规范是不可变的,因为它们的更改会影响所连接资源的基本结构 例如,更改持久卷可能会影响使用此PV的POD。假设您有一个运行在PV上的mysql pod,并且您以一种所有数据都消失的方式对其进行了更改 在Kubernetes 1.18上,Secrets和ConfigMaps作为Alpha功能也变得不可更改,这意味着这将很快成为新的默认设置。检查GitHub问题 最受欢迎和最方便的方式

查看Kubernetes的源代码:,至少持久卷和存储类在创建后是不可变的


这是为什么?

这是库伯内特斯的核心概念。一些规范是不可变的,因为它们的更改会影响所连接资源的基本结构

例如,更改持久卷可能会影响使用此PV的POD。假设您有一个运行在PV上的mysql pod,并且您以一种所有数据都消失的方式对其进行了更改

在Kubernetes 1.18上,Secrets和ConfigMaps作为Alpha功能也变得不可更改,这意味着这将很快成为新的默认设置。检查GitHub问题

最受欢迎和最方便的方式消费秘密和 ConfigMaps by Pods将其作为文件使用。但是,对 Secret或ConfigMap对象很快(大约在一分钟内) 反映在为所有使用它们的吊舱装载的文件更新中。 这意味着机密和/或配置映射的错误更新(推送)可能会导致 非常快地中断整个应用程序

你可以阅读更多关于这个决定背后动机的信息

在本KEP中,我们建议引入一种能力来指定 特定Secret/ConfigMap的内容对于其 一生。对于那些机密/配置图,Kubelets将不会 正在尝试查看/轮询其吊舱的更新挂载的更改。 考虑到有很多用户并没有真正利用 根据所述后果自动更新机密/配置映射 这将使他们能够:

  • 更好地保护自己,以防可能导致应用程序中断的意外错误更新
  • 由于apiserver上的负载显著减少,因此实现了更好的集群性能