liunx环境java部署


前言

本文包含 磁盘挂载,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

总结

关注一下吧

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值