run-application-scale-stateful-set-pr-2017-09-11-13

This commit is contained in:
jianglingxia
2017-09-11 13:44:08 +08:00
parent f482482d72
commit 4165c64a8e
@@ -24,7 +24,7 @@ title: 弹缩StatefulSet
{% capture steps %}
## 使用 `kubectl` 缩StatefulSets
## 使用 `kubectl` 缩StatefulSets
弹缩请确认 `kubectl` 已经升级到Kubernetes1.5及以上版本. 如果不确定, 执行 `kubectl version` 命令并检查使用的 `Client Version`.
@@ -46,8 +46,7 @@ kubectl scale statefulsets <stateful-set-name> --replicas=<new-replicas>
另外, 您可以 [in-place updates](/docs/concepts/cluster-administration/manage-deployment/#in-place-updates-of-resources) StatefulSets.
如果您的StatefulSet开始由 `kubectl apply``kubectl create --save-config`创建,
更新StatefulSet manifests中的 `.spec.replicas`, 然后执行命令 `kubectl apply`:
如果您的StatefulSet开始由 `kubectl apply``kubectl create --save-config` 创建,更新StatefulSet manifests中的 `.spec.replicas`, 然后执行命令 `kubectl apply`:
```shell
kubectl apply -f <stateful-set-file-updated>
@@ -74,7 +73,8 @@ kubectl patch statefulsets <stateful-set-name> -p '{"spec":{"replicas":<new-repl
当一个StatefulSet的size > 1, 如果有一个Pod不健康, 没有办法让Kubernetes知道是否是由于永久性故障还是瞬态(升级/维护/节点重启)导致. 如果该Pod不健康是由于永久性
故障导致, 则在不纠正该故障的情况下进行缩容可能会导致一种状态, 即StatefulSet下的Pod数量低于应正常运行的副本数. 这也许会导致StatefulSet不可用.
如果由于瞬态故障而导致Pod不健康,并且Pod可能再次可用,那么瞬态错误可能会干扰您对StatefulSet的扩容/缩容操作. 一些分布式数据库在节点加入和同时离开时存在问题. 在
如果由于瞬态故障而导致Pod不健康,并且Pod可能再次可用,那么瞬态错误可能会干扰您对
StatefulSet的扩容/缩容操作. 一些分布式数据库在节点加入和同时离开时存在问题. 在
这些情况下,最好是在应用级别进行弹缩操作, 并且只有在您确保Stateful应用的集群是完全健康时才执行弹缩.