单台计算机上的Azure Service Fabric Cluster

时间:2017-09-29 08:44:17

标签: docker azure-service-fabric topshelf

作为ISV,我们有一个企业解决方案,可以为我们的大客户扩展现有软件,他们必须在本地甚至Azure中安装和配置Azure SF群集。我们的软件主要使用无状态服务,只有几个完整的状态。它也是多租户,因此我们可以在云环境中自行运行该软件。

但我们还有第三种方式使用它:我们需要将软件发送给在本地拥有其他软件的非企业客户。这是一个问题,因为Service Fabric需要这些小客户没有并且当然不想拥有的多台机器。有时他们是软件的单个用户,并在一台笔记本电脑上运行。

我看到几个解决方案c.q.选项:

1。重写软件。

以某种方式维护相同的代码库,托管为Windows服务或其他东西。使用topshelf,相对容易主持基于OWIN / Katana的程序。

赞成

  • 没有Service Fabric群集
  • 更容易安装,例如Windows服务

缺点

  • 没有有状态的服务
  • 多个视觉工作室解决方案
  • 开发人员必须考虑托管方式和Service Fabric是否可用
  • 无可靠性和可扩展性

2。单个节点群集上的主机

在计算机上将群集作为单个节点安装为生产环境。知道可靠性和可扩展性已经丢失,但这也是选项1。

赞成

  • 一个视觉工作室解决方案
  • 只有一个代码库,不需要修改代码,这对开发人员来说很容易

缺点

  • Azure Service Fabric不支持生产
  • 无可靠性和可扩展性

第3。将群集发送到单个泊坞窗容器中

我对docker知之甚少,但也许很容易发布预配置的服务架构集群?

你们(和女孩)的想法是什么?我会喜欢选项二或者三,但是我们的一些开发人员甚至认为选项1是我怀疑的更好的选项。

我找到的一些相关链接:

选项2:Azure Service Fabric Single Virtual Machine

选项3:https://github.com/Azure/service-fabric-issues/issues/409

1 个答案:

答案 0 :(得分:0)

您可以使用单个服务器进行调查,并使用该服务器运行3到5个虚拟机,并在其上运行您的群集。您将无法获得最终的高可用性,但您仍然可以享受许多SF功能(有状态服务,滚动升级,复制)。无需重写任何软件。