【问题标题】:How are CoreOS Kubernetes Operators different from native Kubernetes initializers?CoreOS Kubernetes Operators 与原生 Kubernetes 初始化器有何不同?
【发布时间】:2017-09-13 03:34:30
【问题描述】:

Kubernetes 1.7 有一个名为 initializers 的 alpha 功能。 CoreOS 有operator 的概念。两者似乎都涉及部署代码,以监视 Kubernetes API 服务器以更改集群中的资源(可能是自定义的),基于这些资源包含且代码可以理解的注释。

有什么区别?如果初始化程序是核心平台的一部分,为什么我需要创建一些新的东西来做我眼中看起来一样的事情?

【问题讨论】:

    标签: kubernetes coreos


    【解决方案1】:

    操作员是独立的“微服务”,不断地和异步地将配置的所需状态与系统的当前状态进行协调。初始化程序是在创建或更新运行时对象之前验证或改变运行时对象的同步钩子。另请参阅准入控制器。它们通常被烘焙成一些“微服务”。当您考虑运行时对象的生命周期时,初始化器首先会采取行动,就像一次一样。然后观察运行时对象的操作员根据他们想要的定义来协调系统。

    【讨论】:

      【解决方案2】:

      Kubernetes 在 1.7 之前就有初始化器的概念,但后来它们是 API 服务器的固定部分。您链接到的新 initializers 功能主要是将这些部分与 API 服务器分离:

      今天,这些插件中的每一个都必须编译到 Kubernetes 中。随着 Kubernetes 的发展,除粗粒度访问控制之外的所有策略实施都通过树内编译和分发来完成的要求变得笨拙,并限制了管理员和生态系统的发展。

      (来自the design document

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-19
        • 2018-09-11
        • 1970-01-01
        • 2017-01-29
        • 2017-07-14
        相关资源
        最近更新 更多