5. 什么是单元(Cell)?什么是节点(Node)?Node、Profile 与 Server 之间的关系是什么? 答: 单元: 单元是整个分布式网络中一个或多个节点的逻辑分组。单元是一个配置概念,是管理员将节点间逻辑关联起来的实现方法。管理员根据具体的业务环境,制定对其整体系统集成环境有意义的条件来定义和组织构成单元的节点。就一般情况来说,可以将单元看作是最大的作用域。
在 IBM WAS ND 产品中,管理配置数据都存储在 XML 文件中。单元保留了它每个节点中每台服务器的主配置文件。同时每个节点和服务器也有其自己的本地配置文件。如果服务器已经属于单元,则对于本地节点或服务器配置文件的更改都是临时的,通过在本地提交更改生效时,本地更改覆盖单元配置,但是当执行单元配置文档同步到节点的操作时,在单元级别上对主控服务器和主节点配置文件所作的更改将会替换对该节点所作的任何临时更改。
节点: 节点是受管服务器(Server)的逻辑分组。节点通常与具有唯一 IP 主机地址的逻辑或物理计算机系统对应,节点不能跨多台计算机。节点分为受管节点与非受管节点。
关于 Node、Profile 与 Server: 这三个概念比较容易混淆,我们拿出来对比说明:Node=Profile。Node 是管理上使用的概念,Profile 是实际的概要文件,它们代表同一事物。Server 就是所谓的 Application Server Instance , 这是我们实际要布署 Application 的地方。在IBM WAS ND 产品中受管节点的 Node Agent 目的就是让 Deployment Manager Server 可以透过 Node Agent 来管 Node (Profile) 中的 Application Server Instance,一个 Node (Profile) 中可以有多个 Application Server Instance。
如果是非 ND 版本 , 则属于 Single Server 版本,那么一个 Node (Profile) 中只能有一个 Application Server Instance,如果你希望在一台机器上有多个 Application Server Instance,那就只能透过创建多个 Profile (Node) 来达成,但这些 Node (Porfile) 彼此独立没有管理上的关系 (RelationShip),只要使用的 TCP/IP Port 不要冲突即可。 有关分布式网络环境中相关概念的更多资源,请参阅 developerWorks 中国站点的文章 。
6.我可以在多个数据中心上运行 WebSphere Application Server 单元吗? 答: 是的。但也许这样做是不明智的。
首先,让我们看一下最明显的问题:数据中心之间的网速和可靠性。在许多情况下,WAN 的性能和可靠性不如 LAN,虽然有些环境下 WAN 非常可靠而且能提供 LAN 带宽;在这种情况下,对于应用程序(例如 WebSphere Application Server)来说,WAN 与 LAN 是一样的。所以简单的回答是:当然,请继续这样做,如果您有一个又快又可靠的 WAN。然而,一个更重要的问题被忽视了:为什么有多个数据中心呢?通常,您这样做是为了提高可靠性,因此如果一个数据中心全部失败或丢失(换句话说,一个真正的“灾难”),则您想让其余的数据中心能处理工作而不会有很大问题。考虑到这一点,人们需要为时间不短的数据中心停机作好计划,因此,这种状态下的可靠性将会变得非常重要。另外,这种情况下的故障转移要正确测试可能非常困难,因为这是在“正常的”WebSphere Application Server 故障转移(处于组件级(服务器、Web、EJB 等),而非数据中心级)范围外。
在这种情况下,特别是当客户机位于一个数据中心而服务器位于另一个数据中心时,WLM 端点会发生什么情况呢?EJB WLM 或 HTTP 服务器插件 WLM 都会出现这种情况,这取决于部署和网络体系结构,虽然这两种 WLM 实现都会还原(通过超时),但这是需要考虑(和可能避免)的另一种情况。
WebSphere Application Server Network Deployment 部署管理器是一个单点失败。因此,如果您失去运行部署管理器的数据中心,也就失去了管理单元的能力,直到仍然存在的数据中心启动备份部署管理器为止。虽然这种问题能够解决,但它仍然是在故障中需要处理的另一个问题。
如果您选择分发 HTTP 会话对象,而且您使用数据库来实现此目的,则如果该数据库位于现在没有运行的数据中心,会话信息会出现什么情况呢?
虽然的确可以构建(和测试)交叉中央集群解决方案(如果您非常谨慎地运用),但也始终存在丢失某些东西的风险,这在真正面临灾难时会出现。这是因为还存在一些我在这里没提到(和我没有考虑过)的问题,它们致使我再次建议跨多个数据中心运行 WebSphere Application Server 单元。正如我经常提到的,灾难不是您在工作中想要经历的事情。
本答案,来自
IBM WebSphere 开发者技术期刊中的