文章中安装包下载地址:https://pan.baidu.com/s/1qiZ_APvENKBCFZiVUfA2og ,提取码:3g7f
一、系统相关配置
(一)禁用防火墙
systemctl stop firewalld 停止并禁用开机启动 sytemctl disable firewalld
(二)关闭seLinux
vi /etc/selinux/config SELINUX=enforcing 改为 SELINUX=disabled 重启生效
(三)设置hostname
查看主机名称 hostname 编辑vi /etc/hostname或hostnamectl set-hostname master 按【i】键修改,【Esc】键退出修改。【:wq】保存退出,【:q】不保存退出。 修改并保存 重启生效
(四)修改hosts
vi /etc/hosts 编辑一下内容,其实就是地址对应,按照各自设计的网络名称进行对应,例如: 192.168.0.23 master 执行命令:vi /etc/sysconfig/network 修改如下: NETWORKING=yes HOSTNAME=master 执行命令:service network restart重启网络服务生效。
(五)配置文件yum(便于后期通过yum安装相关依赖)
拷贝centos系统镜像至主节点 镜像授权:chmod -R 777 CentOS-7-x86_64-DVD-1810.iso 备份原yum配置:mv /etc/yum.repos.d/ /etc/yum.repos.d.back 根目录新建iso目录 : mkdir /iso 挂载镜像至iso文件:mount -o loop CentOS-7-x86_64-DVD-1810.iso /iso/ 新建文件目录 mkdir /etc/yum.repos.d 进入yum源配置目录:cd /etc/yum.repos.d 新建centos.repo文件并编辑 [localrepo] name=centos baseurl=file:///iso gpgcheck=false enabled=true 保存并退出
执行:yum clean all 和 yum makecache 检查是否安装成功 yum repolist
(六)安装gcc相关依赖(如果服务器没有则需要安装)
Linux离线安装软件需要的所有依赖包,所有的都有:gcc、lib、zlib、openssl、cpp、tcl等等。 运行命令,放到Linux上解压,然后执行:【rpm -ivh *.rpm --nodeps --force】这样就全部安装了。 备注:最好是一个一个单独安装
二、安装JDK
(一)删除系统自带的jdk
1.删除liunx自带openJdk 1.使用Xshell连接liunx系统 2.在命令界面输入如下命令 rpm -qa | grep jdk 3.若查询不到数据,则直接跳到安装JDK,如果存在以下数据则按照步骤进行,只要是存在openjdk的都需要删除,可能不同liunx系统安装的openjdk版本不一; java-1.8.0-openjdk-headless-1.7.0.51-2.4.5.5.el7.x86_64 java-1.8.0-openjdk-1.7.0.51-2.4.5.5.el7.x86_64 4.删除openJDK xxxxxx.x只代表版本号,实际按照查询出来的版本输入 rpm -e --nodeps java-1.8.0-openjdk-xxxxxx.x86_64 rpm -e --nodeps java-1.8.0-openjdk-xxxxx.x86_64
(二)安装jdk
1)在/usr/local/下创建java地址用于存放JDK;
2)将JDK通过XFTP上传到创建的java文件夹下
3)解压
解压命令如下:
tar -zxvf java.xxxxxx.tar.gz
3.配置系统变量
1)通过vim打开profile文件
vi /etc/profile
2)添加如下配置
在profile最后一行添加如下配置,/usr/local/java/jdk1.8.0_13 这就是JDK配置的地址
export JAVA_HOME=/usr/local/java/jdk1.8.0_261
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
3)保存退出
按键盘的ESC按钮,并且输入:wq命令,保存退出
4.重新加载配置文件
source 可以不用重启让profile生效
输入:source /etc/profile
5.测试
[root@localhost ~]# java -version
java version "1.8.0_261"
Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
三、Redis部署方案
安装EPEL源命令如下 rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm yum update --更新yum源,可不写 1、安装jemalloc(不推荐yum安装) yum install jemalloc -y --必须安装jemalloc,如果失败,就wget下来在用rpm方式安装 -- rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm --可以不用装 -- yum install kobo-rpmlib -y --可以不用装 rpm安装jemalloc(推荐rpm安装) 进入rpm的目录 rpm -ivh jemalloc-3.6.0-1.el6.x86_64.rpm 2、下载并安装redis3.0.4(选择) 进入redis rpm目录 rpm -ivh redis-3.0.4-1.el6.remi.x86_64.rpm 3、修改配置文件 mkdir /data/redis --创建目录 vim /etc/redis.conf 修改数据库存放路经 dir /var/lib/redis/ --修改前 dir /data/redis/ --修改后 修改日志存放路经 logfile /var/log/redis/redis.log --修改前 logfile /data/redis/redis.log --修改后 修改绑定的IP地址 bind 127.0.0.1 --修改前 bind 192.168.7.209 --修改后 bind 127.0.0.1 192.168.7.209 --绑定多个IP,注意是空格不是逗号,2.8以后的版本才支持(内网地址,外网地址) 修改绑定的port号 port 6379 --修改前 port **** --修改后 设置密码,去掉行前的注释,并修改密码为所需的密码,保存文件. requirepass 密码 设置后台运行redis daemonize no --修改前 daemonize yes --修改后 4、修改/data/redis目录权限 mkdir /data/redis chown -R redis:redis /data/redis chmod -R 744 /data/redis 5、启动Redis服务 chkconfig redis on service redis start --启动redis服务 redis-server --version --查看redis版本号 6、本地测试Redis 复制代码 redis-cli --连接redis redis-cli -h 127.0.0.1 -p 6379 -a 指定密码 set name 存储的值 --设置key,value get name --读取key exit --退出redis 删除满足redis查询结果的所有key redis-cli -a 密码 keys "*.html" | xargs redis-cli -a 密码 del 7.设置redis自启动 systemctl enable redis-server.service systemctl list-unit-files |grep redis查看 centos7的开机启动项目
四、Nacos部署方案
1.解压安装 在项目上级路径创建一个nacos文件夹后,通过tar方式解压到nacos文件夹中; tar -zxvf nacos.1.3.2.tar.gz 2.启动 进入创建的nacos/bin文件夹下;使用是sh startup.sh启动; nohup sh startup.sh -m standalone 单机后台运行; 3.测试 根据配置的ip地址进行访问,账号nacos 密码nacos能访问则可以安装成功; 例如Linux的IP为192.168.0.143,则在另外的电脑登录192.168.0.143:8848/nacos 如果没有关闭防火墙,则无法登录 4.设置开机自启动 开机自启动 vim /lib/systemd/system/nacos.service 添加如下: [Unit] Description=nacos After=network.target [Service] Type=forking ExecStart=/usr/local/nacos/nacos/bin/startup.sh -m standalone ExecReload=/usr/local/nacos/nacos/bin/shutdown.sh ExecStop=/usr/local/nacos/nacos/bin/shutdown.sh PrivateTmp=true [Install] WantedBy=multi-user.target 保存退出后,执行以下命令 systemctl daemon-reload systemctl enable nacos.service systemctl start nacos.service systemctl status nacos.service 备注:设置好开机自启动后,启动可能会报错,这是因为没找到jdk 解决办法如下图:将startup.sh中的JAVA_HOME修改为jdk的安装路径,并将下面的三行注释
五、mysql部署方案
1、下载官方安装包
mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
官方链接 https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
2、在/usr/local目录下创建mysql文件夹
mkdir mysql
3、上传mysql安装包,这里可以采用FTP进行上传。上传位置为/usr/local/mysql
4、解压安装包
tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
5、卸载自带的maraidb-lib-版本号
rpm -qa|grep mariadb
mariadb-libs-版本号
rpm -e --nodeps mariadb-libs-版本号
rpm -qa|grep mariadb
若卸载不了可使用 yum remove 包名 -y 命令
6、安装mysql-community-common-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm
7、安装mysql-community-libs-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm
8、安装mysql-community-client-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm
9、安装libaio
yum install libaio
执行后按照提示输入 y
10、安装mysql-community-server-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm
11、初始化数据库
mysqld --initialize --user=mysql
12、启动mysql
systemctl start mysqld.service
set password=password('123456');
13、登录mysql
mysql -uroot -p
14、创建用户并赋权
grant all on *.* to 'testa'@'%' identified by '123456';
15、刷新权限
flush privileges;
跳过密码
vim /etc/my.cnf mysqld下面添加一行代码:skip-grant-tables
service mysqld restart
mysql -uroot -p 直接回车
use mysql;
show tables;
desc user;
update user set password=password('123456') where user='root'; 或者使用下面的
update user set authentication_string=password('123456') where user='root';
flush privileges;
exit;
去掉vim /etc/my.cnf mysqld下面代码:skip-grant-tables
16.设置开机自启动
通过systemctl enable mysql来设置 mysql开机启动自动
systemctl list-unit-files |grep mysql查看 centos7的开机启动项目
六、Nginx部署方案
1.进入nginx rpm安装包路径 rpm -ivh nginx-1.18.0-1.el7.ngx.x86_64.rpm 2.修改配置文件nginx.conf rpm 安装方式nginx 默认安装位置在 /etc/nginx/ 目录下 3.nginx 启动关闭 启动:systemctl start nginx.service 关闭:systemctl stop nginx.service 查看状态:systemctl status nginx.service 4.设置nginx自启动 #查看nginx 是否 开机自启 systemctl list-unit-files | grep nginx #设置nginx 开机自启 systemctl enable nginx.service systemctl list-unit-files |grep nginx查看 centos7的开机启动项目
七、项目部署启动
(一)前端部署
将dist文件夹中的东西全部拷贝到nginx/html文件夹中
(二)后端部署
1.创建 /home/java目录
2.将jar放到Java目录下
3.创建一键启动jar脚本
在java文件夹中创建startupAll.doc文件
文件内容:
#!/bin/sh
export EUREKA=eurekaserver.jar
export ConFIG=configserver.jar
export GATEWAY=zuulgatewayserver.jar
export AUTH=authorizeserver.jar
export LOG=logstatisticsserver.jar
export APPMGR=appmgrserver.jar
export ORGANIZEUSER=organizeuserserver.jar
export JTMOP=jtmopserver.jar
export EUREKA_log=../logs/eurekaserver.log
export CONFIG_log=../logs/configserver.log
export GATEWAY_log=../logs/zuulgatewayserver.log
export AUTH_log=../logs/authorizeserver.log
export LOG_log=../logs/logstatisticsserver.log
export APPMGR_log=../logs/appmgrserver.log
export ORGANIZEUSER_log=../logs/organizeuserserver.log
export JTMOP_log=../logs/jtmopserver.log
export EUREKA_port=10080
export CONFIG_port=10085
export GATEWAY_port=10084
export AUTH_port=10088
export LOG_port=10093
export APPMGR_port=10092
export ORGANIZEUSER_port=10087
export JTMOP_port=10091
case "$1" in
start)
## 启动eureka
echo "--------eureka 开始启动--------------"
nohup java -jar $EUREKA > $EUREKA_log 2>&1 &
EUREKA_pid=`lsof -i:$EUREKA_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$EUREKA_pid" ]
do
EUREKA_pid=`lsof -i:$EUREKA_port|grep "LISTEN"|awk '{print $2}'`
done
echo "EUREKA pid is $EUREKA_pid"
sleep 10
echo "--------eureka 启动成功--------------"
## 启动config
echo "--------开始启动CONFIG---------------"
nohup java -jar $ConFIG > $CONFIG_log 2>&1 &
CONFIG_pid=`lsof -i:$CONFIG_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$CONFIG_pid" ]
do
CONFIG_pid=`lsof -i:$CONFIG_port|grep "LISTEN"|awk '{print $2}'`
done
echo "ConFIG pid is $CONFIG_pid"
sleep 30
echo "---------ConFIG 启动成功-----------"
## 启动gateway
echo "--------开始启动GATEWAY---------------"
nohup java -jar $GATEWAY > $GATEWAY_log 2>&1 &
GATEWAY_pid=`lsof -i:$GATEWAY_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$GATEWAY_pid" ]
do
GATEWAY_pid=`lsof -i:$GATEWAY_port|grep "LISTEN"|awk '{print $2}'`
done
echo "GATEWAY pid is $GATEWAY_pid"
echo "---------GATEWAY 启动成功-----------"
## 启动auth
echo "--------开始启动AUTH---------------"
nohup java -jar $AUTH > $AUTH_log 2>&1 &
AUTH_pid=`lsof -i:$AUTH_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$AUTH_pid" ]
do
AUTH_pid=`lsof -i:$AUTH_port|grep "LISTEN"|awk '{print $2}'`
done
echo "AUTH pid is $AUTH_pid"
echo "---------AUTH 启动成功-----------"
## 启动log
echo "--------开始启动LOG---------------"
nohup java -jar $LOG > $LOG_log 2>&1 &
LOG_pid=`lsof -i:$LOG_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$LOG_pid" ]
do
LOG_pid=`lsof -i:$LOG_port|grep "LISTEN"|awk '{print $2}'`
done
echo "LOG pid is $LOG_pid"
echo "---------LOG 启动成功-----------"
## 启动appmgr
echo "--------开始启动APPMGR---------------"
nohup java -jar $APPMGR > $APPMGR_log 2>&1 &
APPMGR_pid=`lsof -i:$APPMGR_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$APPMGR_pid" ]
do
APPMGR_pid=`lsof -i:$APPMGR_port|grep "LISTEN"|awk '{print $2}'`
done
echo "APPMGR pid is $APPMGR_pid"
echo "---------APPMGR 启动成功-----------"
## 启动organizeuser
echo "--------开始启动ORGANIZEUSER---------------"
nohup java -jar $ORGANIZEUSER > $ORGANIZEUSER_log 2>&1 &
ORGANIZEUSER_pid=`lsof -i:$ORGANIZEUSER_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$ORGANIZEUSER_pid" ]
do
ORGANIZEUSER_pid=`lsof -i:$ORGANIZEUSER_port|grep "LISTEN"|awk '{print $2}'`
done
echo "ORGANIZEUSER pid is $ORGANIZEUSER_pid"
echo "---------ORGANIZEUSER 启动成功-----------"
## 启动jtmop
echo "--------开始启动JTMOP---------------"
nohup java -jar $JTMOP > $JTMOP_log 2>&1 &
JTMOP_pid=`lsof -i:$JTMOP_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$JTMOP_pid" ]
do
JTMOP_pid=`lsof -i:$JTMOP_port|grep "LISTEN"|awk '{print $2}'`
done
echo "JTMOP pid is $JTMOP_pid"
echo "---------JTMOP 启动成功-----------"
echo "===startAll success==="
;;
stop)
P_ID=`ps -ef | grep -w $EUREKA | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===EUREKA process not exists or stop success"
else
kill -9 $P_ID
echo "EUREKA killed success"
fi
P_ID=`ps -ef | grep -w $ConFIG | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===ConFIG process not exists or stop success"
else
kill -9 $P_ID
echo "ConFIG killed success"
fi
P_ID=`ps -ef | grep -w $GATEWAY | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===GATEWAY process not exists or stop success"
else
kill -9 $P_ID
echo "GATEWAY killed success"
fi
P_ID=`ps -ef | grep -w $AUTH | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===AUTH process not exists or stop success"
else
kill -9 $P_ID
echo "AUTH killed success"
fi
P_ID=`ps -ef | grep -w $LOG | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===LOG process not exists or stop success"
else
kill -9 $P_ID
echo "LOG killed success"
fi
P_ID=`ps -ef | grep -w $APPMGR | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===APPMGR process not exists or stop success"
else
kill -9 $P_ID
echo "APPMGR killed success"
fi
P_ID=`ps -ef | grep -w $ORGANIZEUSER | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===ORGANIZEUSER process not exists or stop success"
else
kill -9 $P_ID
echo "ORGANIZEUSER killed success"
fi
P_ID=`ps -ef | grep -w $JTMOP | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "===JTMOP process not exists or stop success"
else
kill -9 $P_ID
echo "JTMOP killed success"
fi
echo "===stop success==="
;;
restart)
$0 stop
sleep 10
$0 start
echo "===restart success==="
;;
esac
exit 0
5.赋予脚本可执行权限
chmod +x startupAll.sh
6.执行批量启动的shell脚本命令:
./startupAll.sh start
7. 执行批量停止的shell脚本命令:
./startupAll.sh stop
8.执行批量重启的shell脚本命令:
./startupAll.sh restart
9.设置开机自启动
打开/etc/rc.d/rc.local文件,在末尾增加如下内容
/home/java/centnet-service.sh start
赋予/etc/rc.d/rc.local的执行权限
chmod +x /etc/rc.d/rc.local
备注:要在执行的sh文件中设置好Java环境变量



