1 总体部署图
2 常用linux命令
1. 使用xshell等工具远程连接到linux服务器,通过xftp可以上传下载文件,在linux中没有像windows一样分为C盘、D盘等不同的盘符,所有目录都通过/开头来访问,如下图所示
2. 常用的命令
3. yum命令可以用来安装系统中不存在的命令,比如vim命令不存在时,可以通过yum install vim来安装。注意在安装的过程中系统可能会跳出一些询问,输入y回车就可以继续安装了
4. vim命令可以对文本文件进行修改,例如vim /etc/my.cnf可以打开mysql的配置文件,刚打开文本时为浏览模式,不能添加、删除、修改任何内容。文本内容过多时,快捷键shift+g可以直接定位到文本的最后一行;内容过多也可以通过”/搜索内容”来快速查找,有多个匹配结果时n可以查看下一个。按insert进入输入模式,完成编辑以后按esc按钮退出编辑模式,输入:q!放弃保存,输入:wq则保存修改。
5. 防火墙配置
3 运行环境和中间件安装
3.1 安装JDK 1.8
使用xshell工具连接linux服务器,在命令行中输入java -version,检查JDK是否安装以及版本是否为1.8
如果JDK未安装或者版本不正确,则重新安装JDK。
1. 将jdk的安装包拷贝到linux服务器(通过xftp上传上去,在/tmp目录下创建一个hotent目录,用于存放上传的文件)
2. 将该文件拷贝到/usr/local/java目录下,并解压
3. 查看解压出来的目录名
4. 配置jdk到环境变量,通过vim命令编辑/etc/profile,进入编辑模式后,shift+g定位到文件的最后一行,点击insert命令进入编辑模式,编辑完以后按ecs按钮,输入:wq+回车则保存文件,输入:q!则放弃保存。JACA_HOME为jdk路径
5. 完成配置后输入source /etc/profile刷新环境变量
6. 现在输入java -version确认jdk环境变量是否配置正确,版本是否一致
3.2 安装MySQL
1. 将mysql的安装包上传到/tmp/hotent目录下,然后解压至/usr/local/目录,通过命令tar -zxvf mysql-5.7.28-el7-x86_64.tar.gz可以完成解压操作
2. 进入/usr/local目录,为mysql安装目录创建软链接
3. 为linux系统添加mysql用户组和mysql用户(-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限)
4. 进入mysql安装目录,并设置目录的拥有者为新建的mysql用户
5. 安装mysql
如果执行这一步时提示找不到路径,则表示少了一个包,可以使用以下命令:apt-get install libaio1
6. 注意观察控制台的输入内容,如果看到类似如下内容,标识安装成功,将随机生成的初始密码保存起来
7. 启动mysql服务
8. 如果出现如下错误,则说明mysql配置文件/etc/my.cnf中的路径不对,修改内容如下,datadir和socket都修改成mysql的安装目录下,增加[client]板块,用于命令行连接mysql数据库
9. 重新开启mysql服务,如下图所示则开启成功
10. 将mysql进程放入系统进程中,并重新启动mysql服务
11. 配置mysql的环境变量,并重新编译环境变量
12. 使用mysql命令,账号root,密码是刚才生成的随机密码来登录mysql(在Enter password后面输入内容时,不会显示输入的内容、而且光标不会移动,不用担心,密码其实已经输入了,只是为了保密不做显示而已,输完回车就可以了)
13. 成功登录后显示界面如下,初次登录会要求你修改root的密码,使用如下命令来修改密码
14. 设置允许远程连接数据库
15. 输入quit;退出mysql命令行模式,通过telnet命令测试mysql端口是否开通
16. 在用于部署的个人电脑上通过Navicat连接这个数据库,并完成数据库的初始化操作
3.3 安装Redis
1. Redis的安装需要在linux上编译,所以要先检测是否有gcc编译环境,如果没有编译环境,协调客户方安装gcc编译环境
2. Gcc安装说明: https://www.cnblogs.com/dail1990/p/10142728.html
3. 上传redis安装包到/tmp/hotent目录,并解压到/usr/local/目录
5. 编译安装成功后,在src目录下执行./redis-server启动redis服务
6. 复制redis的配置文件
7. 修改redis为后台启动
8. 将启动文件复制到init.d中,并通过vim /etc/init.d/redisd命令修改启动文件的内容,修改完:wq保存
9. 添加脚本的执行权限,并设置为系统服务
10. 通过服务命令测试redis的启动、停止、查看状态
11. 通过telnet命令查看6379端口上的redis服务是否正常
3.4 安装ActiveMQ
1. activemq的安装包上传到/tmp/hotent目录,并解压缩到/usr/local/activemq目录
2. 进入解压后的目录/usr/local/apache-activemq-5.15.8/bin/linux-x86-64,执行启动服务的命令
3. 通过telnet命令测试61616和61614端口是否正常
3.5 部署E urekaServer
1. 上传eurekaServer包至目录
2. 使用命令启动eurekaServer
3. 通过telnet命令查看8761的eureakServer 服务是否正常
4 应用部署
4.1 Java应用
1. 使用数据库可视化工具(如navicat)新建数据库,选择字符集(utf-8)和排序规则,数据库名称自定义,,为更好辨认对应微服务的数据库可创建如下图所示:
2. 执行数据库脚本,找到我们提供的sql文件,对应bpm/form/portal/uc数据库分别执行,执行步骤请参考《初始化sql执行说明》
3. 将要部署的5个服务包及对应的配置文件和启动脚本上传至服务器。修改配置文件中数据库参数(连接各自对应的数据库,bpm-runtime及bpm-model服务连接同一个bpm数据库)、eureka 参数、redis参数、jms参数、mqtt参数以及base.domain地址(指向部署服务器的ip).
如果需要对数据库密码加密,可以取消对public-key的注释,并在宏天公开平台生成加密后的密钥和public-key
密码和公钥获取方式:进入宏天公开开放的平台,进入以下菜单
设计中心/元件管理/数据源/添加
4. 配置执行权限给5个启动脚本,并通过命令启动应用服务,应用的日志输出到各自的日志文件,可以通过tail -f命令来查看
( 以uc服务为例 )
出现授权错误(见下图)请将目录下的hotent.mac文件发给宏天人员用于生成授权文件
将授权文件hotent.lic上传至jar包目录下,重新启动。
4.2 Web应用
安装Nginx,通过Nginx部署web应用。
4.2.1 N ginx的安装和配置
1. 通过yum install -y nginx安装,如果没有可用的nginx包,如下图所示,可以通过添加源以后,再执行安装命令。
然后重新执行yum install -y nginx
2. 通过命令启动nginx服务,并且查看服务的状态找到服务对应的配置文件
3. 如上图所示,配置文件在/etc/nginx/nginx.conf,通过vim命令修改这个文件,按照如下内容修改,修改完以后,:wq保存,在/etc/nginx/目录下放入html文件夹,文件夹中放入前端编译后的文件,执行nginx -s reload重新载入配置文件
配置error _page解决访问报404错误
4. 可以通过systemctl enable nginx.service将服务设置为开机自动运行。
4.2.2 部署web端
对于nginx部署的方式,我们将web资源部署到nginx配置的html目录
修改mvue/sso.js和mobilevue/sso.js以及fvue/sso.js这三个js文件,将这些地址修改为eip.jar服务所发布的IP和端口。
另外,对于mvue目录下的sso.js文件,需要注意:front,mobile,manage分别为fvue,mobilevue,mvue部署的地址。
以上,完成了整个EIP7在linux环境下的部署,现在通过浏览器访问 h ttp://ip:port/mvue来访问系统吧。