我最近获得了从头开始为我的应用程序环境支持服务器的能力。我一直将Service Fabric评估为应用程序协调器,因为它能够运行可执行文件而不是容器,这是一个有吸引力的短期选择。
我现在可以通过AWS中的Terraform创建可正常使用的服务结构集群。我可以一无所有地创建一个,也可以将服务器添加到自动扩展策略中,新服务器将加入现有集群。如果我销毁服务器,则由自动伸缩组委托的新服务器将初始化并重新加入集群。
但是,令我失望的是,即使集群中还有许多其他服务器,Service Fabric也不自动管理种子节点的替换。销毁所有种子节点会导致整个群集故障。我希望能够随时销毁任何服务器。
是否存在有关维护多个种子节点的建议做法?我真的希望Service Fabric能够在没有我干预的情况下维护/投票替换丢失的种子节点,但是我找不到任何有关此目的的文档。自动伸缩组和扩展策略可以随时破坏种子节点,并且种子节点不会自动替换自身。
我可以通过生成集群清单和触发集群配置升级来自己管理最少数量的种子节点。不过,我确实希望有一种自动管理的替代方法。
谁能提供任何见解?
答案 0 :(得分:0)
这种行为的原因是Service Fabric群集服务使用了 seed 节点(又称 primary )节点。我的意思是说,诸如ClusterManagerService,ImageStoreService,NamingService等服务仅在主节点上运行,因此删除主节点会导致集群基础结构服务失败。
请检查c-common.h和this,以获取有关主节点,SKU及其管理方式的更多详细信息。