如何运用EJB实现分布式部署

如何运用EJB实现分布式部署,第1张

通常而言,软件项目在系统架构的时候,就决定了该软件各模块将来的部署方式:是集中部署还是分布式部署。基于J2EE平台开发的软件通常采用EJB来实现分布式计算的功能,然而在现实软件项目中,大多数采用EJB技术的软件系统是部署在同一台服务器上,EJB技术只是为了应对将来业务规模的扩大而采取的一种设计方案。这样造成了系统资源的浪费,因为EJB要消耗大量的系统资源,导致系统性能的降低。而不采用EJB技术,难以实现分布式计算,影响软件系统的可扩展性。

JCDF通过独特的设计方案实现了分布式部署和集中部署的自由转换,企业可以根据自己的业务规模随时随地改变软件的部署方式,使软件系统在性能和可扩展性方面得到了最大的提升。而实现这一自由转换的功能,只需要修改配置文件的部署类型参数。JCDF通过独特的设计方案实现了分布式部署和集中部署的自由转换,企业可以根据自己的业务规模随时随地改变软件的部署方式,从而从根本上解决了这一矛盾,使软件系统在性能和可扩展性方面得到了最大的提升。而实现这一自由转换的功能,只需要修改配置文件的部署类型参数。

jumpserver堡垒机官方地址:

https://docs.jumpserver.org/zh/docs/index.html

本次使用centos7的系统,属于测试阶段,由于服务器数量不足,部署方案为,一台服务器部署jumpserver服务和koko组件,另一台单独部署koko组件,与jumpserver服务器连通。

koko属于一个ssh连接代理组件。

本次部署是使用docker和docker-compose部署。

服务器初始化脚本:

docker环境安装好之后开始部署jumpserver服务。我们部署在/data目录下。

参考docker-compose部署的文档。

https://github.com/wojiushixiaobai/docker-compose

拉取Git仓库。

在这个Git仓库中包含了jumpserver服务器的所有组件,.env是环境变量。理论上如果不需要部署分布式的话,直接启动服务就完成了安装,启动命令为 docker-compose up -d 。如下

通过服务器的80端口即可访问,管理员的用户名密码都为admin。

ssh 登录的话,默认koko的端口是2222,所以

输入密码即可。

分布式部署koko的话,docker-compose 文件需要做一些改动。

需要暴露并映射出core服务的8080端口,在core服务中添加以下两行

参考:

docker-compose.yml文件修改好之后我们可以启动服务。

可以看到服务已经启动,jms_core的端口为8080 ,koko端口为2222,koko端口可以自定义修改,ssh登录的时候使用自定义修改的端口即可。

此时在另外一台服务器部署koko组件。

官网文档中使用的是docker部署,我修改为通过docker-compose部署。

服务器初始化文件可以参考以上脚本,按照需要修改,实际需要docker和docker-compose环境即可。

docker-compose.yml文件如下,请按照实际情况和需要来修改

在这个文件中我将koko的端口映射为2223-->2222,即ssh 登录的时候 ssh -p 2223 admin@IP 即可,环境变量CORE_HOST处修改为你jumpserver服务器部署处的主机IP的8080端口,之前我特意添加并映射过8080端口,环境变量 BOOTSTRAP_TOKEN处修改为你自己的token,此处token在你部署jumpserver处的Git仓库的 .env 文件中,请按照需要自行修改。

当文件修改完之后就可以启动了。

docker-compose ps 查看服务运行状态。

如果服务正常启动我们可以通过ssh连接测试是否部署成功。

1,连接jumpserver服务器所在的koko,端口是2222

2, 连接另一台服务器的koko,端口是2223

输入密码后如果出现以下界面即部署成功。

web端登录需要访问jumpserver服务器的80端口,用户名密码都是admin。

提示:服务器的相关端口要打开,如80,8080,2222,2223.


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/121543.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-14
下一篇2023-03-14

发表评论

登录后才能评论

评论列表(0条)

    保存