From 460b0e61d4476ee598f7ad2743649cea2ee4b41d Mon Sep 17 00:00:00 2001 From: ldsdsy Date: Fri, 29 Apr 2022 14:01:04 +0800 Subject: [PATCH] translate 2020-09-30-writing-crl-scheduler --- .../image01.png | Bin 0 -> 13525 bytes .../image02.png | Bin 0 -> 30770 bytes .../image03.png | Bin 0 -> 28564 bytes .../image04.png | Bin 0 -> 19665 bytes .../image05.png | Bin 0 -> 18311 bytes .../image06.png | Bin 0 -> 19689 bytes .../image07.png | Bin 0 -> 20712 bytes .../2020-09-30-writing-crl-scheduler/index.md | 255 ++++++++++++++++++ 8 files changed, 255 insertions(+) create mode 100644 content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image01.png create mode 100644 content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image02.png create mode 100644 content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image03.png create mode 100644 content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image04.png create mode 100644 content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image05.png create mode 100644 content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image06.png create mode 100644 content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image07.png create mode 100644 content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/index.md diff --git a/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image01.png b/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image01.png new file mode 100644 index 0000000000000000000000000000000000000000..91e885613945a9e2624a4984c0bebdcf3eca6c33 GIT binary patch literal 13525 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 literal 0 HcmV?d00001 diff --git a/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image02.png b/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image02.png new file mode 100644 index 0000000000000000000000000000000000000000..dfd14d7cdc9943c158cf5b380dd5d07b1beb4409 GIT binary patch literal 30770 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 literal 0 HcmV?d00001 diff --git a/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image03.png b/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image03.png new file mode 100644 index 0000000000000000000000000000000000000000..443a6f2d671be341becf8e43dd2759dd742e3e1a GIT binary patch literal 28564 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

