项目简介技术栈
主体技术:SpringCloud,SpringBoot,VUE2,
中间件:RabbitMQ、Redis
创建用户
在linux服务器home下创建用户qshh,用于后续本项目需要的环境进行安装配置
#创建用户
useradd 用户名
#设置登录密码
passwd 用户名 密码
JDK安装及配置
JDK是Java程序运行的基础环境
#在qshh用户下进行操作,创建目录
mkdir -p /home/qshh/jdk/instance
#切换目录
cd /home/qshh/jdk/instance
#上传jdk-8u202-linux-x64.tar.gz
#解压
tar -zxf jdk-8u351-linux-x64.tar.gz #得到jdk1.8.0_351目录
#环境变量、回到用户根目录
vi .bash_profile #编辑文件 添加以下内容
#jdk
PATH=/home/qshh/jdk/instance/jdk1.8.0_351/bin:$PATH
#配置文件生效
source .bash_profile
#验证
java -version
#显示
java version "1.8.0_351"
Java(TM) SE Runtime Environment (build 1.8.0_351-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.351-b08, mixed mode)
创建jar包目录,以及后台运行的命令
mkdir -p /home/qshh/instance/
//使运行jar包当前shell连接也能正常运行
nohup java -jar XXX.jar &
//查看jar运行的线程等信息
ps aux|grep xxx.jar
Nginx安装及配置
下载Nginx所需要的依赖
//root用户
yum install epel-release -y
yum -y install unzip zip zlib zlib-devel openssl openssl-devel pcre pcre-devel gcc gcc-c++ autoconf automake make psmisc net-tools lsof vim wget -y
创建nginx安装目录并编译安装
#qshh用户
mkdir -p /home/qshh/nginx/make
#进入该目录,并且把nginx安装包上传到该目录下
cd /home/qshh/nginx/make
#解压得到nginx-1.18.0目录
tar -zxf nginx-1.18.0-src.tar.gz
#编译配置
cd nginx-1.18.0
./configure --prefix=/home/qshh/nginx/instance/nginx-1.18.0 --with-stream --with-http_ssl_module --with-http_realip_module
#编译并安装
make && make install
配置qshh用户下的nginx环境
#qshh用户根目录
vi .bash_profile
#添加以下配置
#nginx
PATH=/home/qshh/nginx/instance/nginx-1.18.0/sbin:$PATH
#配置立即生效
source .bash_profile
#验证是否安装好
nginx -v
nginx的启动相关命令
#查看nginx运行情况
ps -ef | grep nginx
#启动nginx,进入nginx的安装目录下的sbin执行
./nginx
#获取nginx执行的进程号
ps -C nginx -o pid
#sbin重启,即读取配置文件
./nginx -s reload
Nacos安装及配置
nacos安装
#创建目录
mkdir -p /home/qshh/nacos/instance
#切换目录
cd /home/qshh/nacos/instance
#该目录下上传压缩包并解压
tar -xf nacos-server-1.4.4.tar.gz
#启动命令需要在实例根目录执行 不在nacos的bin目录执行
#避免污染nacos的bin目录 主要是内置数据库日志和tomcat工作目录和日志
cd /home/qshh/nacos/instance/nacos-server-1.4.4
#创建启动脚本
vi startup.sh
#键入:
sh bin/startup.sh -m standalone
#保存后即可在该目录执行启动脚本
sh startup.sh
#停止
sh bin/shutdown.sh
访问nacos
默认地址:http://localhost:8848/nacos
#账号:nacos
#密码:nacos
修改nacos端口以及查看日志
要进入nacos目录下的conf中修改application.properties文件
设置端口server.port=8888//默认是8848
如果启动nacos后无法访问到nacos,那么首先看一下nacos的启动日志,看是否成功启动
要进入nacos安装目录下的logs文件夹
#查看nacos运行状态
ps -ef | grep nacos
cat start.out//进行启动日志查看
Redis安装及配置
redis安装
#创建目录
mkdir -p /home/qshh/redis/make
#切换目录上传安装包
cd /home/qshh/redis/make
#解压
tar -zxf redis-5.0.14.tar.gz #得到redis-5.0.14目录
#进入目录
cd redis-5.0.14
#编译
make
#安装,指定安装目录
make install PREFIX=/home/qshh/redis/instance/redis-5.0.14
用户添加redis路径信息
#环境变量
vi ~/.bash_profile
#设置路径以及默认密码
#redis
PATH=/home/qshh/redis/instance/redis-5.0.14/bin:$PATH
export REDISCLI_AUTH=123456
#生效
source ~/.bash_profile
配置redis信息
#配置文件 拷贝 改名
cp redis.conf /home/qshh/redis/instance/redis-5.0.14/6379.conf
#快捷脚本 拷贝 改名
cp utils/redis_init_script /home/qshh/redis/instance/redis-5.0.14/script/redis_6379
#切换目录
cd /home/qshh/redis/instance/redis-5.0.14
#编辑配置文件
vi 6379.conf
#修改以下选项
################################## NETWORK #####################################
bind 0.0.0.0 #69行 外部访问
port 6379 #92行 端口
################################# GENERAL #####################################
daemonize yes #136行 后台运行
pidfile /home/qshh/redis/instance/redis-5.0.14/6379.pid #158行 pid
logfile "/home/qshh/redis/instance/redis-5.0.14/6379.log" #171行 日志
################################ SNAPSHOTTING ################################
dbfilename 6379.rdb #253行 数据文件名称
dir /home/qshh/redis/instance/redis-5.0.14 #263行 数据目录
replicaof <masterip> <masterport> #286行
################################# REPLICATION #################################
masterauth 123456 #293行 master密码 非从节点也是不生效的 可以提前配置 如果不对 部署的时候可以改
################################## SECURITY ###################################
requirepass 123456 #507行 密码
############################## APPEND ONLY MODE ###############################
appendonly yes #699行 持久化策略
appendfilename "6379.aof" #703行 持久化文件
appendfsync always #729行 同步策略
#编辑
vi script/redis_6379
#修改以下内容
REDISPORT=6379
EXEC=/home/qshh/redis/instance/redis-5.0.14/bin/redis-server #路径修改
CLIEXEC=/home/qshh/redis/instance/redis-5.0.14/bin/redis-cli #路径修改
PIDFILE=/home/qshh/redis/instance/redis-5.0.14/${REDISPORT}.pid #路径及文件名称修改
CONF="/home/qshh/redis/instance/redis-5.0.14/${REDISPORT}.conf" #路径修改
启动jar包涉及redis报错处理
报错信息:
[2023-04-09 17:50:42] [ERROR] [org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/ms-app].[dispatcherSer
vlet]:175] -- Servlet.service() for servlet [dispatcherServlet] in context with path [/ms-app] threw exception [red
is.clients.jedis.exceptions.JedisDataException: READONLY You can't write against a read only replica.] with root cau
se
redis.clients.jedis.exceptions.JedisDataException: READONLY You can't write against a read only replica.
原因分析:
在jar使用redis时,设置只读的权限
解决:
在之前的配置文件6379.conf中将replica-read-only yes改为no即可见下:
#设置为no即可
replica-read-only no
RabbitMQ安装及配置
安装依赖Erlang
#root用户安装
yum -y install perl,ncurses-devel,openssl-devel
安装Erlang
#qshh用户创建目录
mkdir -p /home/qshh/erlang/make
#进入目录上传压缩包,解压
tar -zxf otp_src_23.3.4.11.tar.gz
#进入目录
cd otp_src_23.3.4.11
#编译配置
./configure --prefix=/home/qshh/erlang/instance/erlang-23.3.4.11
#编译并安装
make && make install
#用户根目录设置环境变量
vi .bash_profile
#erlang
PATH=/home/qshh/erlang/instance/erlang-23.3.4.11/lib/erlang/bin:$PATH
#生效
source .bash_profile
#验证
erl -version
安装rabbitMQ
#qshh实例目录
mkdir -p /home/qshh/rabbitmq/instance
#切换目录
cd /home/qshh/rabbitmq/instance
#上传并解压得到 rabbitmq_server-3.9.14目录
tar -xf rabbitmq-server-generic-unix-3.9.14.tar.xz
#用户根目录设置环境变量
vi .bash_profile
#rabbitmq
PATH=/home/qshh/rabbitmq/instance/rabbitmq_server-3.9.14/sbin:$PATH
#生效
source .bash_profile
cd /home/qshh/rabbitmq/instance/rabbitmq_server-3.9.14
#启动
rabbitmq-server -detached
#组件安装
rabbitmq-plugins enable rabbitmq_management
rabbitmq-plugins enable rabbitmq_web_stomp
#用户
rabbitmqctl list_users
#添加用户
rabbitmqctl add_user "admin" "qshh@CYS"
#设置角色
rabbitmqctl set_user_tags admin administrator
#设置权限
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
#停止
rabbitmqctl stop
#启动管理
~/bin/qshh_rabbitmq_5672