多个项目的共享kubernetes集群的配置

时间:2018-07-15 16:51:12

标签: kubernetes cloud

我正在寻找一种通过通用技术堆栈管理多个项目的方法:nginx,php-fpm,mysql。

这将是我公司提供的一项托管服务。这意味着客户将不会处理集群内部。客户选择一个计划,以便他们可以保留更多或更少的资源。可以将其视为像wordpress.com或ghost.io之类的服务。

当客户到来时,我们为他预留了一组节点。目标是任何客户都可以使用其他客户未使用的资源。

首次尝试:每个客户的名称空间

命名空间 customer1

  • nginx部署和服务
  • php-fpm部署和服务
  • mysql部署和服务

命名空间 customer2

  • nginx部署和服务
  • php-fpm部署和服务
  • mysql部署和服务

但是我认为这种划分过于僵化以共享未使用的资源。

第二次尝试:共享名称空间,每个资源的自定义名称

命名空间配置单元

  • customer1.nginx部署和服务
  • customer1.php-fpm部署和服务
  • customer1.mysql部署和服务

  • customer2.nginx部署和服务

  • customer2.php-fpm部署和服务
  • customer2.mysql部署和服务

对我来说看起来更好,但我认为资源与客户关系太紧密了。

定义项目的唯一线索是域,源代码目录和数据库(我将在以后处理日志和其他内容)。

还有其他方法可以将群集视为一种“计算雾”吗?

1 个答案:

答案 0 :(得分:1)

我认为名称空间是您想要做的正确的事情。所有命名空间都可以共享相同的物理资源,除非您为每个命名空间保留节点,否则对于具有常规用法的命名空间没有严格的资源划分。