栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

WSO2 ESB 5.0.0 集群配置

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

WSO2 ESB 5.0.0 集群配置

WSO2 ESB 5.0.0 集群配置

一、Worker / Manager 分离的集群部署模式二、配置负载均衡器

1、Nginx 安装

Nginx 注意事项 2、Nginx 配置3、创建 ssl 证书 三、本地 SVN 服务器配置四、配置管理节点

1、下载 WSO2 ESB2、设置集群配置3、配置 HostName4、配置基于 SVN 的部署同步5、配置端口偏移6、将主机名映射到 IP7、仅允许通过负载均衡器访问管理控制台 五、配置工作节点

1、设置集群配置2、配置 carbon.xml3、配置基于 SVN 的部署同步4、指定端口偏移6、创建第二个工作节点 六、测试集群

1、启动管理节点2、启动工作节点3、测试

一、Worker / Manager 分离的集群部署模式

在此模式中,有三个 WSO2 ESB 节点:1 个节点充当管理节点,2 个节点充当工作节点,以实现高可用性和服务请求。 在此模式中,我们允许通过外部负载均衡器访问管理控制台。 此外,服务请求通过此负载均衡器定向到工作节点。 下图描述了此集群部署场景将遵循的示例模式。

以此模式配置WSO2集群配置时,请在配置文件 axis2.xml 中使用特定 IP 地址而不是 localhost 或主机名。

在这里,我们使用三个节点作为知名成员,一个是管理节点,另外两个是工作节点。 始终建议使用至少两个知名成员,以防止在某个知名成员关闭时重新启动集群中的所有节点。

二、配置负载均衡器

负载均衡器自动在多个 WSO2 产品实例之间分配传入流量。它能够在集群中实现更高级别的容错,并提供分配流量所需的负载平衡。

本实例用了 3 台虚拟机,这里 Nginx 和管理节点放在同一台虚拟机。

1、Nginx 安装

关闭虚拟机防火墙
CentOS 7.0 默认使用的是 firewall 作为防火墙
查看防火墙状态

firewall-cmd --state

停止firewall

systemctl stop firewalld.service

禁止firewall开机启动

systemctl disable firewalld.service 

Nginx 安装教程见:CentOS7安装Nginx

Nginx 注意事项

本博客的配置步骤是在假设该 ESB 集群的负载均衡器使用公开默认的 8000 和 8043 端口的情况下编写的。

如果使用域名,可以利用 80 和 443 端口做代理。

请注意以下几点:

如上面的部署模式所示,负载均衡器端口是 HTTP 8000 和 HTTPS 8043。使用 http://192.168.1.128:8000/service 通过 HTTP 8000 端口将 HTTP 请求定向到工作节点。使用 https://192.168.1.128:8043/service 通过 HTTPS 8043 端口将 HTTPS 请求定向到工作节点。通过 HTTPS 8443 端口以 https://192.168.1.128:8443/carbon 身份访问管理控制台在 WSO2 ESB 集群中,工作节点在 PassThrough 传输端口(8280 和 8243)上处理服务请求,并且可以使用 HTTPS 8443 端口访问管理控制台。 2、Nginx 配置

拦截管理节点 8000 端口请求并转发到 129/130 两台机器的 8280 端口的 WSO2 ESB

esb.http.conf

upstream worker_node {
	server 192.168.1.129:8280;
	server 192.168.1.130:8280;
}
 
server {
	listen 8000;
	server_name localhost;
	location / {
		proxy_set_header X-Forwarded-Host $host;
		proxy_set_header X-Forwarded-Server $host;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header Host $http_host;
		proxy_read_timeout 5m;
		proxy_send_timeout 5m;
		proxy_pass http://worker_node;
	}
}

拦截管理节点 8043 端口请求并转发到 129/130 两台机器的 8243 端口的 WSO2 ESB
esb.https.conf

upstream ssl_worker_node {
    server 192.168.1.129:8243;
    server 192.168.1.130:8243;
  
}
 
server {
listen 8043;
    server_name localhost;
    ssl on;
    ssl_certificate /usr/local/nginx/ssl/wrk.crt;
    ssl_certificate_key /usr/local/nginx/ssl/wrk.key;
    location / {
		proxy_set_header X-Forwarded-Host $host;
		proxy_set_header X-Forwarded-Server $host;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header Host $http_host;
		proxy_read_timeout 5m;
		proxy_send_timeout 5m;
        proxy_pass https://ssl_worker_node;
    }
}

拦截管理节点 8443 端口请求并转发到管理节点,通过 9443 端口访问管理控制台
mgt.esb.https.conf

server {
    listen 8443;
    server_name localhost;
    ssl on;
    ssl_certificate /usr/local/nginx/ssl/wrk.crt;
    ssl_certificate_key /usr/local/nginx/ssl/wrk.key;
 
    location / {
		proxy_set_header X-Forwarded-Host $host;
		proxy_set_header X-Forwarded-Server $host;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header Host $http_host;
		proxy_read_timeout 5m;
		proxy_send_timeout 5m;
		proxy_pass https://192.168.1.128:9443/;
	}
	error_log  /usr/local/nginx/logs/mgt-error.log ;
	access_log  /usr/local/nginx/logs/mgt-access.log;
}
3、创建 ssl 证书
cd /usr/local/nginx
mkdir ssl
cd ssl
openssl genrsa -des3 -out wrk.key 1024
openssl req -new -key wrk.key -out wrk.csr
cp wrk.key wrk.key.org
openssl rsa -in wrk.key.org -out wrk.key
openssl x509 -req -days 365 -in wrk.csr -signkey wrk.key -out wrk.crt
三、本地 SVN 服务器配置

