【问题标题】:GKE: how is etcd compaction handled when api server is down / what happens when etcd is fullGKE:当 api 服务器关闭时如何处理 etcd 压缩/etcd 已满时会发生什么
【发布时间】:2021-03-08 17:22:24
【问题描述】:

在我们当前的集群中,我们有一个紧急的 etcd 压缩脚本,可以防止 etcd 锁定。我们正在考虑迁移到 GKE,并想知道它是否具有类似的开箱即用功能,或者当 etcd 满时会发生什么。

【问题讨论】:

    标签: google-kubernetes-engine etcd


    【解决方案1】:

    一般而言,GKE 是一项托管服务,特别是 Control Plane,是 Google 的 SRE Site Reliability Engineering 完全托管产品的一部分。

    话虽如此,GKE 控制平面及其操作是您不会参与的 Google 职责的一部分,这是为了有时间专注于您的应用程序,而 Google 的 SRE 会监控您的集群及其计算、网络,以及存储资源。

    回答您的问题如果 GKE 带有类似的东西(etcd 压缩脚本)开箱即用,或者当 etcd 满时会发生什么

    不确定 GKE 中是否有您的解决方案(etcd 压缩脚本),但如果存在,它将由 Google 的 SRE 管理,而您不会(取决于集群类型)您选择)通知他们是否备份或维护 etcd o algun otro control plane 组件。

    根据我的经验,与full etcd 相关的最常见问题与未删除的作业有关。正如我们所知,当 Job 完成时,不会再创建 Pod,但也不会删除 Pod。保留它们可以让您仍然查看已完成 pod 的日志,以检查错误、警告或其他诊断输出。 Job 对象在完成后也会保留,以便您查看其状态。您可以在记录其状态后删除旧作业。当发生这种情况时,etcd 数据库可能会被大量数据淹没,因此变得无响应(这完全取决于集群上运行的作业数量)。

    如果 etcd 停止工作或已满,Google 将负责修复它,正如我上面提到的,您会注意到控制平面上的停机时间取决于您选择的 cluster type。 GKE 提供 Zonal 集群(控制平面的单个副本在单个区域中运行)、多区域集群(控制平面的单个副本在单个区域中运行)、区域集群(控制平面的多个副本,在多个区域中运行在给定区域内)。如果您选择区域 GKE 集群,您的 GKE 控制平面将拥有 HA(每个控制平面资源的 3 个副本)。

    【讨论】:

    • 没有真正回答我的问题,但我想这是不问 GKE 工程师的情况。
    猜你喜欢
    • 2015-07-04
    • 2015-09-14
    • 2021-04-10
    • 2018-07-19
    • 1970-01-01
    • 2011-12-22
    • 1970-01-01
    • 1970-01-01
    • 2017-09-24
    相关资源
    最近更新 更多