R^R;N 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 literal 0 HcmV?d00001 diff --git a/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image05.png b/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image05.png new file mode 100644 index 0000000000000000000000000000000000000000..6d80447d094a3d99f2df7d87fba025d981e88e08 GIT binary patch literal 18311 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 literal 0 HcmV?d00001 diff --git a/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image06.png b/content/zh/blog/_posts/2020-09-30-writing-crl-scheduler/image06.png new file mode 100644 index 0000000000000000000000000000000000000000..d40b2eb0b6838ef8701a4dcfe2e14fccb4ad98ec GIT binary patch literal 19689 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⩔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 +**作者**: Chris Seto (Cockroach Labs) + + + +只要你愿意遵守规则,那么在 Kubernetes 上的部署和探索可以是相当愉快的。更多时候,事情会 "顺利进行"。 +然而,如果一个人对与必须保持存活的鳄鱼一起旅行或者是对必须保持可用的数据库进行扩展有兴趣, +情况可能会变得更复杂一点。 +相较于这个问题,建立自己的飞机或数据库甚至还可能更容易一些。撇开与鳄鱼的旅行不谈,扩展一个高可用的有状态系统也不是一件小事。 + + +任何系统的扩展都有两个主要组成部分。 +1. 增加或删除系统将运行的基础架构,以及 +2. 确保系统知道如何处理自身额外实例的添加和删除。 + + +大多数无状态系统,例如网络服务器,在创建时不需要意识到对等实例。而有状态的系统,包括像 CockroachDB 这样的数据库, +必须与它们的对等实例协调,并对数据进行 shuffle。运气好的话,CockroachDB 可以处理数据的再分布和复制。 +棘手的部分是在确保数据和实例分布在许多故障域(可用性区域)的操作过程中能够容忍故障的发生。 + + +Kubernetes 的职责之一是将 "资源"(如磁盘或容器)放入集群中,并满足其请求的约束。 +例如。"我必须在可用性区域 _A_"(见[在多个区域运行](/zh/docs/setup/best-practices/multiple-zone/#nodes-are-labeled)), +或者 "我不能被放置到与某个 Pod 相同的节点上" +(见[亲和与反亲和](/zh/docs/setup/best-practices/multiple-zone/#nodes-are-labeled))。 + + +作为对这些约束的补充,Kubernetes 提供了 [StatefulSets](/zh/docs/concepts/workloads/controllers/statefulset/), +为 Pod 提供身份,以及 "跟随" 这些指定 Pod 的持久化存储。 +在 StatefulSet 中,身份是由 Pod 名称末尾一个呈增序的整数处理的。 +值得注意的是,这个整数必须始终是连续的:在一个 StatefulSet 中, +如果 Pod 1 和 3 存在,那么 Pod 2 也必须存在。 + + +在架构上,CockroachCloud 将 CockroachDB 的每个区域作为 StatefulSet 部署在自己的 Kubernetes 集群中 -- +参见 [Orchestrate CockroachDB in a Single Kubernetes Cluster](https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html)。 +在这篇文章中,我将着眼于一个单独的区域,一个 StatefulSet 和一个至少分布有三个可用区的 Kubernetes 集群。 + + +一个三节点的 CockroachCloud 集群如下所示: + + +![3-node, multi-zone cockroachdb cluster](image01.png) + + +在向集群增加额外的资源时,我们也会将它们分布在各个区域。 +为了获得最快的用户体验,我们同时添加所有 Kubernetes 节点,然后扩大 StatefulSet 的规模。 + + +![illustration of phases: adding Kubernetes nodes to the multi-zone cockroachdb cluster](image02.png) + + +请注意,无论 Pod 被分配到 Kubernetes 节点的顺序如何,都会满足反亲和性。 +在这个例子中,Pod 0、1 、2 分别被分配到 A、B 、C 区,但 Pod 3 和 4 以不同的顺序被分配到 B 和 A 区。 +反亲和性仍然得到满足,因为 Pod 仍然被放置在不同的区域。 + + +要从集群中移除资源,我们以相反的顺序执行这些操作。 + + +我们首先缩小 StatefulSet 的规模,然后从集群中移除任何缺少 CockroachDB Pod 的节点。 + + +![illustration of phases: scaling down pods in a multi-zone cockroachdb cluster in Kubernetes](image03.png) + + +现在,请记住,规模为 _n_ 的 StatefulSet 中的 Pods 一定具有 `[0,n)` 范围内的 id。 +当把一个 StatefulSet 规模缩减了 _m_ 时,Kubernet 会移除 _m_ 个 Pod,从最高的序号开始,向最低的序号移动, +[与它们被添加的顺序相反](/zh/docs/concepts/workloads/controllers/statefulset/#deployment-and-scaling-guarantees)。 +考虑一下下面的集群拓扑结构。 + + +![illustration: cockroachdb cluster: 6 nodes distributed across 3 availability zones](image04.png) + + +当从这个集群中移除 5 号到 3 号 Pod 时,这个 StatefulSet 仍然横跨三个可用区。 + + +![illustration: removing 3 nodes from a 6-node, 3-zone cockroachdb cluster](image05.png) + + +然而,Kubernetes 的调度器并不像我们一开始预期的那样 _保证_ 上面的分布。 + + +我们对以下内容的综合认识是导致这种误解的原因。 +* Kubernetes [自动跨区分配 Pod](/zh/docs/setup/best-practices/multiple-zone/#pods-are-spread-across-zone) 的能力 +* 一个有 _n_ 个副本的 StatefulSet,当 Pod 被部署时,它们会按照 `{0...n-1}` 的顺序依次创建。 +更多细节见 [StatefulSet](/zh/docs/concepts/workloads/controllers/statefulset/#deployment-and-scaling-guarantees)。 + + +考虑以下拓扑结构: + + +![illustration: 6-node cockroachdb cluster distributed across 3 availability zones](image06.png) + + +这些 Pod 是按顺序创建的,它们分布在集群里所有可用区。当序号 5 到 3 的 Pod 被终止时, +这个集群将从 C 区消失! + + +![illustration: terminating 3 nodes in 6-node cluster spread across 3 availability zones, where 2/2 nodes in the same availability zone are terminated, knocking out that AZ](image07.png) + + +更糟糕的是,在这个时候,我们的自动化机制将删除节点 A-2,B-2,和 C-2。 +并让 CRDB-1 处于未调度状态,因为持久性卷只在其创建时所处的区域内可用。 + + +为了纠正后一个问题,我们现在采用了一种“狩猎和啄食”的方法来从集群中移除机器。 +与其盲目地从集群中移除 Kubernetes 节点,不如只移除没有 CockroachDB Pod 的节点。 +更为艰巨的任务是管理 Kubernetes 的调度器。 + + +## 一场头脑风暴后我们有了 3 个选择。 + +### 1. 升级到 kubernetes 1.18 并利用 Pod 拓扑分布约束 + +虽然这似乎是一个完美的解决方案,但在写这篇文章的时候,Kubernetes 1.18 在公有云中两个最常见的 +托管 Kubernetes 服务( EKS 和 GKE )上是不可用的。 +此外,[Pod 拓扑分布约束](/zh/docs/concepts/workloads/pods/pod-topology-spread-constraints/)在 +[1.18 中仍是测试版功能](https://v1-18.docs.kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/), +这意味着即使在 v1.18 可用时,它[也不能保证在托管集群中可用](https://cloud.google.com/kubernetes-engine/docs/concepts/types-of-clusters#kubernetes_feature_choices)。 +整个努力让人联想到在 Internet Explorer 8 还存在的时候访问 [caniuse.com](https://caniuse.com/)。 + + +### 2. 在每个区部署一个 StatefulSet。 + +与跨所有可用区部署一个 StatefulSet 相比,在每个区部署一个带有节点亲和性的 StatefulSet 可以实现手动控制分区拓扑结构。 +我们的团队过去曾考虑过这个选项,我们也倾向此选项。 +但最终,我们决定放弃这个方案,因为这需要对我们的代码库进行大规模的修改,而且在现有的客户集群上进行迁移也是一个同样大的工程。 + + + +### 3. 编写一个自定义的 Kubernetes 调度器 + +感谢 [Kelsey Hightower](https://github.com/kelseyhightower/scheduler) 的例子和 +[Banzai Cloud](https://banzaicloud.com/blog/k8s-custom-scheduler/) 的博文,我们决定投入进去,编写自己的[自定义 Kubernetes 调度器](/zh/docs/tasks/extend-kubernetes/configure-multiple-schedulers/)。 +一旦我们的概念验证被部署和运行,我们很快就发现,Kubernetes 的调度器也负责将持久化卷映射到它所调度的 Pod 上。 +[`kubectl get events`](/zh/docs/tasks/extend-kubernetes/configure-multiple-schedulers/#verifying-that-the-pods-wer-scheduled-using-the-desired-schedulers) +的输出让我们相信有另一个系统在发挥作用。 +在我们寻找负责存储声明映射的组件的过程中,我们发现了 +[kube-scheduler 插件系统](/zh/docs/concepts/scheduling-eviction/scheduling-framework/)。 +我们的下一个 POC 是一个"过滤器"插件,它通过 Pod 的序号来确定适当的可用区域,并且工作得非常完美。 + +我们的[自定义调度器插件](https://github.com/cockroachlabs/crl-scheduler)是开源的,并在我们所有的 CockroachCloud 集群中运行。 +对 StatefulSet Pod 的调度方式有掌控力,让我们有信心扩大规模。 +一旦 GKE 和 EKS 中的 Pod 拓扑分布约束可用,我们可能会考虑让我们的插件退役,但其维护的开销出乎意料地低。 +更好的是:该插件的实现与我们的业务逻辑是横向的。部署它,或取消它,就像改变 StatefulSet 定义中的 "schedulerName" 字段一样简单。 + +--- + +[Chris Seto](https://twitter.com/_ostriches) 是 Cockroach 实验室的一名软件工程师,负责 +[CockroachCloud](https://cockroachlabs.cloud) CockroachDB 的 Kubernetes 自动化。