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

[经验分享] linux下weblogic81集群配置实例

[复制链接]

尚未签到

发表于 2016-2-25 10:36:14 | 显示全部楼层 |阅读模式
  居然有导入的功能,太好了,导入n年前的帖子,经济危机期间决定开始好好学习天天向上。
  
Linux下Weblogic集群配置
域,集群,管理服务器和被管服务器之间的关系
       Weblogic域是一个服务器/集群的管理组,用户可以通过某个中央位置来管理、监控整个服务器域,这个中心就是管理服务器,相对的,受控服务器或者叫被管服务器是指域中除了管理服务器以外的所有的服务器。
       Weblogic集群是一个weblogic Server组,在一个集群中的服务器可以获得集群范围的命名服务、负载平衡以及容错等功能。
       所以,一个weblogic域可以同时管理多个集群以及多个服务器实例。
       另外,还有一个节点管理器的概念,节点管理器是指在物理的机器上运行的一个守护进程,通过它,管理服务器可以获得诸如在控制台中强制重启远程机器上的server等功能(没有节点管理器的情况下也是可以强制关闭远程服务器的,但是不能重启)。
       除此之外,据说节点管理器还可以自动检查自己机器上的server实例(健康检查),当发现某个实例出现故障的时候,可以自动进行重启,这个没试过。
注意事项
1.         本文的weblogic均配置在linux环境下
2.         集群中管理服务器和被管服务器之间有用到ip组播UDP,所以这些服务器之间必须是UDP可以到达的。
3.         好像动态ip的机器不能用于集群当中
4.         最佳实践说:请不要把管理服务器设置在集群当中
5.         本文所配置的集群只是实现了web层次上的负载平衡和容错,也就是servlet和jsp,其他的j2ee组件如ejb,jdbc,jms等都可以集群化。
本例测试域的规划
Ip/port
server
注释
10.21.18.40:7001
adminServer
管理服务器
10.21.18.40:7003
mServer1
被管服务器1
10.21.18.41:7001
mServer2
被管服务器2
10.21.18.40:7004
proxyServer
代理服务器
 
配置过程
建立管理服务器
启动linux下的配置向导
进入bea目录下的weblogic81/common/bin目录输入./config.sh,这里使用的终端登陆,所以没有图形环境,程序会以控制台模式启动
第一步:选择建立新的域:
启动配置向导后,系统提示如下:
<------- BEA WebLogic Configuration Wizard---------->

 

Create or Extend a Configuration:

---------------------------------

 

Choose between creating and extending a configuration. Based on your selection, the Configuration Wizard guides you through

the steps to generate a new or extend an existing configuration.

 

 ->1|Create a new WebLogic configuration

    |    Start here to create a WebLogic configuration in your projects directory.

   2|Extend an existing WebLogic configuration

    |    Start here to extend an existing WebLogic configuration.  Use this option to add applications and services,

    |including Database access (JDBC) and Messaging (JMS). This option also enables you to extend functionality by enabling

    |WebLogic Workshop.

 

Enter index number to select OR [Exit][Next]>  1

录入1回车,建立一个新的域。
第二步:选择模版
系统提示选择一个建立域的模版,资料上讲配置向导的配置过程可以另存为模版,以便下次配置的时候使用,没试过下次回去试试。

<-------- BEA WebLogic Configuration Wizard -------->

Select a Domain Template:

-------------------------

Please select a template from the list or select another directory of templates.

    * [/usr/local/bea/weblogic81/common/templates/domains]

 ->1|Basic WebLogic Server Domain 8.1.4.0

    |  BEA Systems, Inc.

    |  Create a basic WebLogic Server domain without installing sample applications.

   2|WebLogic Server Examples Domain 8.1.4.0

    |  BEA Systems, Inc.

    |  Create the WebLogic Server Examples domain in a directory outside of the installed kit.  The Examples domain contains     |a collection of examples to show best practices for coding individual J2EE APIs.

   3|Avitek Medical Records Sample Domain 8.1.4.0

    |  BEA Systems, Inc.

    |  Create the Avitek Medical Records domain in a directory outside of the installed kit.  The Avitek Medical Records is

    |a WebLogic Server sample application suite that concisely demonstrates all aspects of the J2EE platform.

   4|Select another directory location

Enter index number to select OR [Exit][Previous][Next]> 1

这里我们选择1,使用基础的模版
第三步:是否以快速模式进行
第三步系统提示是否以快速模式进行配置,这里选择2。
<--------- BEA WebLogic Configuration Wizard ----------->

Choose Configuration Option:

----------------------------

    *Do you want to run the wizard in express mode?

 ->1|Yes

   2|No

Enter index number to select OR [Exit][Previous][Next]> 2

