我是 GCP 的新手,所以请原谅我的无知。
我有一个运行数据库应用程序的 3 节点 GKE 集群。每个节点都分配了一个 100GB 的标准永久性磁盘。但是,我发现每隔一段时间(自 8 月以来至少发生 3 次)我启动并且数据丢失并且任何已实施的防火墙规则都被重置为默认值。
我可以:
- 阻止数据库中的数据被擦除
- 防止防火墙规则被重置
这是因为基础设施升级吗?
我是 GCP 的新手,所以请原谅我的无知。
我有一个运行数据库应用程序的 3 节点 GKE 集群。每个节点都分配了一个 100GB 的标准永久性磁盘。但是,我发现每隔一段时间(自 8 月以来至少发生 3 次)我启动并且数据丢失并且任何已实施的防火墙规则都被重置为默认值。
我可以:
这是因为基础设施升级吗?
将此答案发布为社区 wiki 作为问题的基本主题可能有点宽泛。
随意扩展它。
为什么
GKE
集群会丢失数据?如果没有关于应用程序/工作负载如何准确部署在
GKE
集群上的具体信息,可能很难查明实际问题。值得一提的是以下几点:
Persistent Volumes
. 如果节点发生故障,存储在 a 上的数据PV
不会丢失,因为它将存储在不同的实体上。有一个使用持久磁盘和云 SQL 在 GKE 上部署 WordPress 的指南。它可以用作使用
PVC
(持久磁盘)部署工作负载的示例:如果重新创建任何 pod,存储在
Pods
其中的数据Volumes
将丢失。存储在
GKE
节点引导磁盘上的数据不会在更新之间保持不变。参考提出的问题
我鼓励您访问 和 的官方
GCP
文档GKE
。您可以找到很多信息/指南和示例:此磁盘专门用作
GKE
节点的引导磁盘,不应用作存储数据的地方。您可以Persistent Volumes
如前所述使用或选择本地 SSD,您可以通过以下链接阅读更多内容:GKE
集群和节点无法关闭。您可以做的是减少(缩放)节点池中的节点数量。你的意思是你连接到它吗?您不应该重新配置
GKE
节点的防火墙规则。相反,您应该使用位于Cloud Console
(Web UI) ->VPC Network
->中的 GCP 防火墙Firewall
。由于节点升级或故障而重新创建的节点将重置防火墙规则。您可以考虑(取决于您的确切用例)使用
GCE
实例而不是GKE
集群。GKE
是一个托管的 Kubernetes 集群,旨在运行容器化工作负载,其中一些部分由 Google 管理(例如控制平面)。至于基础架构升级,您可以通过以下链接查看升级集群时会发生什么:
附加参考:
DB
<-在 GCP中运行的替代解决方案