目前通过 jenkins 来打包,然后将 jar 包传输到服务器上重启服务。
publish over ssh 插件是可以配置服务器。
但是机器很多的话就比较麻烦,一个应用可能几十台服务器,几个应用随便就超过百台了。
现在已进入配置节点的页面都要加载很久了。
求解有啥好的方案吗?或者插件什么的 我想到的一种是直接用 shell 脚本来传输包,不用插件。但是要将账号密码写到脚本里。

目前通过 jenkins 来打包,然后将 jar 包传输到服务器上重启服务。
publish over ssh 插件是可以配置服务器。
但是机器很多的话就比较麻烦,一个应用可能几十台服务器,几个应用随便就超过百台了。
现在已进入配置节点的页面都要加载很久了。
求解有啥好的方案吗?或者插件什么的 我想到的一种是直接用 shell 脚本来传输包,不用插件。但是要将账号密码写到脚本里。
1 rbe Jul 24, 2019 试试 Ansible 分发? Jenkins 有 Ansible 的插件 |
2 dreamusername Jul 24, 2019 一般对于多服务器,最合理的解决方案不是用 Ansible 吗,这里是否可以使用 Ansible Playbook 来解决这个问题。 |
3 lshero Jul 24, 2019 其实到最后都是 scp 加 ssh 密钥发布的 Ansible 写个 playbook 吧 |
4 DeadLion OP |
5 asilin Jul 24, 2019 这实际上属于 CI/CD 中的 CD - 持续部署。 jenkisn 本身是为少量工程的 CI (持续集成)设计的,大量工程的 CI 以及 CD 用它并不合适。 根据业务特性,我们自己实现了一套 CD,并集成到了运维平台中。 |
6 NoKey Jul 24, 2019 publish over ssh 那个插件好用是好用,但是如果服务器一多,页面就会很长 我们这里服务器不多,采用的是脚本 使用 Extended Choice Parameter 插件 几台服务器一组,在脚本里根据不同分组 一组一组的发 脚本里去通过 ssh 或者 scp 执行 这种是最基础最简单的操作了 不知道有没有高大上的解决方案 |
7 az422 Jul 24, 2019 via Android Jenkins 发布包到中转机,再触发中转机通过 ansible 分发 |
8 buliugu Jul 24, 2019 jenkins 构建 docker 镜像推到 harbor,然后用 k8s 部署,回滚扩容都非常方便 |
9 DeadLion OP |
10 StarkWhite Jul 25, 2019 请教下个人小项目,部署一套 Jenkins 是否划算呢? |