DevOps 基于Walle的小型持续集成实战(七)总结

栏目: 服务器 · 发布时间: 5年前

内容简介:当前版本针对于2.0 docker安装版整体流程贯通,基本可以达到实用级别。满足2-5台服务器,少量的应用部署是完全可以的,但达到一定规模之后则Walle和Jenkins的差异马上就出来了,Walle的环境管理,服务器管理,上线通知,和各插件集成在这些巨大差距看来难以逾越。而除开Walle本身,整套设计还有不少可以优化的点,例如编译脚本,容器部署等。

当前版本针对于2.0 docker 安装版

概要

整体流程贯通,基本可以达到实用级别。满足2-5台服务器,少量的应用部署是完全可以的,但达到一定规模之后则Walle和Jenkins的差异马上就出来了,Walle的环境管理,服务器管理,上线通知,和各插件集成在这些巨大差距看来难以逾越。而除开Walle本身,整套设计还有不少可以优化的点,例如编译脚本,容器部署等。

Walle仍旧有很多需要提高的地方

  • 发布构建时(部署上线)服务器卡顿严重,基本不可以多项目发布。
  • 构建队列,不能按队列同时发布多个任务逐一执行
  • 并行构建,不能同时执行通过任务
  • 自定义脚本,针对非git的项目不友善
  • 缺少构建参数,目前仅有git的分支号和提交号,有时候需要传入额外参数作用于启动命令中
  • 环境变量,安装较为困难,docker-compose-python中对各环境变量支持不好。(例如angular-cli,使用起来相当别扭)

该实战中 - 编译脚本可以优化的地方

  • 重复脚本多,可以使用其他方式进行脚本管理,并相互引用。例如直接运行shell,groovy,python等。在环境准备时从git拉去脚本库
  • 远程包发布,在无Ansible加持的情况下,远程多服务器发布的效率不可恭维(虽然比人工强)。

该实战中 - 容器部署可以优化的地方

  • 日志查询难,运行时需要修改为sh方式启动。nohup无法直接使用,导致查询日志时候需要docker log等命令,学习成本较高
  • 服务监控难,docker-compose无法胜任大规模集群机器的监控(还是需要k8s啊)

该实战中 - 经验分享

  • Docker内openjdk8运行时区不一致:可以直接同宿主机映射时间命令;然后服务启动设置额外参数(参考文章五,java部署篇)
  • Docker-compose启动,则必须用Docker-compose命令停止;否则docker网络无法关闭会超出30个上线

后续

  • 想当初“docker学起来真麻烦,我又没那么多机器,不管怎么我也不愿意用这些东西”,现在===>“Docker,真香!”
  • PS:最近可能会开一章k8s + SpringCloud部署实战

以上所述就是小编给大家介绍的《DevOps 基于Walle的小型持续集成实战(七)总结》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

颠覆者:周鸿祎自传

颠覆者:周鸿祎自传

周鸿祎、范海涛 / 北京联合出版公司 / 2017-11 / 49.80元

周鸿祎,一个在中国互联网历史上举足轻重的名字。他被认为是奠定当今中国互联网格局的人之一。 作为第一代互联网人,中国互联网行业最好的产品经理、创业者,他每时每刻都以自己的实践,为互联网的发展贡献自己的力量。 在很长一段时间内,他没有在公共场合发声,甚至有粉丝对当前死水一潭的互联网现状不满意,发出了“人民想念周鸿祎”的呼声。 但周鸿祎在小时候,却是一个踢天弄井,动不动就大闹天宫的超级......一起来看看 《颠覆者:周鸿祎自传》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换