我们有一个中等复杂的解决方案,需要为其构建生产环境。
大约有十几个组件(这里我使用的“组件”的定义是“可以独立于其他组件而失败” - 例如 Apache 服务器、Weblogic Web 应用程序、ftp 服务器、ejabberd 服务器等)。有许多 weblogic Web 应用程序 - 我们需要决定的一件事是在多少个 weblogic 容器中运行这些 Web 应用程序。
系统需要高度可用,并且系统内外的通信通常受 SSL 保护
我们的数据中心团队将处理 VLAN 设计、机架、服务器规范和构建等事宜。
因此,我们仍需要做出以下决定:如何将组件映射到物理服务器(和 weblogic 容器)识别所有通信路径,确保所有通信路径都具有弹性,或者存在具有弹性的“上游”通信路径,并且该路径的故障转移取决于“下游”的所有单点故障。决定在何处终止 SSL(例如在负载平衡器上或在 Apache 服务器上)。
我的问题其实并不是关于如何做出决策,而是是否有任何标准来记录(尤其是在图表中)设计问题和设计决策。例如,Visio 没有这样的模板,这似乎很奇怪 - 它有更多物理布局的模板,以及更多逻辑/软件架构图的模板。
所以现在我使用一个基本的 Visio 图表来表示每个组件及其之间的通信,并计划通过主机名、端口、每个通信链路是否具有弹性等来增强它。
这一切感觉就像以前必须多次做过的事情。是否有记录这些的标准?
答案1
免责声明:我是以下软件的创始人之一。
请查看设备42作为一种可能的解决方案。我们让用户定义应用程序组件并添加对其他组件的依赖关系。会自动创建影响和依赖关系图表。可以使用集群设备直观地表示在多台服务器上运行的服务。(我们也正在努力为此添加网络路径。)