searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

浅析docker&kubernetes容器虚拟化 - 导论

2023-03-31 06:49:45
33
0

一、引言

docker&kubernetes的容器虚拟化是容器云典型落地实践之一,本系列文章试图浅析其背后的实现。

管中窥豹,或失偏颇,欢迎指正。

 

二、docker&kubernetes的容器虚拟化是什么

将docker&kubernetes的容器虚拟化代入到云计算产品体系中,横看成岭侧成峰:

相较于kvm&openstack,docker&kubernetes的容器虚拟化是轻量级的IaaS。

相较于传统平台服务产品,docker&kubernetes的容器虚拟化是狭义的PaaS。

 

三、轻量级的IaaS

1)轻装上阵的计算虚拟化

容器是一组被隔离的业务相关进程,受限使用公共资源。容器可具象化地表述如下:

换句话说,一组业务相关进程以namespace进行隔离,以cgroup进行资源配额,最后通过chroot或类似方式切入到专属rootfs中,这组进程就破茧化蝶成了容器。

2)百家争鸣的网络虚拟化

社区容器网络虚拟化实践百家争鸣,大体可划分为下述三大类:

网络方案 备注
overlay方案 容器独立于主机的 IP 段,容器 IP 段跨主机网络通信时是通过在主机之间创建隧道的方式,将整个容器网段的包全都封装成底层的物理网络中主机之间的包,不依赖于底层网络。
underlay方案 容器和宿主机位于同一层网络,两者拥有相同的地位。容器之间网络的打通主要依靠于底层网络。
路由方案 主机和容器分属不同的网段,与 Overlay 模式区别是它的跨主机通信是通过路由打通,无需在不同主机之间做隧道封包。

受基础设施制约和业务性能需求等因素影响,容器网络虚拟化方案没有绝对最优答案,需根据业务环境取舍权衡。

3)海纳百川的存储虚拟化

docker&kubernetes的容器存储虚拟化提供了in-tree plugins、flexvolume以及csi系列集成方案。

通过pvc/pv实现种类繁多的分布式存储对接,解决容器数据持久化存储的需求。

 

四、狭义的PaaS

基于docker&kubernetes容器虚拟化提供了以应用为中心的狭义生命周期管理,包括:

1)应用负载

docker&kubernetes的容器虚拟化提供了以POD为逻辑单位的容器进程组,实现对应用初始化进程,辅助进程以及主进程的封装。

2)编排&调度

docker&kubernetes的容器虚拟化基于pod、service以及deployment等各原生与自定义资源设计组织应用。

同时提供了资源调度引擎将应用负载调度至工作节点,如果将pod比作萝卜,调度目标就是为每个萝卜找到一个最适合它的坑。

3)7x24小时应用监护服务

docker&kubernetes的容器虚拟化提供了传统面向结果的7x24小时应用监护服务。

换句话说,用户基于kubernetes资源与规则定义业务,kubernetes也将试图持续维护好这个业务。

 

五、docker&kubernetes的容器虚拟化价值

 
价值 诠释 备注
降本

薄的虚拟化层,更高的部署密度

和虚拟机比,无guestos开销,更低的资源开销

和物理机比,有粗粒度隔离,更高的部署密度。

提效 标准化的应用,更敏捷生命周期

标准化应用,高度环境一致性,一次性打包,到处运行

开箱即用的敏捷应用生命周期管理

赋能 弹性容量供应,业务高可用保障

快速扩缩容,弹性容量供应

主动故障探测与自愈能力

 

最后抛出1个讨论题,欢迎交流。

   讨论:结合ansible/saltstat如何看kubernetes异曲同工之机巧?

 

 

0条评论
0 / 1000
lorland
10文章数
0粉丝数
lorland
10 文章 | 0 粉丝
原创

浅析docker&kubernetes容器虚拟化 - 导论

2023-03-31 06:49:45
33
0

一、引言

docker&kubernetes的容器虚拟化是容器云典型落地实践之一,本系列文章试图浅析其背后的实现。

管中窥豹,或失偏颇,欢迎指正。

 

二、docker&kubernetes的容器虚拟化是什么

将docker&kubernetes的容器虚拟化代入到云计算产品体系中,横看成岭侧成峰:

相较于kvm&openstack,docker&kubernetes的容器虚拟化是轻量级的IaaS。

相较于传统平台服务产品,docker&kubernetes的容器虚拟化是狭义的PaaS。

 

三、轻量级的IaaS

1)轻装上阵的计算虚拟化

容器是一组被隔离的业务相关进程,受限使用公共资源。容器可具象化地表述如下:

换句话说,一组业务相关进程以namespace进行隔离,以cgroup进行资源配额,最后通过chroot或类似方式切入到专属rootfs中,这组进程就破茧化蝶成了容器。

2)百家争鸣的网络虚拟化

社区容器网络虚拟化实践百家争鸣,大体可划分为下述三大类:

网络方案 备注
overlay方案 容器独立于主机的 IP 段,容器 IP 段跨主机网络通信时是通过在主机之间创建隧道的方式,将整个容器网段的包全都封装成底层的物理网络中主机之间的包,不依赖于底层网络。
underlay方案 容器和宿主机位于同一层网络,两者拥有相同的地位。容器之间网络的打通主要依靠于底层网络。
路由方案 主机和容器分属不同的网段,与 Overlay 模式区别是它的跨主机通信是通过路由打通,无需在不同主机之间做隧道封包。

受基础设施制约和业务性能需求等因素影响,容器网络虚拟化方案没有绝对最优答案,需根据业务环境取舍权衡。

3)海纳百川的存储虚拟化

docker&kubernetes的容器存储虚拟化提供了in-tree plugins、flexvolume以及csi系列集成方案。

通过pvc/pv实现种类繁多的分布式存储对接,解决容器数据持久化存储的需求。

 

四、狭义的PaaS

基于docker&kubernetes容器虚拟化提供了以应用为中心的狭义生命周期管理,包括:

1)应用负载

docker&kubernetes的容器虚拟化提供了以POD为逻辑单位的容器进程组,实现对应用初始化进程,辅助进程以及主进程的封装。

2)编排&调度

docker&kubernetes的容器虚拟化基于pod、service以及deployment等各原生与自定义资源设计组织应用。

同时提供了资源调度引擎将应用负载调度至工作节点,如果将pod比作萝卜,调度目标就是为每个萝卜找到一个最适合它的坑。

3)7x24小时应用监护服务

docker&kubernetes的容器虚拟化提供了传统面向结果的7x24小时应用监护服务。

换句话说,用户基于kubernetes资源与规则定义业务,kubernetes也将试图持续维护好这个业务。

 

五、docker&kubernetes的容器虚拟化价值

 
价值 诠释 备注
降本

薄的虚拟化层,更高的部署密度

和虚拟机比,无guestos开销,更低的资源开销

和物理机比,有粗粒度隔离,更高的部署密度。

提效 标准化的应用,更敏捷生命周期

标准化应用,高度环境一致性,一次性打包,到处运行

开箱即用的敏捷应用生命周期管理

赋能 弹性容量供应,业务高可用保障

快速扩缩容,弹性容量供应

主动故障探测与自愈能力

 

最后抛出1个讨论题,欢迎交流。

   讨论:结合ansible/saltstat如何看kubernetes异曲同工之机巧?

 

 

文章来自个人专栏
kubernetes
10 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0