通过jenkins进行部署java程序到centos上

1.通过jumpserver访问到centos上,准备下java环境

复制代码
// step1: 先编辑下
vim /etc/profile

// step2: 编写好环境变量
JAVA_HOME=/usr/local/java
export JAVA_HOME
export ZOOKEEPER_HOME=/opt/zookeeper/apache-zookeeper-3.7.0-bin
PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin
export PATH

// step3: 生效
source /etc/profile

// step4: 验证下(ps -ef | grep java  或者 jps)
java --version

2.通过jenkins打包机进行打包

1)jenkins打包机和目标机器通过ssh认证过了,如果key过期,则登录打包机,ssh centos地址 进行ssh重新授权key

  1. 搜索or directory,有些目录缺少,我们可以根据报错进行mkdir构建

3)rz // 上传缺少的配置文件

外网部署的java程序需要自己的配置文件,因此这些文件需要上传下,通过rz命令进行上传,如;logback.xml, xxx.json等配置文件

4)添加权限和修改格式

复制代码
// 添加权限
chomd 777 launch.sh

// 由于是从win拷贝过去的,提示set e无效,此时修改下格式
yum install dos2unix -y
dos2unix -q *.sh

通过 more nohup 文件查看出java进程起不起来的原因是因为端口被占用。

6)修改zk中的webServer的配置

>>>笔记

1.rsync命令用于: 2个主机之间的目录同步

复制代码
rsync -r source destination

2.通过curl发起post请求

复制代码
curl -i -k  -H "Content-type: application/json" -X POST -d '{"sign":"acd5e7a83dd216116ab9cbc21a701935","time":1709264321758}' https://域名/url

3.理解:内网地址和外网地址

由于一组服务器可能由多态机器,比如:

机器1和2 // 仅仅负责游戏服的启动

复制代码
[root@aow-ce-test-1 jianan]# jps
818089 Jps
809203 GameMain

机器3 // 负责zk、web服和网关的的启动

复制代码
[root@aow-global-ce-test xx]# jps
134954 QuorumPeerMain
959108 Jps
942997 Application
947536 GateWayExtension

所以: 这3个服务器是一组服务器,客户端需要连接的: web服和网关,这2个端口是需要暴露给客户端的,redis和zk等客户端是不需要知道的,服务之间连接时,使用机器3的内网地址即可,主要是为了安全问题,防止端口被扫描。

相关推荐
Aphelios38016 小时前
一次锁内网络IO引发的Tomcat线程池“饿死”事故
java·开发语言·spring boot·elasticsearch·tomcat·网络io阻塞·线程池耗尽
不可求~16 小时前
C++ std::string_view 不是字符串:从悬空引用到安全用法
java·开发语言·c++
Lam Tang16 小时前
APS 系列文章10
java·代理模式
考虑考虑17 小时前
Excel导入时产生特殊字符处理
java·后端·java ee
Scabbards_17 小时前
面试Leetcode - Heap 堆
java·leetcode·面试
程序员清风18 小时前
专业再升级!程序员专属显示器明基RD280UG上手实测!
java·后端·面试
Lam Tang20 小时前
APS 系列文章 08
java·代理模式
萧瑟余晖20 小时前
Java深入解析篇三十三之消息队列
java·开发语言
码匠许师傅20 小时前
【C++ 面试真题】聊聊 C++ 的序列容器
java·c++·面试
IT爱学堂21 小时前
尚硅谷Java+AI大模型应用开发革新版本 2025年3月
java·开发语言·人工智能