自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 私有云中Kubernetes Cluster HA方案

发现很多Kubernetes刚入门的同学对Kubernetes的Master高可用方案很感兴趣,官方又只给出了GCE上部署高可用的方案,因此我觉得有必要把我之前做的Kubernetes Master HA方案分享一下。

2017-10-25 22:58:16 9641

原创 如何落地TensorFlow on Kubernetes

TensorFlow 作为最受欢迎的 Deep Learning 框架,已经火到没有朋友,然而在落地时,你会发现 TensorFlow 也并不是那么完美,它面临着资源隔离、进程难于管理、 PS 进程不能自动结束等诸多问题,我们还需要一个分布式框架配合使用才能发挥 Distributed TensorFlow 的真正威力,我想这个任务交给 kubernetes 最合适不过了。

2017-10-22 13:06:45 11889

原创 浅尝TensorFlow on Kubernetes

TensorFlow github 70K+ stars, Kubernetes github 27K+ stars, 两个都是在各自领域的霸主,本文从TensorFlow running in Kubernetes的角度,对两者的整合进行梳理和思考,看看能擦出什么样的火花。

2017-09-28 08:40:30 18535 4

原创 Kubernetes Job Controller源码分析

对于一般用户,学习和使用Job,官方文档就足够了,但如果你是个BT,那你总会去想,Job Controller和Deployment Controller在管理Pod上,除了RestartPolicy等不同外,还有哪些不同呢?其实是因为最近在搞TensorFlow on Kubernetes项目,想通过Job映射分布式TensorFlow中的worker task,达到训练完数据,自动回收资源资源等目的。

2017-09-21 20:38:04 18820

原创 Kubernetes Deployment滚动更新场景分析

本博文对以下Kubernetes滚动更新场景进行了测试分析:正常滚动更新流程;应用滚动更新时,用户删除应用;应用滚动更新时,用户对该应用进行扩容;应用滚动更新时,用户对该应用进行缩容;应用扩容时,进行滚动更新;应用缩容时,进行滚动更新;应用回滚;滚动更新未完成时,又开始新的滚动更新;

2017-09-03 21:57:48 17129

原创 使用DaemonSet+Taint/Tolerations+NodeSelector部署Nginx Ingress Controller

本博文,介绍了使用DaemonSet+NodeSelector+Tolerations的方式定义Nginx Ingress Controller,给专门节点打上Label+Taint,使得这些专门节点只运行Nginx Ingress Controller,而不会调度和运行其他业务容器,只用来做代理节点。

2017-08-25 21:17:34 19751

原创 聊聊你可能误解的Kubernetes Deployment滚动更新机制

Kubernetes Deployment滚动更新机制不同于ReplicationController rolling update,Deployment rollout还提供了滚动进度查询,滚动历史记录,回滚等能力,无疑是使用Kubernetes进行应用滚动发布的首选。本博文,将带你聊聊那些容易被大家忽略或者误解的特性。

2017-08-21 23:12:32 31619

原创 Kubernetes PodGC Controller源码分析

PodGC Controller作为Kubernetes默认启动的Controllers之一,在Master后台每隔20s进行一次Pod GC。回收的Pod对象为那些Orphaned和UnscheduledTerminating Pod。如果Terminated Pod number大于terminatedPodThreshold(默认为12500),回收超出的Terminated Pods。

2017-08-13 11:50:47 14157 3

原创 Kubernetes Nginx Ingress Controller源码分析

本博文对Nginx Ingress Controller源码分析。

2017-08-07 23:35:31 16815

原创 Kubernetes Node Controller源码分析之Taint Controller

Node Controller是Kubernetes几十个Controller中最为重要的Controller之一,其重要程度在Top3,然而这可能也是最为复杂的一个Controller,因此对其的源码分析,我将做一个系列文章。本博文主要对Node Controller触发的Taint Controller进行源码分析,看看NoExecuteTaintManager是如何进行Taint Pod Evictions的。

2017-08-01 00:57:18 12092

原创 Kubernetes Node Controller源码分析之创建篇

Node Controller是Kubernetes几十个Controller中最为重要的Controller之一,其重要程度在Top3,然而这可能也是最为复杂的一个Controller,因此对其的源码分析,我将做一个系列文章,希望能帮助自己有一个深入的理解。本博文主要对Node Controller的创建流程进行源码分析。

2017-07-29 22:41:49 14666

原创 Kubernetes Node Controller源码分析之执行篇

