如何配置 WebSphere Application Server 单机版的简单负载均衡
引言
您一定使用过 WebSphere Application Server Network Deployment 版本所提供集群功能,了解如何通过集群来实现负载均衡和故障转移。但是您知道吗?其实单机版的 WebSphere Application Server 也是能够实现负载均衡和故障转移的。
WebSphere Application Server V7 通过 FixPack V7.0.0.13 对 Web-Server(HTTP) 的负载均衡和故障转移方面进行了增加。WebSphere Application Server V7 许可证原来限制应用服务器为两个,现在将这个限制扩大为五个应用服务器。同时引入了一个新的合并工具简化了对负载均衡的配置,通过这个工具可以将多个单机版的应用服务器的 plug-in 配置文件合并成一个单一的配置文件。这一新的特性被称作“简单负载均衡“。
简单负载均衡能够将 HTTP 请求分发给后端的应用服务器。简单负载均衡还可以处理存储在 HTTP 会话中的应用状态的故障转移。本文将向您介绍如何配置于简单负载均衡。
这里面要说明一下,该特性同样适用于 2011 年 6 月 17 日发布的 WebSphere Application Server V8。
需要注意的是该特性仅适用地单机版的 WebSphere Application Server ( 以下简称 WAS)。访特性不具有像 Network Deployment 版 WAS 中 Deployement Manager 所提供的集中管理能力。
我们是通过将多个 WAS 单机版应用服务器概要文件的 plugin-in 配置文件合并到一个配置文件中来实现“简单负载均衡“的。您可以根据不同的 WAS 配置来将多个应用服务器概要文件的 plug-in 配置合并到一个输出文件:
-
配置多个单机版应用服务器概要文件的简单负载均衡。
-
配置由管理代理管理的单机版应用服务器概要文件的简单负载均衡。
-
配置由使用作业管理器的管理代理管理的单机版应用服务器概要文件的简单负载均衡。
下面,我们就对上述三个场景分别进行介绍。
如何配置多个单机版应用服务器概要文件的简单负载均衡
-
首先是安装 WAS 并创建应用服务器概要文件。关于如何安装 WAS 以及创建应用服务器概要文件可以查看参考资源的 WAS 信息中心。
-
安装企业级应用程序或 Web 模块。
-
决定是否需要 Session Affinity。
Session Affinity 将来自于某客户端的请求发送到特定的应用服务器上。保存在 HTTP Session 中的应用程序的状态信息在 HTTP Session 缓存中访问,这相对于应用服务器来说是本地的。Session Affinity 提供了比 session 对象数据库持久化更好的性能。没有 Session Affinity 的话,如果 session 请求发送到某个服务器,但是这个 session 对象没有在本地缓存中的话,那么就必须到数据库中去获取 session 请求。
-
可选:为每一个应用服务器分配唯一的 HTTP session clone ID。如果您要 Session Affinity 的话,请您一定完成此步。
您可以通过 wsadmin 脚本或是管理控制台来配置 HTTP session clone ID。如果您想通过 wsadmin 脚本来配置的话,请查看参考资源中的信息来了解如何通过脚本来为每一个应用服务器配置唯一的 HTTP session clone ID。这里向您介绍如何通过管理控制台来配置唯一 HTTP session clone ID:
-
展开 服务器 > 服务器类型,然后点击 WebSphere Applcation Server> server_name。
-
在 容器设置 下,展开 Web 容器设置,然后点击 Web 容器。
-
在 其它属性 下,点击 定制属性>新建。
-
在 名称 框中,填入 HttpSessionCloneId。
-
在 值 框中,为该服务器填入一个唯一值。这个唯一值必须是 8-9 个字母数字字符,例如:test1234。
-
点击 应用 或 确定。
-
点击 保存 将配置保存到主配置。
-
可选:配置 session 持久化。如果您需要 session 故障转移,那么您必须配置 session 持久化。将 session 对象持久化到数据库中是 WAS 提供的 session 故障转移的唯一选项。您可以通过 wsadmin 脚本或是管理控制台来配置数据库 session 持久化。如果您想通过 wsadmin 脚本来配置的话,请查看参考资源中的信息来了解如何通过脚本来来配置数据库 session 持久化。这里仍然是向您介绍如何通过管理控制台来配置配置数据库 session 持久化。
-
创建并配置 JDBC 提供程序。
-
创建指向数据库的数据源。
通过刚才定义的 JDBC 提供程序:资源 >JDBC>JDBC 提供程序 >JDBC_Provider>Data Source > New。数据源应该是 non-JTA 的,例如,non-XA enabled。然后指向一个已有的数据库。
-
展开 服务器 > 服务器类型,然后点击 WebSphere Applcation Server> server_name。
-
在 容器设置 下,展开 Web 容器设置,然后点击 Web 容器。
-
在 其它属性 下,点击 会话管理。
-
在 其它属性 下,点击 分布式环境设置。
-
选择并点击 数据库。
-
填入前面步骤中数据库的 JNDI 名字。
-
填入数据库的用户名和密码用来访问数据库以及创建数据库表,注意用户名和密码是大小写敏感的。在您创建数据源时,您可能已经指定一个容器管理的认证别名或是组件管理的认证别名,但是这两个设置,都不会用于 session 持久化的 session 管理。session 管理器使用在这一步中指定的用户名和密码来的做 session 持久化。
-
选择 DB2 行大小。
-
设置表空间名。
-
勾选 多行模式 选项。
-
点击 确定。
-
如果您想更改调优参数,选择 其它属性 下的 定制调整参数。
-
点击 应用 或 确定。
-
点击 保存,将更改保存到主配置库。
-
重启应用服务器。
-
可以选择使用 GenPluginCfg 脚本、管理控制台或者 wsadmin 脚本为每一个应用服务器来生成 plugin-cfg.xml 文件。关于上述工具如何使用,可以查看 WAS 的信息中心。
-
将这些应用服器的 plugin-cfg.xml 文件合并。
您可手工的合并这些 plugin-cfg.xml 文件,或者使用 pluginMerge 工具来自动地将这些应用服务器的 plugin-cfg.xml 文件进行合并。pluginMerge.bat 和 pluginMerge.sh 命令位于 install_root/bin 目录下。
注意: Fix Pack 7.0.0.13 for z/OS and distributed platforms 和 Fix Pack 7.0.0.17 for the IBM platform 提供了 pluginMerge 工具。从 7.0.0.17 版开始,该工具的名字改为 pluginCfgMerge。
如果您的 WAS 版本安装的是 Fix Pack 13,
请完成下面的步骤:
-
将所有的 plugin-cfg.xml 文件重命名,并且保证这些应用服务器概要文件的重命
名的 plugin-cfg.xml 是唯一的。
-
将所有单机版应用服务器的 plugin-cfg.xml 文件拷贝到一个公共目中。
-
使用 pluginMerge 工具将这些 plugin-cfg.xml 合并到一个文件中。例如:
1
2
3
install_root/bin/pluginMerge.sh plugin_config_file1
plugin_config_file2 resulting_plugin_config_file
resulting_pluin_config_file
这个变量的值通常为 plugin-cfg.xml。这里的命令是以 Linux 平台为例的。如果您的 WAS 版本安装的是 Fix Pack 17,请将上面命令的 pluginMerge.sh 换成 pluginCfgMerg。
-
将合并后的 plugin-cfg.xml 文件拷贝回 web 服务器主机上的 plugin_installation_root/config/web_server_name/ 目录。
-
确保您正确地的定义了这个合并的 plugin-cfg.xml 文件有正确的文件读取权限。读取权限需要确保 HTTP server plugin 进程能够读取这个文件。
当您完成了上述操作之后,您就完成了多个单机版应用服务器概要文件的简单负载均衡的配置。
如何配置由管理代理管理的单机版应用服务器概要文件的简单负载均衡
配置由管理代理管理的单机版应用服务器概要文件的简单负载均衡的步骤与上面的步骤基本一样。
-
首先是安装 WAS 并创建应用服务器概要文件。
-
配置管理代理并将每一个应用服务器注册到管理代理中成为受管结点。请完成如下步骤:
-
配置管理代理,这步包括创建一个管理代理概要文件。
-
将单机版的应用服务器注册到管理代理中。
-
启动管理代理。
在完成了上面的步骤后,您就可以通过管理代理来实现所有对应用服务器的管理操作。当您登入管理代理的管理控制台后,您可以选择管理哪个一个应用服务器。如果您想了解如何通过管理代理来管理应用服务器,可以查看参考资源中的 WAS 的信息中心。
接下来的步骤,您可以完全参考如何配置多个单机版应用服务器概要文件的简单负载均衡的 3-10 步。
如何配置由使用作业管理器的管理代理管理的单机版应用服务器概要文件的简单负载均衡
配置由使用作业管理器的管理代理管理的单机版应用服务器概要文件的简单负载均衡的步骤与上面的步骤也同样基本一样。
-
首先是安装 WAS 并创建应用服务器概要文件。
-
配置管理代理并将每一个应用服务器注册到管理代理中成为受管结点。
-
安装 WAS Network Deployment 版本,并创建作业管理器概要文件。
-
配置作来管理器,并将已注册到管理代理的受管的应用服务器注册到作业管理器。您可查看参考资源中的 WAS 信息中心来了解如果配置作业管器环境。现在您可通过作业管理器来管理应用服务器了。
接下来的步骤,您可以完全参考如何配置多个单机版应用服务器概要文件的简单负载均衡的 3-10 步。
小结
本文向您介绍了如何通过 pluginMerge 工具来实现单机版 WAS 应用服务器的简单简单负载均衡以及故障转移。您需要注意的是,虽然 WAS 许可证允许 Web-Server(HTTP) 后端的应用服务器数量为 25 个,但是许可证允许的可以实现负载均衡以及故障转移的应用务器数仅为 5 个。
以下文章点击率最高
Loading…