设为首页 收藏本站
查看: 779|回复: 0

[经验分享] 配置WebLogic Server集群[转]

[复制链接]

尚未签到

发表于 2017-2-15 10:39:59 | 显示全部楼层 |阅读模式
  预备知识
  什么是Domain和Server
  Domain
  Domain是WebLogic Server实例的基本管理单元。所谓Domain就是,由配置为Administrator Server的WebLogic Server实例管理的逻辑单元,这个单元是有所有相关资源的集合。
  Server
  Server是一个相对独立的,为实现某些特定功能而结合在一起的单元。
  Domain and Server的关系
  一个Domain 可以包含一个或多个WebLogic Server实例,甚至是Server集群。一个Domain中有一个且只能有一个Server 担任管理Server的功能,其它的Server具体实现一个特定的逻辑功能。
  本文环境
  平台:Windows 2000
  软件:Bea WebLogic Server 8.1 SP2
  配置WebLogic Server集群
  WebLogic集群的体系结构
  单层混合型的集群架构(Cluster)
  这种架构将所有的Web应用以及相关的服务应用全部置于集群中的单一WLS实例中,这种架构的优势在于:
  易于管理
  灵活的负载平衡机制
  更强的安全控制
  多层结构的集群架构(Cluster)
  这种架构使用两个WLS集群,一个放置表静态内容和集群Servlet,另一个放置集群EJB。一般应用于下面这些情况:
  在负载平衡机制需要调用集群EJB中的方法时;
  在提供内容与提供对象的服务之间需要更大的机动性时;
  在需要更高的系统稳定性时;
  配置集群应用的必要条件
  集群中的所有Server必须位于同一网段,并且必须是IP广播(UDP)可到达的
  集群中的所有Server必须使用相同的版本,包括Service Pack
  集群中的Server必须使用永久的静态IP地址。动态IP地址分配不能用于集群环境。如果服务器位于防火墙后面,而客户机位于防火墙外面,那么服务器必须有公共的静态IP地址,只有这样,客户端才能访问服务器
  要以CLUSTER方式运行,必须有包含CLUSTER许可的LICENSE才行(从Bea网站上下载的试用版本就可以进行Cluster配置)
  配置前的准备工作
  在配置集群应用前要对集群的配置信息有一个良好的设计,下面就是我们这次配置的集群信息:
  在同一台机器上配置集群
  机器类型
  操作系统
  硬件配置
  角色
  DELL PC
  Win2000 Professional
  IP:10.16.92.33PORT:7080
  Administrator Server
  DELL PC
  Win2000 Professional
  IP:10.16.92.33PORT:8080
  Proxy Server
  DELL PC
  Win2000 Professional
  IP:10.16.92.33PORT:7082
  Managed Server
  DELL PC
  Win2000 Professional
  IP:10.16.92.33PORT:7084
  Managed Server
  DELL PC
  Win2000 Professional
  IP:10.16.92.33PORT:7086
  Managed Server
  在同一网段内的不同机器上配置集群
  机器类型
  操作系统
  硬件配置
  角色
  DELL PC
  Win2000 Server
  IP:10.16.92.7PORT:7080
  Administrator Server
  DELL PC
  Win2000 Server
  IP:10.16.92.7PORT:8080
  Proxy Server
  DELL PC
  Win2000 Server
  IP:10.16.92.7PORT:7082
  Managed Server
  DELL PC
  Win2000 Server
  IP:10.16.92.33PORT:7084
  Managed Server
  使用Domain Configuration Wizard进行配置
  创建新的Domain
  选择“Create a new WebLogic configuration”,单击“Next”按钮
  选择安装类型
  选择安装“Basic WebLogic Server Domain”,单击“Next”按钮
  选择定制安装
  选择“Custom”安装,单击“Next”按钮
  输入Administrator Server的信息
  输入Administrator Server的名称,监听地址,监听端口,如果需要SSL支持的话可以在“SSL enabled”后面的复选取框上打勾,配置SSL监听端口,单击“Next”按钮
  是否配置Server、Cluster、Machine信息
  选择“Yes”,对Server、Cluster、Machine信息进行配置,,单击“Next”按钮
  配置Managed Server信息
  输入Managed Server的名称,监听地址,监听端口,如果需要SSL支持的话,可以在“SSL enabled”复选框上打勾,配置SSL监听端口。可以配置多个Managed Server。单击“Next”按钮
  配置Cluster信息
  输入Cluster的名称,Cluster的组播地址和端口,Cluster地址可输可不输。单击“Next”按钮
  将Managed Server添加到Cluster中
  选择左面列表中的Managed Server,将其添加到右面的列表中,单击“Next”按钮
  配置Machine信息
  在此不对Machine进行配置,单击“Next”按钮
  是否配置JDBC信息
  在此不对JDBC数据源和连接池进行配置,单击“Next”按钮
  配置JMS信息
  在此不对JMS进行配置,单击“Next”按钮
  配置缺省系统管理员用户名和密码
  输入系统管理员用户名和密码,还可以配置其它的系统管理用户,在此不做配置,单击“Next”按钮
  配置Windows附加选项
  可以选择是否创建开始菜单中的快捷方式,是否将该服务作为Windows系统服务,在这里我们全部选择“No”,单击“Next”按钮
  配置服务的启动模式并选择Java SDK
  选择“Development Mode”模式,并选择标准的Java SDK 1.4,在开发模式下会有比较丰富的调试信息,对我们很有帮助,单击“Next”按钮
  配置信息确认以及选择安装路径
  系统列出您的配置信息,并指定了缺省的安装路径(D:\bea\user_projects\domains\mydomain),在此我们将安装路径定位在D:\bea\user_projects\clusterdomain,单击“Create”按钮
  系统创建Domain
  系统根据配置信息,完成缺省的目录及文件的创建
  启动WebLogic服务
  启动Administrator Server
  使用startWebLogic命令启动Administrator Server
  启动Managed Server
  使用startManagedWeblogic命令启动Managed Server,它的命令格式是:
  startManagedWeblogic.cmdManaged Server的名称Administrator Server地址
  同理可以启动nodeB和nodeC,以及Proxy Server
  通过HttpClusterServlet实现请求的自动分发处理
  HttpClusterServlet通过一个WebLogic服务器代理对WebLogic集群中的其他服务器成员的HTTP请求,同时HttpClusterServlet还为代理的HTTP请求提供负载平衡与容错处理。
  实际上实现是很简单的,遵循下面几个步骤就可以轻松实现请求的自动分发功能:
  创建一个代理Server(在此我们称这proxyServer)
  生成配置文件web.xml
  生成配置文件weblogic.xml
  打包生成Web应用
  在proxyServer上部署应用,并将该应用作为缺省的Web应用
  创建代理Server
  启动Administrator Server,然后进入Console控制台(http://10.16.92.33:7080/console/),在此我们将代理Server与Administrator Server置于同一台主机之上。
  进入console控制台后,在“Server”结点上单击右键,在弹出菜单上选择“Configure a New Server”,然后配置代理Server的相关信息。(在这里只要指定名称,监听地址,监听端口就可以了)
  HttpClusterServlet的部署,主要是Servlet的声明和映射,并设置初始化参数,可以创建一个Web App,然后直接在web.xml中添加或在管理控制台上设置HttpClusterServlet的部署信息。最后将它发布给用来做代理的Server,并将这个Web App设置为这个Server的缺省WEB应用。
  web.xml文件示例
  weblogic.xml文件示例
  打包WEB应用
  可以使用jar命令将proxy应用打包成war文件,我们建一个临时目录temp,然后在其中建立如下目录结构:
  使用如下的命令操作,就可完成web应用的打包操作:
  JAR –参数 WEB应用名称要打包的目录
  当然我们也可以直接部署该目录,而无需打包,这在项目的开发阶段是很有帮助的,便于修改。
  部署proxy应用
  启动Administrator Server,然后进入Console控制台(http://10.16.92.33:7080/console/),在此我们将代理Server与Administrator Server置于同一台主机之上。
  进入console控制台后,在“Web Application Modules”结点上单击右键,在弹出菜单上选择“Deploy a new Web Application Module”,然后选择要部署的文件或目录,单击“Target Module”按钮,然后选择“proxyServer”,单击“Continue”按钮,到了下一步,单击“Deploy”按钮,完成部署工作。
  部署完成后,查看WEB应用的状态是“FAILS”,造成这种情况的原因是“proxyServer”还没有启动,我们可以通过下面的命令启动“proxyServer”:
  然后点击“ReDeploy”,重新部署应用,状态值将变为“Success”。
  将WEB应用配置成缺省的WEB应用,weblogic8.1与weblogic6.1有很大的不同,8.1不再支持从console控制台完成配置的工作,而是在weblogic.xml中通过下面的结点,完成配置的工作。
  <context-root> / </context-root>
  测试proxy应用
  修改web.xml文件,加入下面的结点,然后重启服务。
  <init-param>
  <param-name>DebugConfigInfo</param-name>
  <param-value>ON</param-value>
  </init-param>
  打开浏览器,访问下面的地址,会得到下图所示的结果,这就说明你的配置是成功的。
  ort/placeholder.jsp? __WebLogicBridgeConfig
  myserver为服务地址(在这里是10.16.92.7)
  port为proxy服务的端口(在这里是8080)
  placeholder.jsp(这是一个不存在的JSP文件,您也可以随意指定文件名)
  __WebLogicBridgeConfig(这个可千万不能写错呦' target=_blank>http://myserverort/placeholder.jsp? __WebLogicBridgeConfig
  myserver为服务地址(在这里是10.16.92.7)
  port为proxy服务的端口(在这里是8080)
  placeholder.jsp(这是一个不存在的JSP文件,您也可以随意指定文件名)
  __WebLogicBridgeConfig(这个可千万不能写错呦!)
  测试集群的分发功能
  编写测试WEB应用并部署
  我们来编写一个简单的WEB应用,它会在控制台和浏览器上同时打印出“OK”字样,然后将这个WEB应用部署到集群中所有Managed Server上面。(代码见附件)
  在这里我们将通过Apache中所带的ab包来进行并发访问的模拟测试,使用如下的命令就可以完成压力测试。
  ab –n 100 –c 10 http://10.16.92.7:8080/index.jsp
  ab是测试程序的名称
  参数n代表请求的总数量
  参数c代表并发的请求数
  url为要测试压力的页面
  注:使用这个命令时,一定要在系统路径中能够找到该程序,否则不能执行。
  压力测试完成后,我们从Managed Server的控制台上可以看到,nodeA,nodeB,nodeC都打印出了“OK”字样,这说明,在并发请求的情况下,集群能够将请求进行分发,以达到负载平衡的目的。
  测试应用的目录结构如下,部署与proxy应用的部署一样,要注意的是要将它部署在Managed Server上面。
  同一网段内不同机器部署集群
  在不同机器上部署集群与上面的操作有一些不同,就是在部署“Managed Server”时,要注意的是,参见下面的图解。
  在另外一台机器上配置“Managed Server”时,要指定“Admin Server”的名称,监听地址,监听端口。
  集群配置中要注意的问题
  Admin Server只用于集群的管理,而不能参与集群事务。
  Web应用应该部署到集群上,文件的同步是由WebLogic来完成的。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-342436-1-1.html 上篇帖子: WebLogic下的JNDI编程 下篇帖子: WebLogic 10 新版本发布[转]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表