目前来看,几家历史包袱较重的公司都选择不让上层应用感知到底层是 VM 还是容器,所以都改了 docker 内核,如360、点评、汽车之家。最后附上窝窝团商城的容器私有云技术栈以及系统截图。

【国内专业Docker容器云服务商有:daocloud、希云cSphere、灵雀云、数人云、精灵云、新浪云、时速云、bocloud】

点评容器技术栈

  • 2014年启动基于 docker 搭建私有云,之前谈不上使用过私有云

  • 运维工具:Puppet

  • NATS+Nginx+Zookepper:

    • 组件之间的交互使用了 NATS,通过消息的『发布-订阅』模型,将各个组件之间的耦合最小化

    • 对于Web类型的应用,通过和 Nginx 暴露的 Restful 接口交互,完成实例在集群内的注册以及注销。对于服务类型的应用,通过在 ZooKeeper 上注册和注销服务IP和端口,便于服务客户端发现和更新该服务

  • 技术改造:

    • 由于不愿意让技术人员感知到从 KVM 到 Docker 的转换,所以做了不少工作(注:主要还是不愿意影响原有业务和发布流程)

    • 更改了 Docker 底层代码,让其从推荐的微服务架构演变到目前的『虚拟机』架构。开发和运维可以通过 IP 直接访问到 Docker『虚拟机』,基于IP的应用基础架构也不需要开发和运维做剧烈的改变

  • 使用情况:

    • 基本上除搜索和数据库以外,点评现有的业务大多都有跑到容器上的

  • 监控改造:

    • 通过收集 CGroups 和容器实例的实时信息,将内存、CPU、网络等源源不断地上报到 CAT,再由 CAT 提供查询,检索和展示。也可以做报警

  • 组网:

    • Bridge Networking 工作在 level 2 的模式,使公共 IP 得以暴露出来,这部分是做了定制的

360容器技术栈

  • 运维工具:集群变更用 Puppet(master/slave)

  • 持续集成:jenkins(master/slave)+mesos+marathon+zookeeper

  • 技术改造:

    • docker 底层改造

      • 能够设置 btrfs 磁盘限额,网络限速,IO 限制

      • 容器独立IP

      • 容器内多进程

  • registry V2

一些优化细节:

  • 利用 Jenkins master-多个slave 缩短构建时间:

    • 分布式提高 build 性能

    • slave 记忆利用 cache

  • 利用 btrfs 和 ssd 缩短构建时间:

    • devicemapper 换成 btrfs

    • sas 硬盘换成 ssd 的

UCloud容器技术栈

  • docker版本:1.1.1,1.8.2

  • 发行版:centos 6.x

  • k8s版本:1.0.6

  • 实践经验:

    • docker日志:日志打印耗费性能,最好关闭 logdriver,将日志打印在后台

    • docker daemon:centos 6.3 service stop 耗时长,需要5分钟,是 init-scripts 的 bug

    • docker网络:

      • NAT模式下会启用 nf_conntrack 造成性能下降,可以调节内核参数

    • 合理设置 ulimit

    • docker镜像:

      • 制作镜像时,commit 的信息要简单明了

      • 编写 dockerfile 规范,减少镜像层数,基础部分放前面

      • 分地域部署镜像 registry

汽车之家容器技术栈

  • docker版本:1.6.2

  • linux发行版:centos 6.4 kernel 3.10和4.0

  • registry V2

  • 构建:

    • 有单独机器做构建

    • 基于centos:7+systemd+zabbix

  • Docker Hub

    • Docker Registry 2.0

    • Registry 本身不能够高可用,Nginx 负载多个 Registry

    • 使用网络存储共享镜像

    • 配置 Mirroring,获取官网镜像

  • Docker应用-网络问题

    • Docker 目前提供的网络模式不适合业务环境

    • --iptables =false

    • 修改 Docker 内核改成静态 IP 模式

    • IP 是通过容器名字为标识从 IP Pool 获取

蚂蚁金服PAAS docker提到的迁移问题

  • 老应用迁移的痛

    • 谁来写Dockerfile并制作应用镜像

      • 蚂蚁线上已经有上千应用,几千开发人员,很难一下推动他们都学习 docker,切换到新的研发模式下

      • 如果需要开发人员写 dockerfile,会影响推广效率

    • 蚂蚁原有的运维/监控/SCM/财务等系统都是以 vm 为纬度的

      • 基于 docker 的运维发布系统与原有系统对接比较麻烦

      • 以往运维都是先申请一批机器,测试网络正常后备用,上线前再决定跑什么应用

      • 发布应用不重启 vm,所以也不希望重启 container;

    • 怎么尽量保证开发测试环境与生产环境一致

  • 应对策略

    • 开发辅助工具帮助研发同学编译应用/自动生成 dockerfile/制作镜像并搭建测试环境

    • 把 CAAS 当作轻量级的 IAAS,让运维把 container 当作轻量级 vm 用,便于和已有系统对接

  • 使用通用的 sofa4/sofa3 container,可以不需要制作应用镜像

  • 在基础镜像中集成 sshd,运行运维 ssh 到 container 中

  • 使用 supervisor 启动应用和相关监控/运维 agent

  • 提供 webconsole 允许开发人员登录 container 查看日志/进行一定权限的 操作

  • 使用 data container 避免本地 mount

最后列举一下我们技术团队的容器私有云技术栈

截止到2016年1月,窝窝容器管理集群的技术栈包括以下内容:

  1. mesos(资源调度)

  2. marathon(服务编排)

  3. chronos(分布式计划任务)

  4. docker(容器引擎)

  5. consul+registrator(服务注册和发现)

  6. haproxy(负载均衡)

  7. prometheus(服务监控)(注:同时数据也会推送到天机系统的 OpenTSDB 里)

  8. nagios/zabbix(节点监控)

  9. salt(节点配置管理)

  10. cobbler(节点自动化装机)

  11. ELK(日志收集分析)

    12.rabbitmq性能测试

