#实践案例#苍穹私有云多集群部署:可实现容器服务分开、数据中心分开、公共组件共用原创
金蝶云社区-薛孟洋
薛孟洋
26人赞赏了该文章 1545次浏览 未经作者许可,禁止转载编辑于2023年05月29日 09:32:16

一、业务背景

(一)业务场景/现状

一家集团公司的多个子公司都在用苍穹平台系统,但是是分别采购的,在系统维护及更新版本上互相不一致,且需要由一人统一管理。

(二)客户痛点分析

1、多个项目在用同一套开发环境做开发,且项目的苍穹版本不一致,重新部署一套苍穹消耗资源及时间,后面的运维成本也加大。

2、自己项目重启服务及更新苍穹版本的时候不影响其他客户项目使用。

(三)客户诉求与期望

在尽量减少资源及人天投入的情况下解决上述问题,即:

(1)容器服务分开

(2)数据中心分开:单独配置数据中心

(3)公共组件(zk、redis、rabbitmq、elk、nginx):共用一套。

(4)登录地址尽可能少,维护界面尽可能唯一。


二、 解决方案

(一)整体思路

1、已经有一套标准的容器苍穹环境。

2、各个服务组件正常运行,系统正常使用。

3、部署多个苍穹集群,且由同一个mc统一管理

4、假定原有集群是old,新集群是new


(二)关键步骤


步骤1:nginx-appstatic配置

配置新集群new的appstore, 新的appstore需要单独存储,将现有的appstore复制一份

cd  /var/appstatic

cp -r appstore  appstorenew

cp -r static-files  static-filesnew

1.png

APPSTORE_URL= http://192.168.110.28:8090/appstorenew/cosmic/,这个链接可以打开就可以

2.png


步骤2:rabbitmq配置

rabbitmq新的集群新增vhost

rabbitmqctl add_vhost  new

rabbitmqctl set_permissions -p new  cosmic '.*' '.*' '.*

3.png


步骤3:MC配置

1、MC新增集群

集群新增的时候这几个地方写新的容器服务地址,

4.png

5.png

6.png

7.png

应用仓库配置

8.png

静态资源配置

9.png

2、租户新增

10.png

3、数据中心新增

11.png

4、集群配置修改,新旧两套集群都增加公共配置项

domain.tenantCode

tenant.code.type

12.png

13.png


步骤4:GPaaS平台配置

1、容器平台新增服务,新增web-new、mservice-new、mservice-qing-new、fileserver容器服务(fileserver可共用)

2、新增服务修改环境变量,appstore修改为第二步骤中新集群的地址,cluster为新集群的编码new,cuslibs内容可以去掉,新增JETTY_CONTEXT=new

14.png

15.png

16.png

3、新增外部访问映射端口修改为:web-new:31002

17.png


步骤5:nginx.conf配置

1、修改upstream.conf,增加新的容器端口转发

18.png

2、ierp.conf需要重新复制一份出来ierpnew.conf,修改端口,把需要修改的信息修改(高可用环境两台nginx都需要改)

19.png

20.png

端口修改为8088,location里面ierp改为new,proxy_pass修改为http://next-ierp-newupstream.conf里面对应),租户编码修改,静态资源路径修改为新集群的静态资源,msgwatch段ierp修改new

3、reload nginx生效

21.png 

步骤6:ELK配置

logstash配置文件修改:

kingdee/elk/logstash/logstash-6.7.0/conf/javalog.conf,增加集群new的配置信息,重启服务

22.png


步骤7:登录验证

1、登录验证

23.png

24.png

2、es日志验证

25.png


三 、可推广价值

1、方案适用于所有的苍穹私有云

2、满足客户代码包和服务互不影响的需求,并且节约了服务器资源,实现了配置统一管控




四 、注意事项

1、补丁升级的时候补丁文件上传位置不变:/var/appstatic/patchwarehouse/ierpV1.x-latest,只是应用仓库分开了

2、新增的容器如果跨命名空间,则mc中服务地址需要写上命名空间,例如:new.mservice-new:8080/new


赞 26