第四步:配置管理服务器
现在系统提示我们配置管理服务器,把管理服务器的名字改一下,改成adminServer就可以了。
<------- BEA WebLogic Configuration Wizard -------->

Configure the Administration Server:

------------------------------------

Enter adminstration server configurations. Each WebLogic Server domain must have one Administration Server. The

Administration Server hosts the Administration Console which is used to perform administrative tasks.

    |       Name       |        Value        |

   _|__________________|_____________________|

   1|      *Name:      |      myserver       |

   2| Listen address:  | All Local Addresses |

   3|   Listen port:   |        7001         |

   4| SSL listen port: |         N/A         |

   5|   SSL enabled:   |        false        |

Select Option:

    1 - Modify "Name"

    2 - Modify "Listen address"

    3 - Modify "Listen port"

    4 - Modify "SSL enabled"

Enter option number to select OR [Exit][Previous][Next]> 1

输入1之后,根据系统提示输入新的管理服务器的名称adminServer
第五步:配置被管服务器
根据下面系统的提示,配置被管服务器

<--------- BEA WebLogic Configuration Wizard ---------->

Configure Managed Servers:

--------------------------

Add or delete configuration information for managed servers. A typical production environment has one or more managed

servers. Each managed server is an instance of WebLogic Server used to host enterprise applications.

    | Name* | Listen address | Listen port | SSL listen port | SSL enabled |

   _|_______|________________|_____________|_________________|_____________|

Enter name for a new Server OR [Exit][Previous][Next]> mServer1 
被管服务器我们设置两个:mServer1和mServer2,mServer1和管理服务器在一台机器上,所以端口设置为7003避免和管理服务器冲突。
mServer2的监听地址一定要设置成ip,否则在启动被管服务器2的时候会得到这样一个错误:using the same address as the admin server(这个错挺傻的我觉得),如果是实际的集群配置的话,这里建议都写成ip的形式。
配置完成的画面如下:
 |  Name*  |  Listen address   | Listen port | SSL listen port | SSL enabled |

_|_________|___________________|_____________|_________________|_____________|

1| mServer1| 10.21.18.41       |    7003     |       N/A       |    false    |

->2|mServer2|10.21.18.41       |   7001     |       N/A       |    false    |

 
第六步:配置集群
<----BEA WebLogic Configuration Wizard ------>

Configure Clusters:

-------------------

A cluster contains multiple WebLogic Server instances (servers) that run simultaneously and work together to provide

increased scalability and reliability.  A cluster appears to be a single WebLogic Server instance to clients.

    | Name* | Multicast address | Multicast port | Cluster address |

   _|_______|___________________|________________|_________________|

Enter name for a new Cluster OR [Exit][Previous][Next]> testCluster

输入集群的名字testCluster,其他的默认就行了,配置完成后如下:
    |    Name*    | Multicast address | Multicast port | Cluster address |

   _|_____________|___________________|________________|_________________|

 ->1| testCluster |     237.0.0.1     |      7001      |                 |
第七步:将服务器组织到集群中
根据系统的提示,将mServer1和mServer2放入集群testCluster中去,配置完成后如下:
    Cluster

    |_____testCluster [1]

         |_____mServer1

         |_____mServer2
第八步:配置机器、jdbcjms、安全等
接下来几步系统提示配置Machines,jdbc,jms,安全,这里都不用配置,全部回车就行了。
第九步:输入管理服务器的用户名和密码
系统提示如下画面,可以配置管理服务器的用户名和密码:
    |          Name           |              Value              |

   _|_________________________|_________________________________|

   1|       *User name:       |            weblogic             |

   2|     *User password:     |                                 |

   3| *Confirm user password: |                                 |

   4|      Description:       | The default administration user |
第十步:选择启动模式,jdk和存放目录
启动模式,jdk和域文件存放目录的设置比较简单,根据大家的爱好设置就行了。
这里启动模式选择生产开发模式,jdk使用jRockit,存放目录默认。
十一步:配置域名称
Edit Domain Information:

------------------------

    |  Name  |  Value   |

   _|________|__________|

   1| *Name: | mydomain |

Enter value for "Name" OR [Exit][Previous][Next]> testDomain

设置域的名称为testDomain。
十二步:域建立结束
以上步骤都完成后,系统会自动建立这个域,并会生成一些文件等等,完成的界面如下:
<----- BEA WebLogic Configuration Wizard --------->

Creating Domain...

0%          25%          50%          75%          100%

[------------|------------|------------|------------]

[***************************************************]

**** Domain Created Successfully! ****

启动管理服务器
进入bea/user_projects/domains/testDomain/目录

键入./startWebLogic.sh