我认为,Node Controller是Kubernetes几十个Controller中最为重要的Controller之一,其重要程度在Top3,然而这可能也是最为复杂的一个Controller,因此对其的源码分析,我将做一个系列文章,希望能帮助自己有一个深入浅出的理解。本博文从NodeController的Run方法作为入口,对其工作原理作了跟踪分析。

2017-07-24 00:17:56 18756

原创 Kubernetes Node Controller源码分析之配置篇

我认为,Node Controller是Kubernetes几十个Controller中最为重要的Controller之一,其重要程度在Top3,然而这可能也是最为复杂的一个Controller,网上还没有Node Controller的源码分析的文章,因此我觉得有必要对此做一个系列文章,希望能帮助自己有一个深入浅出的理解。本博文主要对NodeController的启动、定义及其行为配置做出一些分析。

2017-07-18 00:45:52 20656

原创 生产环境中使用容器的10点注意事项

根据gravitational/workshop/k8sprod.md的描述,提炼出关于生产环境中使用容器时需要注意的10点注意事项,作为我们的参考,有些不一定能完全做到。

2017-06-27 00:25:37 11817

原创 容器时代CI/CD平台中的Kubernetes调度器定制方法

本博文是我在2017深圳Jenkins Meetup演讲的胶片,关于Jenkins+Kubernetes的内容和Kubernetes调度器的定制方法。另外,欢迎大家扫描后面的二维码关注我们和加入我们。

2017-06-19 22:33:23 16920 1

原创 Kubernetes集群安全配置

更多关于kubernetes的深入文章,请看我csdn或者oschina的博客主页。这两天在梳理Kubernetes集群的安全配置,涉及到各个组件的配置,最终决定画一个图来展现,应该会更清晰。

2017-06-07 23:29:47 18827

原创 Controlling Access to the Kubernetes API

Abtout The Controlling Access to the Kubernetes API

2017-06-02 21:09:03 16152

原创 从源码看kubernetes与CNI Plugin的集成

摘要:基于kubernetes 1.6.2的代码,对kubelet于CNI Plugin交互的代码进行了分析,看看kubelet是在什么时候通过什么方式调用的CNI Plugin的。

2017-05-23 23:10:47 21352

原创 kube-scheduler最佳配置

kube-scheduler最佳配置。

2017-05-23 21:04:18 13762

原创 kube-controller-manager最佳配置

kube-controller-manager最佳配置梳理

2017-05-23 20:37:55 15846

原创 如何对kubernetes scheduler进行二次开发

本博文分析了从两个方向入手对kubernetes scheduler进行定制开发。1. 通过新增Predicates&Priorities Policies来扩展default scheduler。2. 通过新增自定义调度器,并指定pod的调度器。

2017-05-13 09:08:19 28061 1

原创 kubelet 最佳配置

这两天试着重新去理解kubelet的每一个配置,并整理出我们最有可能要配置的项作为我们上生产的要考虑的kubelet最佳配置。

2017-05-04 00:16:40 19968

原创 Kubernetes HPA Controller源码分析

本博文对Kubernetes的HorizontalPodAutoscaler的代码实现进行了分析,包括源码目录结构分析,关键代码走读分析,内部实现原理图,希望能帮助大家深入的理解k8s实现auto scale的原理。

2017-04-21 01:06:09 26799

原创 kubeadm工作机制分析

kubeadm是Kubernetes 1.4开始新增的特性,用于快速搭建Kubernetes集群环境,两个命令就能把一个k8s集群搭建起来。之前广为诟病的“k8s环境搭建难”的问题,很快得到突破性的解决。本博文是对kubeadm工作原理和流程的分析,一窥其内部的工作流,让你对他的神秘感不再。

2017-04-13 22:49:41 21025 1

原创 Kubernetes HPA Controller工作原理

摘要: 本博文主要讲述了Kubernetes Horizontal Pod Autoscaler Controller的工作原理,剖析它是如何根据metrics监控进行replicas的auto scale的。在我的下一篇博客,会对HPA Controller进行源码分析。

2017-04-05 21:41:01 23919

原创 Kubernetes ReplicationController源码分析

基于kubernetes v1.5代码对kube-controller-manager管理的ReplicationController控制器的源码解析,分析它是如何工作的,以完成pod replicas的自动修复工作的。

2017-03-16 18:44:02 23729

原创 Kubernetes对Container Capabilities的支持

相信玩过docker的同学,都对Docker Container Capability有过了解。我曾经在项目中因为修改网卡配置权限问题,需要配置容器的Capabilities(NET_ADMIN),当时做过一些研究。今天突然有个同事问我,在Kubernetes中怎么配置容器的Capabilities呢?本文就全面介绍一下这方面的内容。

