加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 电商 > 正文

携程:我们是如何利用容器实现快速弹性伸缩的?

发布时间:2021-01-12 14:43:04 所属栏目:电商 来源:网络整理
导读:《携程:我们是如何利用容器实现快速弹性伸缩的?》要点: 本文介绍了携程:我们是如何利用容器实现快速弹性伸缩的?,希望对您有用。如果有疑问,可以联系我们。 作者简介 : 吴毅挺 携程系统研发部高级总监 2012年加入携程,从零组建携程云平台团队,目前负

图7

1)自定义?CExecutor,Go?语言实现

  • 避免过于频繁创建删除容器,带来的副作用;
  • cpuload?高而且抖动很大;
  • 频繁启停容器引发的?docker?和?kernel?的?bug;

2)task:container

-1:1 -> N:1

3)容器持久化

如图?7,可以观察得到前段抖动非常厉害(如果过渡频繁地创建删除容器,会带来非常大的负担,抖动会非常高),在用?1:1?调度之后就变得平缓了.所以携程自定义 CExecutorr(Go?语言实现),避免过于频繁创建删除容器,带来的副作用(抖动非常强、load非常高),之后就基本上处于水平线了.

七、容器监控方案

1、Mesos?监控

图?8

图?9

如图?8-9?携程用了很多开源技术,Telegraf、influxdb、Grafana?并做了一些扩展来实现 mesos 集群的监控,采集 mesos-master 状态、task执行数量、executor 状态等等,以便当 mesos 集群出现问题时能第一时间知道整个集群状态,进而进行修复.

此外,我们还从 mesos 调度入手,做了一些应用层的监控,比如: 针对 cron job 类型的应用,让用户可以看到 job 应该在什么时候执行,执行的过程,整个 job 的成功率,job 还有多个实例在跑等;

2、容器监控

图?10

携程监控团队全新开发了一套监控系统?hickwall,也实现了对容器的监控支持;hickwall agent 部署在容器物理机上,通过 docker client 、cgroup等采集容器的运行情况,包括?CPU?、Memory、Disk?IO 等常规监控项;

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读