Openshift上的Openwhisk多租户

Openshift上的Openwhisk多租户,openshift,multi-tenant,openwhisk,Openshift,Multi Tenant,Openwhisk,我正在尝试将Openwhisk安装到Openshift上。我遵循了官方的指南,它奏效了 现在的重点是,我的环境将是一个多租户生态系统,所以让我们假设有两个不同的用户(Ux和Uy),他们希望在我的openwhisk环境中运行他们的容器 我希望在我的openshift中有以下项目: 核心项目,托管Openwhisk的入口、控制器、卡夫卡和CouchDB组件(可能也是调用程序?) UxPRJ项目,它只托管运行Ux创建的操作的容器(也可能是调用程序?) UyPRJ项目,该项目仅承载运行Uy创建的操作的

我正在尝试将Openwhisk安装到Openshift上。我遵循了官方的指南,它奏效了

现在的重点是,我的环境将是一个多租户生态系统,所以让我们假设有两个不同的用户(Ux和Uy),他们希望在我的openwhisk环境中运行他们的容器

我希望在我的openshift中有以下项目:

  • 核心项目,托管Openwhisk的入口控制器卡夫卡CouchDB组件(可能也是调用程序?)
  • UxPRJ项目,它只托管运行Ux创建的操作的容器(也可能是调用程序?)
  • UyPRJ项目,该项目仅承载运行Uy创建的操作的容器(也可能是调用程序?)
以下图片更好地解释了我的想法:

或者:

这种配置可能吗? 环顾四周,我找不到类似的东西


谢谢。

将函数分配给调用程序的OpenWhisk loadbalancer不会以您想要的方式隔离用户,但如果您修改loadbalancer,则可以执行您想要的操作。它现在的工作方式是,有一个可用调用程序的列表,这些调用程序构成了函数分配允许的调用程序集。此时,您可以考虑基于用户的分区,并以不同的方式形成允许的调用程序集。还有其他方法可以实现您想要的分区,但都需要修改OpenWhisk控制平面。

将函数分配给调用程序的OpenWhisk loadbalancer不会以您想要的方式隔离用户,但是如果您修改loadbalancer,则可以执行您想要的操作。它现在的工作方式是,有一个可用调用程序的列表,这些调用程序构成了函数分配允许的调用程序集。此时,您可以考虑基于用户的分区,并以不同的方式形成允许的调用程序集。还有其他方法可以实现您想要的分区,但都需要修改OpenWhisk控制平面。

谢谢。所以你认为唯一的方法是为每个项目提供完整的openwhisk堆栈吗?我认为是这样的,不需要修改loadbalancer。您可以尝试通过电子邮件发送项目邮件列表或在项目github repo上打开功能请求。如果要为每个项目部署一个堆栈,可能需要使用另一个堆栈,称为“精益”堆栈。它将所有的微服务融合成一个(控制器,无卡夫卡,调用器),并使用外部沙发进行共享。谢谢。所以你认为唯一的方法是为每个项目提供完整的openwhisk堆栈吗?我认为是这样的,不需要修改loadbalancer。您可以尝试通过电子邮件发送项目邮件列表或在项目github repo上打开功能请求。如果要为每个项目部署一个堆栈,可能需要使用另一个堆栈,称为“精益”堆栈。它将所有的微服务融合成一个(控制器、无卡夫卡、调用者),并使用外部沙发进行共享。