自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 如何扩展单个Prometheus实现近万Kubernetes集群监控?

引言TKE团队负责公有云,私有云场景下近万个集群,数百万核节点的运维管理工作。为了监控规模如此庞大的集群联邦,TKE团队在原生Prometheus的基础上进行了大量探索与改进,研发出一套可扩展,高可用且兼容原生配置的Prometheus集群系统,理论上可支持无限的series数目和存储容量,支持纳管TKE集群,EKS集群以及自建K8s集群的监控诉求。本文从TKE的架构出发,逐步介绍了整个监控系统的演进过程,包括早期的方案和遇到的问题,社区方案的瓶颈,我们的改进原理等。TKE架构简介为了让读者更好理解

2020-08-31 18:24:08 1468

原创 【Pod Terminating原因追踪系列之三】让docker事件处理罢工的cancel状态码

本篇为Pod Terminating原因追踪系列的第三篇,前两篇分别介绍了两种可能导致Pod Terminating的原因。在处理现网问题时,Pod Terminating属于比较常见的问题,而本系列的初衷便是记录导致Pod Terminating问题的原因,希望能够帮助大家在遇到此类问题时,开拓排查思路。本篇将再介绍一种造成Pod Terminating的原因,即处理事件流的方法异常退出导致的Pod Terminating,当docker版本在19以下且containerd进程由于各种原因(比如OOM)

2020-08-28 18:00:34 989

原创 让“不确定性”变得有“弹性”?基于弹性容器的AI评测实践

0. 前言AI的场景丰富多彩,AI的评价方法百花齐放,这对于设计一套更通用的评测框架来说,是一个极大的挑战,需要兼顾不同的协议,不同的模型环境,甚至是不同的操作系统。本文分享了我们在AI评测路上的一些实践经验,重点介绍了我们在解决执行环境的不确定性方面所做的一些尝试。弹性容器是我们当前最合适的解决方案,期望对大家也有所启发。1. AI评测是什么?在当前的AI产品研发中,需要经常回答类似这样的问题。比如哪一款智能音箱更好一些,哪一款引擎更加厉害,或者是哪一个机器学习算法更适合我去用。诸如此类,要回答

2020-08-27 17:52:32 559

原创 Nginx Ingress on TKE 部署最佳实践

概述开源的 Ingress Controller 的实现使用量最大的莫过于 Nginx Ingress 了,功能强大且性能极高。Nginx Ingress 有多种部署方式,本文将介绍 Nginx Ingress 在 TKE 上的一些部署方案,这几种方案的原理、各自优缺点以及一些选型和使用上的建议。Nginx Ingress 介绍在介绍如何部署 Nginx Ingress 之前,我们先简单了解下什么是 Nginx Ingress。Nginx Ingress 是 Kubernetes Ingress 的

2020-08-26 18:00:13 969

原创 揭秘|一探腾讯基于Kubeflow建立的多租户训练平台背后的技术架构

腾讯业务及组织架构现状先简单和大家介绍一下腾讯内部的业务及相关组织架构的现状,有助于帮助大家理解为什么我们会基于后面的架构来设计整套方案。下图的应用大多数人经常会用到,比如微信、腾讯视频、游戏等等APP,其背后承载的技术也不尽相同,涉及了NLP、计算机视觉、强化学习、语音等不同的AI技术。比如我们玩的《王者荣耀》或者下围棋,背后所对应的就是用强化学习训练出来的一个机器人,玩游戏没有队友陪同时,机器人可以满足我们对战合作等游戏需求。不同的业务部门,APP对外需求也不同,均会针对自己的业务场景做一些A

2020-08-25 17:56:28 1651

原创 深入了解服务网格数据平面性能和调优

在腾讯,已经有很多产品已使用或者正在尝试使用istio来作为其微服务治理的基础平台。不过在使用istio时,也有一些对通信性能要求较高的业务会对istio的性能有一些担忧。由于envoy sidecar的引入,使两个微服务之间的通信路径变长,导致服务延时受到了一些影响,istio社区一直以来也有这方面的声音。基于这类抱怨,我们希望能够对这一通信过程进行优化,以更好的满足更多客户的需求。首先,我们看一下istio数据面的通信模型,来分析一下为什么会对延时有这么大的影响。可以看到,相比于服务之间直接通信,在引

2020-08-24 18:01:04 1102

原创 【Pod Terminating原因追踪系列之一】containerd中被漏掉的runc错误信息

前一段时间发现有一些containerd集群出现了Pod卡在Terminating的问题,经过一系列的排查发现是containerd对底层异常处理的问题。最后虽然通过一个短小的PR修复了这个bug,但是找到bug的过程和对问题的反思还是值得和大家分享的。本文中会借由排查bug的过程来分析kubelet删除Pod的调用链,这样不仅仅可以了解containerd的bug,还可以借此了解更多Pod删除不掉的原因。在文章的最后会对问题进行反思,来探讨OCI出现的问题。一个删除不掉的Pod可能大家都会遇到这种问

2020-08-20 12:02:00 2883 2

原创 【Pod Terminating原因追踪系列之二】exec连接未关闭导致的事件阻塞

前一阵有客户docker18.06.3集群中出现Pod卡在terminating状态的问题,经过排查发现是containerd和dockerd之间事件流阻塞,导致后续事件得不到处理造成的。定位问题的过程极其艰难,其中不乏大量工具的使用和大量的源码阅读。本文将梳理排查此问题的过程,并总结完整的dockerd和contaienrd之间事件传递流程,一步一步找到问题产生的原因,特写本文记录分享,希望大家在有类似问题发生时,能够迅速定位、解决。对于本文中提到的问题,在docker19中已经得到解决,但docke

2020-08-20 11:58:47 917 1

原创 大型Kubernetes集群的资源编排优化

背景云原生这个词想必大家应该不陌生了,容器是云原生的重要基石,而Kubernetes经过这几年的快速迭代发展已经成为容器编排的事实标准了。越来越多的公司不论是大公司还是中小公司已经在他们的生产环境中开始使用Kubernetes, 原生Kubernetes虽然已经提供了一套非常完整的资源调度及管理方案但是在实际使用过程中还是会碰到很多问题:集群节点负载不均衡的问题业务创建Pod资源申请不合理的问题业务如何更快速的扩容问题多租户资源抢占问题这些问题可能是大家在使用Kubernetes的过程中应该

2020-08-19 18:15:20 681

原创 基于Rust-vmm实现Kubernetes运行时

随着容器及K8s的广泛使用,越来越多的容器安全与隔离问题被暴露出来,如:容器逃逸、水平攻击、DDos攻击等严重威胁了办公和生产环境的安全与稳定,影响了业务的正常运行。安全容器技术孕育而生,产生了kata、gVisor、unikernel等多种安全容器方案。本文旨在介绍各种安全容器方案,分析各方案特点,结合腾讯在容器安全领域的实践,帮助读者选择适合自身特性的容器运行时。同时引入Rust-VMM项目,介绍 Rust-VMM 技术和生态,演示如何使用K8s调度和启用Rust-VMM安全容器运行时,展望以Rust语

2020-08-18 12:03:51 1480

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除