前言
本文包含 磁盘挂载,java 环境配置,Nginx环境配置,redis环境配置,rocketMq环境配置,xxljob环境配置
一、 磁盘挂载
#查看磁盘情况
fdisk -l
#格式化磁盘
mkfs -t ext4 /dev/vdb
#创建挂载文件夹
mkdir /data
#挂载
mount /dev/vdb /data
#开机自动挂载
二.Java环境配置
默认安装位置:/usr/java
rpm 安装后不需要另外配置环境变量
下载jdk8 [jdk-8u333-linux-x64.rpm]
下载链接:https://pan.baidu.com/s/1jxURMsWzBRNHkxkHS3lshA?pwd=7f7q
提取码:7f7q
--安装java
> rpm -ivh jdk-8u333-linux-x64.rpm
其他命令
-- 卸载
> rpm -e jdk-8u333-linux-x64.rpm
-- 查询
> rpm -q jdk-8u333-linux-x64.rpm
-- 复制到其他服务器(以另一台服务器为192.168.1.100,用户root为例)
scp jdk-8u333-linux-x64.rpm root@192.168.1.100:/opt
验证
--验证是否安装成功
> java -version
--查询到以下信息表示安装已经成功
java version "1.8.0_333"
Java(TM) SE Runtime Environment (build 1.8.0_333-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.333-b02, mixed mode)
三、 Nginx环境配置
使用yum命令安装nginx
-- 安装
> yum -y install nginx
-- 配置 已上线项目配置nginx需要备份原有nginx.conf
> vim /etc/nginx/nginx.conf
-- 验证nginx配置
> nginx -t
-- 启动nginx (nginx未启动状态下)
> nginx
-- 重载nginx配置(nginx已启动状态下)
> nginx -s reload
验证
-- 验证是否启动成功
> ps -ef|grep nginx
-- 查询到以下内容表示已经启动成功
root 31066 1 0 11:36 ? 00:00:00 nginx: master process nginx
nginx 31067 31066 0 11:36 ? 00:00:00 nginx: worker process
nginx 31068 31066 0 11:36 ? 00:00:00 nginx: worker
nginx.conf 配置
请根据实际项目配置修改相关内容
#user nobody;
worker_processes 1;
#日志地址--错误日志
error_log /data/log/nginx/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
worker_rlimit_nofile 65535;
events {
worker_connections 10240;
}
http {
include mime.types;
default_type application/octet-stream;
client_max_body_size 10m;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
#日志地址
access_log /data/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
underscores_in_headers on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
#后台api访问路径
upstream test-api {
可以配置多个 weight 为权最配置,weight和访问比率成正比
server 192.168.1.1:8281 weight=10;
#server 192.168.1.1:8281 weight=1;
}
server {
listen 80;
#域名 可配置多个
server_name www.xxxx.com xxx.com;
#限制IP访问
set $flag '0';
if ($host = 'xxxx.com' ){
set $flag '1';
}
if ($host = 'www.xxxx.com'){
set $flag '1';
}
if ( $flag = '0' ){
return 404;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location /testApi {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass http://test-api;
rewrite "^/testApi/(.*)$" /$1 break;
}
#配置前端域名访问
location /admin-web {
alias /usr/local/project/vue/admin-web/dist/;
try_files $uri $uri/ /admin-web/index.html;
index index.html index.htm;
}
#xxl-job 管理后台配置
location /xxl-job-admin {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:9631;
}
}
#HTTPS 访问配置
server {
listen 443 ssl;
server_name xxx.com;
# ssl on;
ssl_certificate /etc/nginx/ssl/xxx.pem; #这里是ssl crt文件存放的绝对路径,根据自己的文件名称和路径来写
ssl_certificate_key /etc/nginx/ssl/xxx.key; #这里是ssl key文件存放的绝对路径,根据自己的文件名称和路径来写
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass http://xxx.com;
}
}
}
四.Redis环境配置 (单服务)
使用yum命令安装redis
--安装
> yum -y install redis
--修改配置 必须设置复杂密码,非特殊情况禁止外部连接,配置外部连接需提前申请
> vim /etc/redis.conf
--启动
> service redis start
重要配置说明
配置文件位置 /etc/redis.conf
daemonize no/yes -- 是否后台运行
port 6379 -- 运行端口号
bind 127.0.0.1 -- 绑定IP
timeout 0 -- 连接关闭时间,0代表不开启此功能
loglevel notice -- 日志级别
requirepass -- 密码
其他命令
-- 关闭
> service redis stop
-- 重启
> service redis restart
验证
-- 验证是否启动成功
> ps -ef|grep redis
--查询到类似内容表示启动成功
redis 15612 1 0 11:24 ? 00:00:00 /usr/bin/redis-server 127.0.0.1:6379
root 15697 26861 0 11:24 pts/0 00:00:00 grep --color=auto redis
五.RocketMq环境配置
服务端namesrv和broker
请下载 [rocketmq-all-4.9.2-bin-release.zip]
安装路径:/usr/local/rocketmq
解压并调整配置
-- 安装zip命令(未安装的情况下)
yum install -y unzip zip
-- 解压zip包
unzip rocketmq-all-4.9.2-bin-release.zip
覆盖broker配置文件(/usr/local/rocketmq/rocketmq-4.9.2/conf/broker.conf)
#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a
#0 表示 Master,>0 表示 Slave
brokerId=0
brokerIP1=192.168.1.100
#nameServer地址,分号分割
namesrvAddr=192.168.1.100:9876
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=false
#Broker 对外服务的监听端口
listenPort=10911
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 72 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog= 1024 * 1024 * 1024
#存储路径
storePathRootDir=/usr/local/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/store/abort
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=SYNC_MASTER
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=SYNC_FLUSH
#延时级别
messageDelayLevel=15m 30m 1h
调整默认内存
-- 修改namesrv默认内存大小(根据实际情况调整)
-- 文件路径(/usr/local/rocketmq/rocketmq-4.9.2/bin/runserver.sh)
-Xms4g -Xmx4g -Xmn2g 改为 -Xms2g -Xmx2g -Xmn1g
-- 修改broker默认内存大小(根据实际情况调整)
-- 文件路径(/usr/local/rocketmq/rocketmq-4.9.2/bin/runbroker.sh)
-Xms8g -Xmx8g 改为 -Xms4g -Xmx4g
创建namesrv启动文件(rmq-namesrv.service)
[Unit]
Description=rmq-namesrv
After=network.target
[Service]
ExecStart=/usr/bin/sh /usr/local/rocketmq/rocketmq-4.9.2/bin/mqnamesrv
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
创建broker启动文件(rmq-broker.service)
[Unit]
Description=rmq-broker
After=network.target
[Service]
ExecStart=/usr/bin/sh /usr/local/rocketmq/rocketmq-4.9.2/bin/mqbroker -c /usr/local/rocketmq/rocketmq-4.9.2/conf/broker.conf
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
将两个启动文件放入路径 /usr/lib/systemd/system 中,然后即可以service服务的方式启动、重启、停止等操作
控制台
放置路径:/usr/local/rocketmq
请下载文件 [rocketmq-console-ng-1.0.0.jar]
创建启动文件并放入路径 /usr/lib/systemd/system 中,即可以service服务的方式启动、重启、停止等操作
默认端口:8888
rmq-console.service
[Unit]
Description=rmq-console
After=network.target
[Service]
ExecStart=/usr/bin/java -jar -Xms128m -Xmx512m -XX:PermSize=64M -XX:MaxPermSize=128M /usr/local/rocketmq/rocketmq-console-ng-1.0.0.jar
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
配置nginx外网访问
-- 安装生成密码工具
yum -y install httpd-tools
-- 配置身份认证,中间为密码存储文件的位置,dev为用户名(rmq-console 文件需要先手动创建一下)
htpasswd -c -d /etc/nginx/htpasswd/rmq-console dev
-- 创建nginx配置文件 rocketmq.conf 放入 /etc/nginx/conf.d 中
-- 文件内容
server {
listen 80;
server_name rocketmq.com;
location /rmq-console {
auth_basic "请输入账户密码!";
auth_basic_user_file /etc/nginx/htpasswd/rmq-console;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:8888;
rewrite "^/rmq-console/(.*)$" /$1 break;
}
}
重载nginx配置
控制台访问 http://xxx.com/rmq-console/#/
用户名: dev
密码:xxx
六.XxlJob环境配置
项目下载路径: xxl-Job
数据库搭建
[tables_xxl_job.sql]
代码打包部署
设置服务
[Unit]
Description=xxl-job
After=network.target
[Service]
ExecStart=/usr/bin/java -jar /usr/local/xxl-job/xxl-job-admin-2.4.0-SNAPSHOT.jar
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
ExecStart=/usr/bin/java -jar /usr/local/xxl-job/xxl-job-admin-2.4.0-SNAPSHOT.jar spring.proflies.active=pord -server-port=9631
启动命令
--启动
> service xxl-job start
总结
关注一下吧