通过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的内网地址即可,主要是为了安全问题,防止端口被扫描。

相关推荐
邓不利东1 小时前
Spring中过滤器和拦截器的区别及具体实现
java·后端·spring
草履虫建模2 小时前
Redis:高性能内存数据库与缓存利器
java·数据库·spring boot·redis·分布式·mysql·缓存
苹果醋32 小时前
Vue3组合式API应用:状态共享与逻辑复用最佳实践
java·运维·spring boot·mysql·nginx
Micro麦可乐2 小时前
Java常用加密算法详解与实战代码 - 附可直接运行的测试示例
java·开发语言·加密算法·aes加解密·rsa加解密·hash算法
掉鱼的猫2 小时前
Java MCP 鉴权设计与实现指南
java·openai·mcp
努力的小郑3 小时前
Spring三级缓存硬核解密:二级缓存行不行?一级缓存差在哪?
java·spring·面试
手握风云-3 小时前
JavaEE初阶第七期:解锁多线程,从 “单车道” 到 “高速公路” 的编程升级(五)
java·开发语言
发仔1233 小时前
使用Canal实现MySQL到Elasticsearch数据同步
java·后端
hello早上好3 小时前
Spring AOP:从代理创建到切点匹配
java·后端·spring
psjasf13143 小时前
使用Ideal创建一个spring boot的helloWorld项目
java·spring boot·后端