Kubernetes on Mesos



我有以下设置:在/16网络中的Kubernetes on Mesos(基于Kubernetes - Mesos项目)。每个pod都有自己的IP,我相信这将使64000个pod受益。这个想法是为每个应用程序提供隔离,即每个应用程序在同一个pod中获得自己的mysql -应用程序在本地主机(在pod中)访问mysql。如果需要额外的服务,我会使用kubernetes滚动更新将服务的容器添加到pod中,应用程序也将能够访问本地主机上的新服务。每个应用程序都需要尽可能多的隔离。

  1. 这样的实现有什么缺陷吗?
  2. 我必须使用编织吗?
    • 在运行kubernetes-mesos安装时,有一个指定service-ip范围的选项。
  3. 一个漏洞是我如何扩展服务,这真的可行吗?
  4. 有更好的方法来做到这一点吗?即提供隔离服务

谢谢。PS//我显然是一个新手在这方面,我正试图得到最好的设置运行。

一个常见的误解是Pod应该管理一个垂直的多层堆栈:例如web层+ DB层在一起。

读到Kubernetes设计pod的意图很有趣:它们是用来收集'helper'进程的,而不是组成一个垂直堆栈。

要回答你的问题,我建议:

  • 为web层定义一个Pod模板。可以使用复制控制器将其缩放到所需的任何大小(问题#1和#3)。
  • 为MySQL定义另一个Pod。
  • 使用服务抽象来定位这些组件。

这种设计将适用于小型应用程序,但是如果您突然想要两个服务的两个实例访问同一个mysql后端,那么它将很难扩展。

您可能希望考虑将每个服务放入单独的命名空间中。然后,默认情况下,服务的DNS查找将限定在它自己的名称空间内,这样它就不会找到其他服务的资源,除非它显式地查找它们。这将允许你把mysql(和任何其他依赖)放在一个单独的pod中,以便前端可以独立扩展。

最新更新