【问题标题】:Can I customize azure service fabric vm nodes?我可以自定义 Azure 服务结构 vm 节点吗?
【发布时间】:2016-10-28 06:25:26
【问题描述】:

我想在 Azure 服务结构中利用可靠的参与者模型。我们的参与者模型计算需要在 vm 节点上安装特定的软件。我可以在 vm 节点中安装自定义软件(在 azure 服务结构软件之上),以便我可以在参与者模型计算中利用该软件吗?作为我的演员模型部署到 azure 服务结构的一部分,我可以将这个自定义软件安装创作到其中吗?这是应该怎么做的吗?或者还有其他方法吗?还是有可能?

拉古/..

【问题讨论】:

    标签: customization actor azure-service-fabric


    【解决方案1】:

    您有多种选择:

    在每台服务器上手动安装软件

    如果您不经常更改服务器的数量并且您没有很多服务器,您可以只在每台服务器中进行 RDP 并手动安装您的软件。

    在 Service Fabric 中将其作为单独的服务运行

    正如 JunRam 所说,您可以在 Service Fabric 中运行来宾可执行文件。假设您的软件是一个没有安装程序的简单程序,您可以为其创建一个无状态服务包并将 InstanceCount 设置为 -1。这意味着,服务将由 Service Fabric 放置在每个节点上。如果程序意外终止,Service Fabric 将自动重新启动程序,并且在您横向扩展时它还会将其放置在新节点上。

    使用虚拟机扩展

    Some software 可以直接集成到虚拟机的 ARM(Azure 资源管理器)模板中。 Azure Service Fabric 的默认 ARM 模板使用此机制在每台服务器上自动安装“Azure 诊断”代理和 Service Fabric 代理。要获取 Service Fabric 的 ARM 模板,您可以使用 quickstart sample、使用 Azure 门户向导并在创建集群之前将其导出,或者将 export an existing resource group 作为模板。

    还有一个Custom Script Extension 允许您运行 CMD 或 PowerShell 脚本。在这样的脚本中,您可以例如使用Chocolatey、Boxstarter 或手动安装您的程序。

    这种方法的优势在于,它会将软件作为基础架构部署的一部分进行安装,并且当您扩展集群时,它还会自动在每个新节点上安装软件。

    使用 PowerShell DSC、Puppet、Chef 等自动化工具

    如果您要安装的程序不能直接作为虚拟机扩展使用并且不能使用“自定义脚本扩展”安装,您可以使用Azure Automation DSC(所需状态配置)来自动安装附加软件在您的节点上。 DSC 需要您的虚拟机上的代理,该代理可作为虚拟机扩展使用。有一个ARM-based template 显示了如何将扩展集成到虚拟机规模集。您可以将此扩展包含在您的 Service Fabric ARM 模板中并重新部署它以在您的每个节点上安装该扩展。

    之后,您可以使用 DSC 的Package 功能来安装您的软件。

    请注意,创建此解决方案可能需要大量时间。然而,PowerShell DSC 是一个非常强大的系统,一旦安装它,就可以在服务器管理方面为您提供更多可能性。

    使用您自己的虚拟机映像

    您可以capture 和upload 一个虚拟机映像并将其用作您的 Service Fabric ARM 模板的基础映像。如果您需要在服务器上执行不容易自动化的步骤,这可能会很有用。

    【讨论】:

      【解决方案2】:

      您是否尝试过将自定义软件部署为来宾可执行文件?

      供参考:https://azure.microsoft.com/en-us/documentation/articles/service-fabric-deploy-existing-app/

      【讨论】:

        猜你喜欢
        • 2019-07-21
        • 1970-01-01
        • 2019-04-03
        • 2016-07-25
        • 2015-08-05
        • 1970-01-01
        • 1970-01-01
        • 2018-12-05
        • 1970-01-01
        相关资源
        最近更新 更多