首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Java

请教 jenkins 发布应用到集群的方案

  •  
  •   DeadLion · 135 天前 · 1185 次点击
    这是一个创建于 135 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前通过 jenkins 来打包,然后将 jar 包传输到服务器上重启服务。
    publish over ssh 插件是可以配置服务器。
    但是机器很多的话就比较麻烦,一个应用可能几十台服务器,几个应用随便就超过百台了。
    现在已进入配置节点的页面都要加载很久了。

    求解有啥好的方案吗?或者插件什么的 我想到的一种是直接用 shell 脚本来传输包,不用插件。但是要将账号密码写到脚本里。

    10 回复  |  直到 2019-07-25 10:31:51 +08:00
        1
    rbe   135 天前
    试试 Ansible 分发? Jenkins 有 Ansible 的插件
        2
    dreamusername   135 天前
    一般对于多服务器,最合理的解决方案不是用 Ansible 吗,这里是否可以使用 Ansible Playbook 来解决这个问题。
        3
    lshero   135 天前
    其实到最后都是 scp 加 ssh 密钥发布的 Ansible 写个 playbook 吧
        4
    DeadLion   135 天前
    @lshero
    @dreamusername
    @rbe
    学习了,感谢。
        5
    asilin   135 天前
    这实际上属于 CI/CD 中的 CD - 持续部署。

    jenkisn 本身是为少量工程的 CI (持续集成)设计的,大量工程的 CI 以及 CD 用它并不合适。

    根据业务特性,我们自己实现了一套 CD,并集成到了运维平台中。
        6
    NoKey   135 天前
    publish over ssh 那个插件好用是好用,但是如果服务器一多,页面就会很长
    我们这里服务器不多,采用的是脚本
    使用 Extended Choice Parameter 插件
    几台服务器一组,在脚本里根据不同分组
    一组一组的发
    脚本里去通过 ssh 或者 scp 执行
    这种是最基础最简单的操作了
    不知道有没有高大上的解决方案
        7
    az422   135 天前 via Android
    Jenkins 发布包到中转机,再触发中转机通过 ansible 分发
        8
    buliugu   135 天前
    jenkins 构建 docker 镜像推到 harbor,然后用 k8s 部署,回滚扩容都非常方便
        9
    DeadLion   134 天前
    @asilin 是的,问了下大公司的朋友,都会有自研的分发系统,打包会用 jenkins。


    @buliugu docker 方案确实能方便发布,然而公司还没有那么先进用到容器技术。
        10
    StarkWhite   134 天前
    请教下个人小项目,部署一套 Jenkins 是否划算呢?
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1221 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 17:57 · PVG 01:57 · LAX 09:57 · JFK 12:57
    ♥ Do have faith in what you're doing.