# Linux环境多服务部署手册
- 快速访问
总体部署图、常用linux命令、运行环境和中间件安装、应用部署
# 总体部署图
# 常用linux命令
使用xshell等工具远程连接到linux服务器,通过xftp可以上传下载文件,在linux中没有像windows一样分为C盘、D盘等不同的盘符,所有目录都通过/开头来访问,如下图所示
常用的命令
yum命令可以用来安装系统中不存在的命令,比如vim命令不存在时,可以通过yum install vim来安装。注意在安装的过程中系统可能会跳出一些询问,输入y回车就可以继续安装了
\1. vim命令可以对文本文件进行修改,例如vim /etc/my.cnf可以打开mysql的配置文件,刚打开文本时为浏览模式,不能添加、删除、修改任何内容。文本内容过多时,快捷键shift+g可以直接定位到文本的最后一行;内容过多也可以通过”/搜索内容”来快速查找,有多个匹配结果时n可以查看下一个。按insert进入输入模式,完成编辑以后按esc按钮退出编辑模式,输入:q!放弃保存,输入:wq则保存修改。
防火墙配置
# 运行环境和中间件安装
- 快速访问
安装jdk1.8、安装msql、安装redis、安装AtiveMQ、部署EurekaServer
# 安装jdk
使用xshell工具连接linux服务器,在命令行中输入java -version,检查JDK是否安装以及版本是否为1.8
注:如果JDK未安装或者版本不正确,则重新安装JDK。
将jdk的安装包拷贝到linux服务器(通过xftp上传上去,在/tmp目录下创建一个hotent目录,用于存放上传的文件)
将该文件拷贝到/usr/local/java目录下,并解压
查看解压出来的目录名
配置jdk到环境变量,通过vim命令编辑/etc/profile,进入编辑模式后,shift+g定位到文件的最后一行,点击insert命令进入编辑模式,编辑完以后按ecs按钮,输入:wq+回车则保存文件,输入:q!则放弃保存。JACA_HOME为jdk路径
完成配置后输入source /etc/profile刷新环境变量
现在输入java -version确认jdk环境变量是否配置正确,版本是否一致
# 安装MySQL
将mysql的安装包上传到/tmp/hotent目录下,然后解压至/usr/local/目录,通过命令tar -zxvf mysql-5.7.28-el7-x86_64.tar.gz可以完成解压操作
进入/usr/local目录,为mysql安装目录创建软链接
- 为linux系统添加mysql用户组和mysql用户(-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限)
进入mysql安装目录,并设置目录的拥有者为新建的mysql用户
安装mysql
如果执行这一步时提示找不到路径,则表示少了一个包,可以使用以下命令:
apt-get install libaio1
注意观察控制台的输入内容,如果看到类似如下内容,标识安装成功,将随机生成的初始密码保存起来
启动mysql服务
如果出现如下错误,则说明mysql配置文件/etc/my.cnf中的路径不对,修改内容如下,datadir和socket都修改成mysql的安装目录下,增加[client]板块,用于命令行连接mysql数据库
- 重新开启mysql服务,如下图所示则开启成功
- 将mysql进程放入系统进程中,并重新启动mysql服务



- 配置mysql的环境变量,并重新编译环境变量



- 使用mysql命令,账号root,密码是刚才生成的随机密码来登录mysql(在Enter password后面输入内容时,不会显示输入的内容、而且光标不会移动,不用担心,密码其实已经输入了,只是为了保密不做显示而已,输完回车就可以了)

- 成功登录后显示界面如下,初次登录会要求你修改root的密码,使用如下命令来修改密码


设置允许远程连接数据库
输入quit;退出mysql命令行模式,通过telnet命令测试mysql端口是否开通

在用于部署的个人电脑上通过Navicat连接这个数据库,并完成数据库的初始化操作
# 安装Redis
Redis的安装需要在linux上编译,所以要先检测是否有gcc编译环境,如果没有编译环境,协调客户方安装gcc编译环境
上传redis安装包到/tmp/hotent目录,并解压到/usr/local/目录
进入/usr/local/redis-5.0.4目录并执行make命令
编译安装成功后,在src目录下执行./redis-server启动redis服务
. 复制redis的配置文件
修改redis为后台启动
- 将启动文件复制到init.d中,并通过vim /etc/init.d/redisd命令修改启动文件的内容,修改完:wq保存
添加脚本的执行权限,并设置为系统服务
通过服务命令测试redis的启动、停止、查看状态
通过telnet命令查看6379端口上的redis服务是否正常
# 安装ActiveMQ
activemq的安装包上传到/tmp/hotent目录,并解压缩到/usr/local/activemq目录
进入解压后的目录/usr/local/apache-activemq-5.15.8/bin/linux-x86-64,执行启动服务的命令
- 通过telnet命令测试61616和61614端口是否正常
# 部署EurekaServer
- 上传eurekaServer包至目录

- 使用命令启动eurekaServer

通过telnet命令查看8761的eureakServer 服务是否正常
# 应用部署
# Java应用
- 使用数据库可视化工具(如navicat)新建数据库,选择字符集(utf-8)和排序规则,数据库名称自定义,为更好辨认对应微服务的数据库可创建如下图所示:
执行数据库脚本,找到我们提供的sql文件,对应bpm/form/portal/uc数据库分别执行,执行步骤请参考《初始化sql执行说明》
将要部署的5个服务包及对应的配置文件和启动脚本上传至服务器。修改配置文件中数据库参数(连接各自对应的数据库,bpm-runtime及bpm-model服务连接同一个bpm数据库)、eureka 参数、redis参数、jms参数、mqtt参数以及base.domain地址(指向部署服务器的ip)
4.配置执行权限给5个启动脚本,并通过命令启动应用服务,应用的日志输出到各自的日志文件,可以通过tail -f命令来查看
出现授权错误(见下图)请将目录下的hotent.mac文件发给宏天人员用于生成授权文件
将授权文件hotent.lic上传至jar包目录下,重新启动。
# Web应用
安装Nginx,通过Nginx部署web应用。
快速访问
# Nginx的安装和配置
通过yum install -y nginx安装,如果没有可用的nginx包,如下图所示,可以通过添加源以后,再执行安装命令。
通过命令启动nginx服务,并且查看服务的状态找到服务对应的配置文件
如上图所示,配置文件在/etc/nginx/nginx.conf,通过vim命令修改这个文件,按照如下内容修改,修改完以后,:wq保存,并执行nginx -s reload重新载入配置文件
**配置error_page解决访问报404错误 **
可以通过systemctl enable nginx.service将服务设置为开机自动运行。
# 部署web端
对于nginx部署的方式,我们将web资源部署到nginx配置的web目录
修改mvue/sso.js和mobilevue/sso.js以及fvue/sso.js这三个js文件,将这些地址修改为eip.jar服务所发布的IP和端口。
另外,对于mvue目录下的sso.js文件,需要注意:front,mobile,manage分别为fvue,mobilevue, manage部署的地址。
以上,完成了整个EIP7在linux环境下的部署,现在通过浏览器访问http://ip:port/mvue来访问系统吧。