2017-03-15 15:35:10 19608

原创 Kubernetes Eviction Manager源码分析

本文作为Kubernetes Eviction Manager工作机制分析的后续篇,主要通过源码分析对其工作机制进行解读。

2017-02-21 22:38:05 16931

原创 Kubernetes Eviction Manager工作机制分析

摘要:为了极限的压榨资源,很多时候Kubernetes集群会运行一些Best-Effort Task,这样就会存在资源超配的情况,Kubernetes是如何控制Node上资源的使用,在压榨资源使用的同时又能保证Node的稳定性?本文就为你介绍其背后运行机制。

2017-02-19 14:29:49 20041 1

原创 kube-proxy源码分析

本文对kube-proxy的源码目录结构进行了分析,并以iptables mode为例进行了完整流程的源码分析,给出了其内部实现的模块逻辑图,希望对你深入理解kube-proxy有所帮助。

2017-02-16 23:09:12 28967

原创 kube-proxy工作原理

摘要:本文对kube-proxy做了一些总结说明,对其内部的实现原理进行了研究,并对userspace和iptables两种mode的缺点进行的描述,都通过例子说明了iptable的工作。

2017-02-16 00:48:29 38246

原创 Kubernetes Resource QoS机制解读

Kubernetes Resource QoS介绍,机制解析和简单的源码分析。

2017-02-12 21:31:07 28513

原创 Kubernetes ResourceQuota Controller内部实现原理及源码分析

本文是对基于Kubernetes V1.5的代码,对ResourceQuotaController的原理分析和源码分析,给出了对应的源码目录结构分析,内部实现原理图,及其完整流程的源码分析,希望能帮助你对Kubernetes ResourceQuota和ResourceQuotaController有更深入的了解。

2017-01-22 20:21:20 24821 1

原创 Kubernetes Scheduler的Predicates和Priorities Policies解读

Predicates Policies分析在/plugin/pkg/scheduler/algorithm/predicates.go中实现了以下的预选策略:NoDiskConflict:检查在此主机上是否存在卷冲突。如果这个主机已经挂载了卷,其它同样使用这个卷的Pod不能调度到这个主机上。GCE,Amazon EBS, and Ceph RBD使用的规则如下:GCE允许同时挂载多个卷,只要这些卷

2017-01-18 20:35:41 15605

原创 从源码解析kube-scheduler默认的配置

本文作为Kubernetes Scheduler源码分析的番外篇,补充一个方面的分析:从源码层面解析kube-scheduler的默认配置是怎么做的。

2017-01-17 20:24:27 16276

原创 Kubernetes Scheduler源码分析

本文是对Kubernetes 1.5的Scheduler源码层面的剖析,包括对应的源码目录结构分析、kube-scheduler运行机制分析、整体代码流程图、核心代码走读分析等内容。阅读本文前,请先了解kubernetes scheduler原理解析。Kubernetes源码目录结构分析Kubernetes Scheduler是作为kubernetes的一个plugin来设计的,这种可插拔的设计极大

2017-01-15 23:25:54 30568 11

原创 Kubernetes Scheduler原理解析

本文是对Kubernetes Scheduler的算法解读和原理解析,重点介绍了预选(Predicates)和优选(Priorities)步骤的原理,并介绍了默认配置的Default Policies。接下来,我会分析Kubernetes Scheduler的源码,窥探其具体的实现细节以及如何开发一个Policy,见我下片博文吧。Scheduler及其算法介绍Kubernetes Scheduler

2017-01-13 16:32:30 44425 11

原创 Mesos+Marathon对比Kubernetes

本文是我之前在技术选型时给团队做的一次分享内容,做了一次相对全面的关于Kubernetes 1.2 和 Mesos 0.28 + Marathon 1.2的对比, 其中有部分内容是它们特有的一些特性介绍。

2017-01-11 10:31:34 24799 5

原创 Kubernetes DNS Service技术研究

本文主要是对kubernetes 1.2和1.3+的DNS Service的内部实现分别进行研究,得出其内部实现框架和交互逻辑,并对它们的实现进行了比较。

2017-01-10 19:46:56 26841

原创 SkyDNS2源码分析

SkyDNS2是SkyDNS Version 2.x的统称,其官方文档只有README.md,需要对代码进行一定的分析,才能让你对其有跟好的理解,这就是本文的工作,通过走读SkyDNS的代码,了解其内部架构及其工作原理。

2017-01-09 22:57:37 28320

空空如也

空空如也

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

TA关注的人

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