在 kubernetes GKE 中更改 cockroachDB 的 运行 参数
Changing run parameter for cockroachDB in kubernetes GKE
我有一个 运行 GKE 集群,其中 cockroachDB 处于活动状态。它已经 运行 很长一段时间了,我不想从头开始重新初始化它 - 它使用(几乎)标准的 cockroachDB 提供的 yaml 文件来启动。我需要更改 exec 行中的一个开关来修改日志记录级别——目前它被设置为以下(但这是记录所有信息消息以及错误)
exec /cockroach/cockroach start --logtostderr --insecure --advertise-host $(hostname -f) --http-host 0.0.0.0 --join cockroachdb-0.cockroachdb,cockroachdb-1.cockroachdb,cockroa
chdb-2.cockroachdb --cache 25% --max-sql-memory 25%"
如何在不完全停止数据库的情况下执行此操作?
Kubernetes 允许您以滚动方式更新 StatefulSets,这样一次只关闭一个 pod。
最简单的更改方法是 运行 kubectl edit statefulset cockroachdb
。这将打开一个文本编辑器,您可以在其中对命令进行所需的更改,然后保存并退出。在那之后,Kubernetes 应该处理用使用新命令的新 pods 一个接一个地替换 pods。
更多信息:
- https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-10-upgrade-the-cluster
- https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets
- https://kubernetes.io/docs/concepts/cluster-administration/manage-deployment/#in-place-updates-of-resources
我有一个 运行 GKE 集群,其中 cockroachDB 处于活动状态。它已经 运行 很长一段时间了,我不想从头开始重新初始化它 - 它使用(几乎)标准的 cockroachDB 提供的 yaml 文件来启动。我需要更改 exec 行中的一个开关来修改日志记录级别——目前它被设置为以下(但这是记录所有信息消息以及错误)
exec /cockroach/cockroach start --logtostderr --insecure --advertise-host $(hostname -f) --http-host 0.0.0.0 --join cockroachdb-0.cockroachdb,cockroachdb-1.cockroachdb,cockroa
chdb-2.cockroachdb --cache 25% --max-sql-memory 25%"
如何在不完全停止数据库的情况下执行此操作?
Kubernetes 允许您以滚动方式更新 StatefulSets,这样一次只关闭一个 pod。
最简单的更改方法是 运行 kubectl edit statefulset cockroachdb
。这将打开一个文本编辑器,您可以在其中对命令进行所需的更改,然后保存并退出。在那之后,Kubernetes 应该处理用使用新命令的新 pods 一个接一个地替换 pods。
更多信息:
- https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-10-upgrade-the-cluster
- https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets
- https://kubernetes.io/docs/concepts/cluster-administration/manage-deployment/#in-place-updates-of-resources