2017-05-09 16:43:38 3206次浏览 8条回答 0 悬赏 10 金钱

现在有5台服务器,但是代码一更新每台都要去更新好麻烦,各位大神有没有什么比较好的方案呢?

  • 回答于 2017-05-09 16:53 举报

    先把待发布的文件(不带node_modules)提交到一个git仓库,在每台机器上,第一次都clone这个仓库;
    更新时,通过ansible,批量执行
    git pull
    npm i
    pm2 restart all
    回滚时,类似的流程

    2 条回复
    回复于 2017-05-09 17:53 回复

    这个是 nodejs 的吗?

    回复于 2017-05-10 08:48 回复

    git

  • 回答于 2017-05-09 22:39 举报

    通过git的hook做自动部署

  • 回答于 2017-05-10 09:14 举报

    用git管理,git缓存源码,各服务器从git中取源码即可

    4 条回复
    回复于 2017-05-10 10:06 回复

    如果服务器太多就忙不过来了

    回复于 2017-05-10 10:13 回复

    忙不过来是几个意思?

    回复于 2017-05-10 18:54 回复

    后面集群的服务器多了 没有自动布署真的忙不过来

    回复于 2017-05-10 20:28 回复

    还手动玩?肯定是全自动啊。管你多少服务器,配置好了,秒更。

  • 回答于 2017-05-10 11:21 举报

    github上好像有个挺牛叉的功能,就是你push代码的时候,服务器就自动拉代码,不知道是不是真的。

    1 条回复
    回复于 2017-05-10 18:52 回复

    二楼说了 git hook 你应该说的是这个

  • 回答于 2017-05-10 11:41 举报

    能有多忙,git应该足够用了吧。。。。

    统一下开发和测试的节奏,然后确定版本发布再各服务器 git pull

  • 回答于 2017-05-10 15:47 举报

    额 是做了负载均衡吗 那在nginx层就有自动同步吧

    2 条回复
    回复于 2017-05-10 18:52 回复

    你有做过这个吗?

    回复于 2017-05-11 09:25 回复

    公司运维做,我看过,具体不晓得看他们弄的貌似没那么复杂,貌似有工具配置一下就行,自动就同步了,负载均衡一般底层服务器同步都是这种处理方式吧

  • 回答于 2017-05-11 04:51 举报

    学习一下吧

  • 回答于 2017-05-15 16:49 举报

    这种 git做法,本人觉的不适合
    要是我,我会采用以下方式
    五台服务器会有一块是共享存储。相当于5台服务器+一台存储服务器
    每一台的服务器的/srv/htdocs/webs都是挂载这存储服务器的一块空间。这样在修改随便哪台服务器的 webs 其实都是同一个地方。

    2 条回复
    回复于 2017-05-20 14:15 回复

    要是存储的挂了 就全 .....

    回复于 2017-05-22 17:32 回复

    存储又可以一分二,主备方案,方案都是这么来的。

您需要登录后才可以回答。登录 | 立即注册
Alian
助理

Alian

注册时间:2015-12-30
最后登录:2018-08-27
在线时长:9小时42分
  • 粉丝0
  • 金钱70
  • 威望0
  • 积分160

热门问题