背景情况

从Docker1.11版本开始,Docker依赖于containerd和runC来管理容器,containerd是控制runC的后台程序,runC是Docker公司按照OCI标准规范编写的一个操作容器的命令行工具,containerd这个后台程序还可以操作满足OCI标准规范的其他容器工具,也就意味着以后只要是按照OCI标准规范开发的容器工具,都可以被containerd使用起来。使用containerd好处是,当docker daemon或者containerd两个进程crash后,应用容器不会“死掉”,未来要是实现的功能是,当containerd daemon重新启动后可以同应用容器重新建立连接。

从Docker1.11版本开始,daemon模块调用关系图如下:

美国时间12月14日,Docker公司宣布将containerd从Docker Engine中分离,并捐赠到一个新的开源社区独立发展和运营,阿里云,AWS, Google,IBM和Microsoft作为初始成员,会为项目提供贡献和维护人员。

1.7新特性----支持绕过docker,直接通过containerd管理容器

在Kubernetes1.7中,增加了直接通过调用containerd来管理容器的α新特性。

从上图中可以明显的看出来绕过docker,直接通过containerd管理容器,可以节省一个操作步骤,那么这样会带来很多好处:

1、  由于减少了一个操作步骤,提高了系统效率,并且系统更易于维护。

2、  取消了DockerDaemon,整个系统占用的资源更少了,可以给业务使用的资源变多了。

3、  不依赖DockerDaemon,整个系统更加开放。

4、  由于kubelet并没有变化,那么不影响以前用户使用。

要让kubernetes直接通过containerd管理容器,需要下面几个步骤:

1、  安装:containerd:v0.2.3-1098-g8ed1e24

2、  安装runc:v1.0.0-rc3

3、  安装cni: v0.4.0

4、  按照kubernetes:v1.7.0以及以上版本

5、  在kubernetes集群中配置CONTAINER_RUNTIME=remoteCONTAINER_RUNTIME_ENDPOINT='/var/run/cri-containerd.sock'./hack/local-up-cluster.sh,其中“CONTAINER_RUNTIME=remote”就表示使用containerd直接管理容器。

目前支持如下基本功能:

1、  POD级别Sandbox和container生命周期管理

2、  镜像管理

3、  Sandbox网络管理

4、  容器日志管理

5、  在容器中执行命令

Kubernetes1.7新特性:支持绕过docker,直接通过containerd管理容器相关推荐

  1. Kubernetes1.7 新特性:日志审计变化

    背景概念 出于安全方面的考虑,Kubernetes提供了日志审计记录,用来记录不同普通用户.管理员和系统中各个组件的日志信息. Kubernetes日志审计是Kube-apiserver组件的一部分功 ...

  2. kubernetes1.4新特性:支持两种新的卷插件

    背景介绍 在Kubernetes中卷的作用在于提供给POD持久化存储,这些持久化存储可以挂载到POD中的容器上,进而给容器提供持久化存储. 从图中可以看到结构体PodSpec有个属性是Volumes, ...

  3. Kubernetes1.6新特性-不回收静态POD

    一.静态POD介绍 在Kubernetes中有一个DaemonSet类型的POD,这种类型的POD可以在某个节点上长期运行,这种类型的POD就是静态POD. 静态POD直接由某个节点上的kubelet ...

  4. Oracle 18c新特性:Schema-Only 帐号提升应用管理安全性

    在 Oracle 18c 中,一个特殊类型的帐号被引入到数据库当中,这特特性被称为 Schema-Only 帐号,这个帐号通过 NO AUTHENTICATION 语句建立,没有密码,也就不允许直接登 ...

  5. Redis6新特性之ACL安全策略(用户权限管理)

    介绍 在Redis6之前的版本,我们只能使用requirepass参数给default用户配置登录密码,同一个redis集群的所有开发都共享default用户,难免会出现误操作把别人的key删掉或者数 ...

  6. Docker基础之九: 管理容器的数据

    管理容器的数据 (对Docker感兴趣的朋友可以加我的微信ghostcloud2016,然后我把你加到我们的一个Docker爱好者群组里面.) 到目前为止,我们已经介绍了Docker的一些基本概念,如 ...

  7. docker 容器运行 golang程序_「Docker」 - 运行 amp; 管理容器

    容器是基于容器技术所建立和运行的轻量级应用运行环境,它是Docker封装和管理应用程序或微服务的「集装箱」,在Docker中,容器是最核心的部分. 一.容器的创建和启动 Docker容器的生命周期里分 ...

  8. Kubernetes1.5新特性(一):Kubelet API增加认证和授权能力

    2019独角兽企业重金招聘Python工程师标准>>> 背景介绍 在Kubernetes1.5中,对于kubelet新增加了几个同认证/授权相关的几个启动参数,分别是: 认证相关参数 ...

  9. Orcle 12c 新特性--- 支持PDB OMF

    1 说明 12c中支持PDB级别使用OMF,如果PDB不指定CREATE_FILE_DEST参数,那么会继承CDB中的CREATE_FILE_DEST参数设置.使DBA更容易管理PDB. 2 实验 2 ...

最新文章

  1. 企业信息化快速开发平台JeeSite
  2. python心得1000字-经典教材《统计学习导论》现在有了Python版
  3. C# WinForm 弹出模式窗口操作滚动条
  4. 学计算机须知,学习计算机须知的50个专业术语
  5. 1.19 final修饰符详解
  6. 计算机网络基础_4_传输层与应用层的作用
  7. windowsserver服务器维护,Windows Server服务器日常管理技巧
  8. php 设置agent,限制某个目录禁止解析php及user_agent、php相关配置
  9. 以一个通俗易懂的方式解释一下写程序为什么要声明接口和类,面向对象的编程思想,字数不多,主要通过代码理解
  10. 头衔的权威暗示影响力
  11. c#检查SQL语法是否正确,不执行SQL语句
  12. webstorm中文乱码问题
  13. 08服务器端口映射,windows_Server_2008_R2_NAT服务器_端口映射.pdf
  14. 真正的【清华大学计算机系】是什么样子?
  15. 改变电阻的c语言程序,c语言电阻器分类代码实现
  16. 轻言壁纸微信小程序源码
  17. 水果整理篇--苹果橘子
  18. 跑步耳机有线好还是无线好?安利几款适合跑步的耳机
  19. cad计算机中怎么用除号,CAD中特殊符号如何输入?超全教程,一看就懂!
  20. break跳出两个嵌套的for循环

热门文章

  1. Ae 表达式语言引用​之:Property
  2. 多孔介质的粘性阻力系数和惯性阻力系数
  3. 我的世界服务器指令修复耐久,我的世界中唯一可以修复物品的工具 你知道多少?...
  4. Go语言读取解析yml文件,快速转换yml到go struct
  5. 解决微信登录出现{errcode:40163,errmsg:code been used, hints: [ req_id: jEFDVY4ce-jz9NSA ]} (前提是使用友盟分享)
  6. JS逆向之Webpack 处理2
  7. 嵌入式 ARM 编译器
  8. Unity3d中鼠标中键控相机的视角(焦距)
  9. 使用python做春节倒计时
  10. VR站与360地图/搜索达成战略合作,推出VR全景营销投放新模式