建立被管服务器1
这里的被管服务器1也就是mServer1是和管理服务器在同一台机器上的,这里我试过了,我们不需要再进行什么配置,只需要启动它就行了,启动被管服务器1的命令如下:
进入bea/user_projects/domains/testDomain/目录
键入./startManagedWebLogic.sh mServer1 http://10.21.18.40:7001
这样的写法保证了被管服务器在启动的时候向管理服务器报告,后面的这个地址就是管理服务器的地址了
当然,由于是在同一台机器上,所以你完全可以这样写:./startManagedWebLogic.sh mServer1就可以了。
建立被管服务器2
被管服务器2和管理服务器在不同的机器上,所以你还需要在这台机器上配置一个域,域的名字要和刚才建立的域名字一致(不一致会怎么样我也没试过,谁有时间试一下:>)
建立域的过程前三步和上面讲的一样
第四步,配置管理服务器的时候,请把这个域的管理服务器的名字设置为mServer2。
这里需要解释一下,在每台机器上建立域的时候都需要有一个管理服务器,以确保整个域的管理服务器当掉的时候,每台机器自己都是还可以运行的,这里我们是把mServer2作为了41这台机器的管理服务器,同时它也是adminServer的被管理服务器。
从第五步开始,都不需要配置,直接回车就可以了。
配置完成后,用下面的命令启动mServer2:
./startManagedWebLogic.sh mServer2 http://10.21.18.40:7001
小结
到目前为止,一个包含一个管理服务器和2个被管服务器以及一个cluster的域就配置完成了,你可以简单试验一下它提供的功能,打开管理服务器的管理控制台:
http://10.21.18.40:7001/console
首先,在这个管理控制台上你可以监控和管理mServer1和mServer2,选择mServer2
进入Monitoring页面General子页面,如果显示如下,就说明配置是正确的了:

进入Monitoring页面的Performance子页面,就可以看到mServer2的运行情况了。

将一个web应用上传上去,将其部署在testCluster这个集群上

部署成功后,分别在mServer1和mServer2上访问刚才部署的web应用,应该都是可以访问的。
建立代理服务器
建立了集群以后,集群的负载平衡功能还需要代理(proxy)来实现。目前我所知道的Weblogic支持几种类型的代理:
Ø         HttpClusterServlet的代理,这个代理是weblogic公司编写的一个servlet,把它部署在一个weblogic服务实例上,就可以实现负载平衡和容错了。
Ø         IIS 代理,用IIS作为前段的http的代理,需要往IIS中装一个插件
Ø         Netscape/iPlanet代理,需要装插件
Ø         Apache代理,用Apache作为http代理,需要装插件。推荐使用
当然,实际应用中可能更加复杂,可能会这样:

使用HttpClusterServlet作为代理
建立代理服务器实例
代理服务器proxyServer实例实际上和mServer1一样,都是属于testDomain域的一个被管服务器,回头看建立管理服务器的第五步,在那个时候配置被管服务器的时候如果也把proxyServer加上的话,现在直接启动就可以了。
当然也可以在管理服务器的管理控制台上新建这个server。
在管理服务器的控制台上,左边的菜单中Server上单击左键,选择“新建一个Server”

然后,在出现的页面中设置这个server的名字为proxyServer,监听端口为7004,如图:



点击应用,这个服务就配置完成了。
配置结束后,在后台使用./startManagedWebLogic.sh proxyServer来启动代理服务器。
部署代理webapp
建立一个标准的web应用,这个应用里面什么也不用有,只需要配置web.xml和weblogic.xml就可以了。web.xml和weblogic.xml代码如下:
web.xml
<!-- DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.
//DTD Web Application 1.2//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd"
-->
<web-app>
<servlet>
  <servlet-name>HttpClusterServlet</servlet-name>
    <servlet-class>
      weblogic.servlet.internal.HttpClusterServlet
    </servlet-class>
  <init-param>
    <param-name>defaultServers</param-name>
    <param-value>
       10.21.18.40:7003|10.21.18.41:7001
    </param-value>
  </init-param>
  <init-param>
    <param-name>DebugConfigInfo</param-name>
    <param-value>ON</param-value>
  </init-param>
</servlet>
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>*.jsp</url-pattern>
</servlet-mapping>
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
  <servlet-name>HttpClusterServlet</servlet-name>
  <url-pattern>*.html</url-pattern>
</servlet-mapping>
</web-app>
 
weblogic.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPEweblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application6.1//EN""http://www.bea.com/servers/wls610/dtd/weblogic-web-jar.dtd">
<weblogic-web-app>
  <context-root>/</context-root>
</weblogic-web-app>
将这个应用打包成war文件,上传到管理服务器上,然后部署在proxyServer上面。



<span

运维网声明 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-182582-1-1.html 上篇帖子: weblogic在linux下的应用 下篇帖子: linux下weblogic的安装和部署
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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