窝窝持续集成管理平台在这些技术的基础上,实现了我们的集群管理、容器管理、应用管理等业务流程。

一些系统截图如下所示:

参考文档:基于容器云的微服务架构实践 http://www.chinacloud.cn/show.aspx?id=21002&cid=16

-END-

各大公司docker容器云的技术栈对比相关推荐

  1. 各大公司容器云的技术栈对比

    郑昀编著于2015/10/20 目前来看,几家历史包袱较重的公司都选择不让上层应用感知到底层是 VM 还是容器,所以都改了 docker 内核,如360.点评.汽车之家.最后附上我们的容器私有云技术栈 ...

  2. 灵雀云首席架构师:Docker容器的监控技术

    前言 在Docker容器技术飞速发展之时,监控容器的效率与健康也变成了至关重要的需求.在Docker资深提供的监控技术逐渐成熟时,来自第三方的监控工具也同时步入了人们的视线. 本文将为大家介绍Dock ...

  3. 10张图带你深入理解Docker容器和镜像--云平台技术栈07

    导读:之前发布了云平台技术栈(ps:点击可查看),本文主要说一下其中的Docker! 翻译:杨润青 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(image ...

  4. 五阿哥钢铁电商平台Docker容器云平台建设实践——你想知道的都在这里!

    前言 五阿哥钢铁电商平台(www.wuage.com)是由钢铁行业第一的中国五矿与互联网第一的阿里巴巴联手打造,并充分运用双方股东优势资源,即:阿里巴巴在大数据.电商运营.互联网产品技术上的巨大优势, ...

  5. 钢铁电商平台的Docker容器云平台建设实践

    2019独角兽企业重金招聘Python工程师标准>>> 作者简介:刘晓明,五阿哥(www.wuage.com)公司运维技术负责人,拥有10年的互联网开发和运维经验.一直致力于运维工具 ...

  6. 腾讯企业容器云平台技术解析

    GaiaStack 是腾讯基于 Kubernetes 打造的容器私有云平台.它服务于腾讯内部各个 BG 业务,如广告.支付.游戏等.同时也为腾讯云的各行业客户私有云部署提供支持.本文将从自动化运维体系 ...

  7. 五阿哥钢铁平台Docker容器云平台建设经验分享——你想知道的这里都有!

    前言 五阿哥钢铁电商平台(www.wuage.com)是由钢铁行业第一的中国五矿与互联网第一的阿里巴巴联手打造,并充分运用双方股东优势资源,即:阿里巴巴在大数据.电商运营.互联网产品技术上的巨大优势, ...

  8. 五阿哥钢铁平台Docker容器云平台建设经验分享——你想知道的这里都有!!

    摘要 五阿哥钢铁电商平台(www.wuage.com)是由钢铁行业第一的中国五矿与互联网第一的阿里巴巴联手打造,并充分运用双方股东优势资源,即:阿里巴巴在大数据.电商运营.互联网产品技术上的巨大优势, ...

  9. 漫谈云计算、虚拟化、容器化--云平台技术栈05

    导读:之前发布了云平台技术栈(ps:点击可查看),本文主要说一下其中的虚拟化! 什么是云计算? 1.1 云计算概念 云计算是最近几年才兴起的概念,但是这样的需求其实早都有了,现阶段广为接受的是美国国家 ...

最新文章

  1. [Qt-creator]实用技巧----基于ubuntu
  2. centos ftp服务器搭建_ftp软件,ftp软件安装使用教程,利用Serv-U如何搭建ftp服务器?...
  3. React with Webpack - 2: css 处理
  4. MFC载入JPG图片
  5. myisam数据表根据frm文件恢复数据表
  6. 摇滚bono_Java比以往任何时候都摇滚
  7. docker machine介绍和使用
  8. struts学习笔记(一):Struts相关基础理论介绍
  9. redis 的 key 设计原则
  10. 蓝墨云活动三种查找算法练习的分析博客
  11. ubuntu php oracle,Oracle数据库之php在ubuntu上安装oracle的扩展
  12. 踩过坑才懂:如何快速打造技术产品
  13. 【优化算法】人工蜂鸟优化算法(AHA)【含Matlab源码 1470期】
  14. Ubuntu20安装gcc11
  15. 微信登录分享...报错...MicroMsg.SDK.WXApiImplV10: handleIntent fail, ex = println needs a message
  16. V-Rep机器人仿真软件模型导入部分
  17. 2021年中国国家级高新区 (科技园)数量、产值及营业收入分析[图]
  18. 列举几个:MAC OS科研软件推荐
  19. Android webView 无法加载微信公众号图片
  20. python线程池ThreadPoolExecutor和as_completed的用法示例

热门文章

  1. 一位公司老板,上午尝试了 ChatGPT,下午裁员40%
  2. 国家科技奖获奖项目巡礼:创新英雄们这么说
  3. mysql中的case when then使用
  4. 谈谈页面流程图(附案例) | 人人都是产品经理
  5. 区块链扫码溯源防伪直购,重构新零售信任体系建设
  6. 【PCL】—基于形态学的点云分割算法详解
  7. 基于Android的航班查询系统的设计与实现
  8. NZND-逐浪字库死瞌传统厂商开放源码?
  9. Scratch编程:牛顿的苹果——地心引力
  10. 初中数学老师计算机培训反思,初中数学教师培训研修总结范文(精选5篇)