kubernetes - 跨数据中心的单个 Kubernetes/OpenShift 集群/实例?

标签 kubernetes openshift-origin openshift-enterprise

了解 Ubernetes旨在完全解决这个问题,目前是否有可能(不一定推荐)跨多个内部公司数据中心的单个 K8/OpenShift 集群?

另外假设数据中心之间的延迟相对较低,并且跨企业数据中心的基础设施相对一致。

示例:给定 3 个公司 DC,在每个数据中心部署 1..* master(作为一个集群),并在每个 DC 有 1..* 节点,pod/rc/services/... 正在所有数据中心运行3 个 DC。

在 Ubernetes 下线之前,是否有人实现了类似的解决方案作为权宜之计?如果是,它是如何工作的?在像这样运行时需要考虑哪些因素?

最佳答案

is it currently possible (not necessarily recommended) to span a single K8/OpenShift cluster across multiple internal corporate datacententers?

是的,目前是可能的。节点获得 apiserver 的地址和客户端凭证,然后将自己注册到集群中。节点不知道(或关心)apiserver 是本地的还是远程的,并且 apiserver 允许任何节点注册,只要它具有有效的凭据,而不管该节点在网络上的哪个位置。

Additionally assuming that latency between data centers is relatively low and that infrastructure across the corporate data centers is relatively consistent.

这很重要,因为 Kubernetes 中的许多设置都假定(隐式或显式)apiserver 和节点之间的高带宽、低延迟网络。

Example: Given 3 corporate DC's, deploy 1..* masters at each datacenter (as a single cluster) and have 1..* nodes at each DC with pods/rc's/services/... being spun up across all 3 DC's.

这种方法的缺点是,如果您有一个全局集群,就会出现一个全局故障点。即使您复制了 HA 主组件,数据损坏仍然会使整个集群脱机。传播到复制 Controller 中所有 pod 的错误配置可能会使您的整个服务脱机。错误的节点图像推送可能会使您的所有节点脱机。等等。这是我们鼓励人们为每个故障域使用一个集群而不是一个全局集群的原因之一。

关于kubernetes - 跨数据中心的单个 Kubernetes/OpenShift 集群/实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34194602/

相关文章:

docker - OpenShift 云计算 : Advanced installation

kubernetes - Openshift 中的 Cron Job 不是有效模板,而是带有 yml 的 *batch.CronJob

kubernetes - 如何使用带有 helm 或其他工具的参数化模板生成 OpenShift/Kubernetes 对象定义?

asp.net - Openshift - 构建错误 : non-zero (13) exit code

python - Kubernetes 部署连接被拒绝

kubernetes - 如何在traefik中配置上传大文件速度限制?

kubernetes - Kubernernetes的RBAC和OpenShift的访问控制一样吗?

java - PKIX 路径构建失败 : SunCertPathBuilderException: unable to find valid certification path to requested target

node.js - API设计——分成不同的子域(微服务)

go - 如何操作kubernetes PodSpec对象