前置条件
目录要求
请提前申请集群版的license文件并将申请的license文件放到/wxqyh/目录下,文件名字为verifyinfo,如果license文件有问题部署后tomcat会启动失败
/wxqyh/目录结构如下图
安装环境
1.添加服务器信息
#参照格式添加服务器账号密码配置vim /wxqyh/soft/init_keys.py

##### 2.执行初始化脚本sh /wxqyh/soft/init.sh
部署
1. 修改/wxqyh/qwy-ansible-autodeploy目录下的配置文件qw_deploy_conf.yml
根据提示填写具体的部署主机、部署组件配置参数,需要改的地方主要有主机、端口还有密码配置等,注意同一台机器的端口不要相同
定义好服务器列表后,后面的host参数代表需要安装的主机
# 企微产品标准版 - 自动部署配置# 云办公版本qw_app_version: 3.1.0# 部署环境名称env-name: sample-poc# 部署物料路径(绝对路径)wxqyh-resource-path: /wxqyh#license配置,ip使用服务端的内网ip,服务端会监听8080端口,请注意端口冲突license_ip: 127.0.0.1license_port: 30000# 部署环境 host ip 列表host-info:- hostname: wxqyh01ip: 192.168.72.100- hostname: wxqyh02ip: 192.168.72.101- hostname: wxqyh03ip: 192.168.72.102# jdk 配置,安装tomcat,activemq,es的机器都要配置jdk:hosts:- host: wxqyh01- host: wxqyh02- host: wxqyh03# activemq 配置activemq:host: wxqyh01port: 61616# activemq admin 账户账号密码admin-username: adminadmin-password: admin123# activemq user 账户账号密码user-username: do1user-password: do123# redis 配置redis:host: wxqyh01port: 6379# redis的密码password: 1111a# elasticsearch 配置elasticsearch:hosts:- host: wxqyh01- host: wxqyh02- host: wxqyh03port: 9200# 部署es的数量 单机填1 集群填3es_cluster_num: 3# 最大内存Xmx: 2g# 最小内存Xms: 2g# mysql 配置mysql:host: wxqyh01# 数据库端口mysql_port: 3306# 数据库库名database_name: wxqyh# 数据库用户名username: root# 数据库密码password: do1admin# 微服务注册中心discovery 配置discovery:hosts:- host: wxqyh02port: 8761- host: wxqyh03port: 8761# 是否集群部署 集群填1 单机填0cluster: 1# 注册中心地址配置eureka_url: http://192.168.72.101:8761/eureka,http://192.168.72.102:8761/eureka# memcached 配置memcached:host: wxqyh01port: 11211#docker配置docker:hosts:- host: wxqyh02- host: wxqyh03#tomcat部署配置tomcat:tomcat-mgr:hosts:- host: wxqyh01http_port: 8060ajp_port: 8061shutdown_port: 8062tomcat-portal:hosts:- host: wxqyh01 #第一个实例http_port: 8070ajp_port: 8075shutdown_port: 8076- host: wxqyh01 #第二个实例,如果单机部署可以去掉以下四行http_port: 8071ajp_port: 8077shutdown_port: 8078tomcat-schedule:hosts:- host: wxqyh01http_port: 8200ajp_port: 8201shutdown_port: 8202tomcat-open:hosts:- host: wxqyh01http_port: 8210ajp_port: 8211shutdown_port: 8212tomcat-fileweb:hosts:- host: wxqyh01http_port: 8300ajp_port: 8301shutdown_port: 8302#上传文件的目录路径,用来存放文件服务上传的文件upload_img_root_path: /mnt/img#合法的请求来源,配置项目域名和ip,多个用逗号隔开trust_site: www.example.com#合法的请求ip,填写服务器ip,多个用逗号隔开white_ips: 192.168.1.165#微服务部署配置micro:addressbook:hosts:#第一个实例- host: wxqyh02#服务端口server_port: 8090#容器名container_name: addressbook#第二个实例,如果单机部署可以去掉以下三行- host: wxqyh03#服务端口server_port: 8090#容器名container_name: addressbookapi:hosts:#第一个实例- host: wxqyh02#服务端口server_port: 8091#容器名container_name: api#第二个实例,如果单机部署可以去掉以下三行- host: wxqyh03#服务端口server_port: 8091#容器名container_name: apiappcenter:hosts:- host: wxqyh03#服务端口server_port: 8092#容器名container_name: appcentercheckwork:hosts:- host: wxqyh02#服务端口server_port: 8070#容器名container_name: checkworkmeet:hosts:- host: wxqyh02#服务端口server_port: 8072#容器名container_name: meetcrm:hosts:- host: wxqyh03#服务端口server_port: 8073#容器名container_name: crmfield:hosts:- host: wxqyh02#服务端口server_port: 8074#容器名container_name: fieldform:hosts:- host: wxqyh02#服务端口server_port: 8075#容器名container_name: formhr:hosts:- host: wxqyh02#服务端口server_port: 8096#容器名container_name: hrlearnonline:hosts:- host: wxqyh03#服务端口server_port: 8097#容器名container_name: learnonlineqwyapi:hosts:- host: wxqyh02#服务端口server_port: 8098#容器名container_name: qwy-apireimbursement:hosts:- host: wxqyh03#服务端口server_port: 8099#容器名container_name: reimbursementmicro_portal:hosts:- host: wxqyh02#服务端口server_port: 8100#容器名container_name: portalsys:hosts:- host: wxqyh03#服务端口server_port: 8101#容器名container_name: sys#web服务器配置nginx:hosts:- host: wxqyh02- host: wxqyh03
构建 ansible 项目
#注意每次修改配置文件qw_deploy_conf.yml后需要重新执行此步骤再部署cd /wxqyh/qwy-ansible-autodeploy//usr/local/python3/bin/python3 /wxqyh/qwy-ansible-autodeploy/setup.py build
3. 启动部署
cd /wxqyh/qwy-ansible-autodeploy//usr/local/python3/bin/python3 /wxqyh/qwy-ansible-autodeploy/setup.py deploy
部署完成后创建es索引,配置nginx转发配置以及静态资源。
创建es索引链接:https://www.tapd.cn/61525196/markdown_wikis/show/#1161525196001011975
修改nginx转发配置:修改对应的tomcat的ip和端口
配置nginx静态资源链接:https://www.tapd.cn/61525196/markdown_wikis/show/#1161525196001012133
应用对接请看https://www.tapd.cn/61525196/markdown_wikis/show/#1161525196001011941
注意事项
1.操作系统:验证系统是centos7.5,由于是离线安装,系统版本过高可能导致rpm包依赖有问题需要手动解决
2.一键部署脚本默认安装全部中间件和应用,二次安装会删除已部署的中间件和应用,如果使用第三方数据库或者redis,或者二次安装不想删除原部署的应用,请执行如下命令跳过无需安装的中间件和应用
vim /wxqyh/qwy-ansible-autodeploy/qw-ansible/site.yml
示例如图
3.nginx应用只涉及部署,转发及静态缓存请自行配置
4.es安装不支持X-pack插件,如需秘钥验证需要自行安装