Linux 配置 SVN 服务器

四、配置管理节点 1、下载 WSO2 ESB

下载并解压缩 WSO2 ESB 二进制发行版。将提取的目录为

2、设置集群配置

编辑/repository/conf/axis2/axis2.xml文件如下。

为此节点启用集群:


将成员资格方案设置 wka 为启用众所周知的地址注册方法(该节点向我们稍后定义的 WKA 成员发送集群启动消息)。

wka

指定此节点将加入的集群的名称。

wso2.esb.domain

指定用于传送集群消息的主机的 IP 地址(不是 localhost 或主机名)。

192.168.1.128

指定用于传送集群消息的端口。此端口号不受/repository/conf/carbon.xml中指定的端口偏移值的影响。如果此端口号已分配给另一台服务器,则集群框架会自动增加此端口号。但是,如果两台服务器在同一台机器上运行,必须确保为每台服务器设置一个唯一的端口。

4100

指定知名成员。
在以下示例中,知名成员是工作程序节点。这里的hostName值是主机的 IP 地址。WKA 工作节点的port值必须与其相同 localMemberPort (在本例中为 4200)。虽然此示例仅表示一个知名成员,但建议在此至少添加两个知名成员。这样做是为了确保集群具有高可用性。


	
		192.168.1.128
		4100 
	
    
		192.168.1.129
		4101 
	
	
		192.168.1.130
		4102 
	

更改以下集群属性。


    
    

3、配置 HostName

编辑 /repository/conf/carbon.xml

192.168.1.128
192.168.1.128
4、配置基于 SVN 的部署同步

启用基于 SVN 的部署同步,并将 AutoCommit 属性标记为 true。 为此,请编辑 /repository/conf/carbon.xml文件,如下所示。


	true
	true
	true
	svn
	svn://192.168.1.130/wso2
	wso2
	123456
	true

WSO2 配置 SVN: Configuring+SVN-based+Deployment+Synchronizer

5、配置端口偏移

/repository/conf/carbon.xml文件中,可以指定端口偏移值。仅适用于在同一服务器上托管多个 WSO2 产品的情况。


    ...
    0
    ...

6、将主机名映射到 IP

如果需要,可以将以下主机条目添加到 DNS 或集群所有节点中的 “/etc/hosts” 文件(在 Linux 中)。 可以映射数据库服务器的 IP 地址。 本例中使用 MySQL 作为数据库服务器,所以 是数据库服务器的实际 IP 地址。

   carbondb.mysql-wso2.com
7、仅允许通过负载均衡器访问管理控制台

如果需要,可以通过编辑 /repository/conf/tomcat/catalina-server.xml文件,配置 HTTP/HTTPS 代理端口以通过负载均衡器进行通信,如下所示。



五、配置工作节点 1、设置集群配置

编辑 /repository/conf/axis2/axis2.xml文件如下。

为此节点启用集群。


将成员资格方案设置 wka 为启用众所周知的地址注册方法(此节点将向我们稍后定义的 WKA 成员发送集群启动消息)。

wka

指定此节点将加入的集群的名称。

wso2.esb.domain

指定用于传送集群消息的主机的 IP 地址(不是 localhost 或主机名)。

192.168.1.129

指定用于传送集群消息的端口。如果此节点与管理节点或其他工作节点位于同一台服务器上,请将其设置为唯一值,例如工作节点 1 和 2 为 4000 和 4001。此端口号不受 中端口偏移量的影响 carbon.xml。如果这个端口号已经分配给另一个服务器,集群框架会自动增加这个端口号。

4101

通过在元素 内添加以下属性,将子域定义为工作者 :


hostName通过提供和 localMemberPort 值来指定知名成员。这里的hostName值是主机的 IP 地址。
在以下示例中,知名成员是管理器节点。定义管理器节点很有用,因为 部署同步器需要它 以有效的方式运行。部署同步器使用此配置来识别管理器并跨集群的节点同步部署工件。


	
		192.168.1.128
		4100 
	
    
		192.168.1.129
		4101 
	
	
		192.168.1.130
		4102 
	

2、配置 carbon.xml

配置/repository/conf/carbon.xml文件以使集群配置与产品相匹配。

配置 HostName。编辑/repository/conf/carbon.xml文件。

192.168.1.129
192.168.1.128
3、配置基于 SVN 的部署同步

启用基于 SVN 的部署同步,并将 AutoCommit 属性标记为 false。 为此,请编辑 /repository/conf/carbon.xml文件,如下所示。


    true
    false
    true
    svn
    svn://192.168.1.130/wso2
    wso2
    123456
    true

4、指定端口偏移

/repository/conf/carbon.xml文件中,可以指定端口偏移值。仅适用于在同一服务器上托管多个 WSO2 产品的情况。


    ...
    0
    ...

6、创建第二个工作节点

通过刚刚配置为工作程序节点的 WSO2 产品的副本来创建第二个工作程序节点,并在 /repository/conf/axis2/axis2.xml文件中更改以下内容。

192.168.1.130
4102

配置 HostName。编辑/repository/conf/carbon.xml文件。

192.168.1.130
192.168.1.128
六、测试集群 1、启动管理节点
./wso2server.sh -Dsetup
2、启动工作节点
./wso2server.sh -DworkerNode= true
3、测试

启动所有节点,工作节点启动后,管理节点的日志可以看到成员加入的日志消息。

进入管理控制台:https://192.168.1.128:8443
放一个碳应用上去


postman 测试,请求 8000 端口,nginx 进行负载均衡


SVN 文件

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/740266.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号