cri-docker的学习和了解-番外


前言

因为已经有足足两年多没再详细接触K8S了.
然后利用两个晚上搭建了IPV6 SingleStack的K8S单机版
中间一直使用的docker的方式学习和工作
然后有段时间研究过 containerd和buildkit
但是感觉先入为主的力量还是非常强大. 正好这次搭建环境还是使用的docker. 感觉挺温暖的
所以想学习和总结一下用到的cri-docker组件 缅怀一下接触docker 这七八年的时光.

Docker

Docker 其实是一个有着 十年历史的项目.
从最开始的惊艳, 到现在的泯然众人矣
其实历史的车轮总是滚滚向前,顺之者昌逆之者亡. Docker属于踩对了一个步点, 但是迷失在了自己可能的成功的愿景里面
最终被Don't be evil 的谷歌打残. 自己工作以来第一次接触业内前沿三年内的技术就是docker.
所以其实还是很有感情的. 虽然自己的水平一直只是个普通用户的角色.
其实Docker只是一种运行时和打包的方式.
按理说也没有多大的新意, 但是他将分层文件系统和网络栈融合起来之后就会节约大家大量的时间. 所有技术的进步都是依靠减少成本来大量爆发的.
我一直理解docker 最大的优点是可以减少一些环境依赖
其实java本身就是基于JVM的.可以做到一个文件件自包含进行启动. Docker 内的java可以实现不可变的镜像和完全一样的体验是他最大的优点.

K8S的崛起

谷歌眼里自己是聛睨一切的存在.
技术上面在座的各位都是垃圾. Docker的存在给了他很大的打击, 影响了自己技术第一的人设
所以他将自己的borg 进行了 重构性质的开源. 也就是 kubernetes K8S 其实K8S出现的源头就是google 为了与docker争夺开源一哥地位用的
所以他从一开始就想着能够摆脱对docker的以来.
也就有了 OCI 以及后面 CRI CNI 等组件 谷歌在2018年事实上赢得了 容器编排大战的时候 就已经准备对docker进行斩草除根的处理了. 并且在1.24的某个版本 彻底放弃了 docker-shim的垫片, 无法直接使用docker作为容器运行时. Docker的时代其实已经落幕.

苟且偷生

谷歌作为开源界最大的大腿,已经将docker吃干抹净.
但是docker作为一个曾经辉煌的公司,不能直接引颈就戮. K8S废掉了docker-shim 不原生支持 docker 作为运行时
那么就有人开源了 cri-docker 作为一个K8S和docker的中间层
一方面跟符合K8S的 cri的api 一方面再去调用 docker
算是一个新的垫片. 他会有调度方面的性能损耗. 但是并不会对运行时产生太大的性能损耗.
但是有很多跟我一样的人, 喜欢一套脚本, 不喜欢太多的变更
喜欢这样的垫片帮解决很大的问题. 所以 docker在K8S如日中天中还在苟且偷生.
通过垫片的方式继续在云原生的领域坚强的活着.

总结

技术在进步, 必须向前看
但是大家都有自己的小确幸. 想能够有一个温暖的港湾
可以刷刷视频看看小说. 还是需要多学习, 不然可能连自己的孩子都不如.
需要保持谦虚与内敛. 世界的发展很快. 区块链其实比Docker的出现还早四五年.
但是他的辉煌却比docker还要晚 当然现在还处于辉煌的后期. 别人干不到你能干到是你的能力. 大家都可以你也可以, 你就是可有可无 Docker就是从只有自己的能做到, 到了大家都可以,然后才被蹂躏到死.
所以生活和工作一样, 保持自己的独立性应该是最重要的.

cri-docker的学习和了解-番外的更多相关文章

  1. Netty学习笔记(番外篇) - ChannelHandler、ChannelPipeline和ChannelHandlerContext的联系

    这一篇是 ChannelHandler 和 ChannelPipeline 的番外篇,主要从源码的角度来学习 ChannelHandler.ChannelHandler 和 ChannelPipeli ...

  2. JVM学习总结五(番外)——VisualVM

    距离上次介绍Jconsole已经时隔两周了,这期间由于工作中要用go来做一个新项目,所以精力都用在入门go上了,不过发现go语言用起来真的挺不错的,比python感觉还好点,大家没事可以了解下.   ...

  3. JVM学习总结五(番外)——JConsole

    之前本来打算结合自己写的小程序来介绍JConsole和VirtualVM的使用的,但是发现很难通过一个程序把所有的场景都体现出来,所以还是决定用书中的典型小例子来讲更加清晰. 一.JConsole的基 ...

  4. 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV

    这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...

  5. openresty 学习笔记番外篇:python的一些扩展库

    openresty 学习笔记番外篇:python的一些扩展库 要写一个可以使用的python程序还需要比如日志输出,读取配置文件,作为守护进程运行等 读取配置文件 使用自带的ConfigParser模 ...

  6. openresty 学习笔记番外篇:python访问RabbitMQ消息队列

    openresty 学习笔记番外篇:python访问RabbitMQ消息队列 python使用pika扩展库操作RabbitMQ的流程梳理. 客户端连接到消息队列服务器,打开一个channel. 客户 ...

  7. Opengl_入门学习分享和记录_番外篇01(MacOS上如何在Xcode 开始编辑OpenGL)

    写在前面的废话: 哈哈 ,我可真是勤勉呢,今天又来更新了,这篇文章需要大家接着昨天的番外篇00一起食用! 正文开始: 话不多说,先看代码. 这里主要全是使用的glfwwindowhint 这个函数,他 ...

  8. Golang Gin实践 番外 请入门 Makefile

    Golang Gin实践 番外 请入门 Makefile 原文地址:Golang Gin实践 番外 请入门 Makefile 前言 含一定复杂度的软件工程,基本上都是先编译 A,再依赖 B,再编译 C ...

  9. 羽夏看Win系统内核—— VT 入门番外篇

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  10. 番外篇 之 C#委托

    对于上一节 番外篇之C#多线程的反思 反思一:   Thread th = new Thread(参数); ////参数的总结 ////首先,第一情况,对于 Thread th = new Threa ...

随机推荐

  1. DVWA Command Injection(命令注入)全等级

    Command Injection(命令注入) 目录: Command Injection(命令注入) 1. Low 利用 1.nc反弹shell 2.msf上马 2.Medium 3. High 4 ...

  2. 斯坦福 UE4 C++ ActionRoguelike游戏实例教程 11.认识GAS & 创建自己的能力系统

    斯坦福课程 UE4 C++ ActionRoguelike游戏实例教程 0.绪论 概述 本篇文章对应Lecture 16 - Writing our own Gameplay Ability Syst ...

  3. 占位图片(Placeholder Image)

    一.引言 在网页设计和开发中,占位图片(Placeholder Image)是一种常见的技术手段,用于在用户上传图片之前或者图片加载失败时,展示一个临时替代的图片,以提高用户体验.本文将详细介绍占位图 ...

  4. 20、Scaffold属性 BottomNavigationBar 自定义底部导航

    BottomNavigationBar 是底部导航条,可以让我们定义底部Tab切换,bottomNavigationBar是 Scaffold组件的参数. BottomNavigationBar 常见 ...

  5. LeetCode206反转链表、24两两交换节点

    206. 反转链表 反转一个单链表. 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL ...

  6. 这项评测,华为云GaussDB(for MySQL)顺利通过

    摘要:近日,中国信息通信研究院(简称"中国信通院")公布了第十五批"可信数据库"评测结果.华为云GaussDB(for MySQL)凭借过硬的技术实力顺利通过& ...

  7. 如何处理分析Flink作业反压的问题?

    摘要:反压是 Flink 应用运维中常见的问题,它不仅意味着性能瓶颈还可能导致作业的不稳定性. 反压(backpressure)是实时计算应用开发中,特别是流式计算中,十分常见的问题.反压意味着数据管 ...

  8. WPF 对Border 边框进行投影

    画一个 Border 对边框进行投影 <Window x:Class="WpfApp1.MainWindow" xmlns="http://schemas.micr ...

  9. 数据工程师必备的8项技能,不要只知道Python!

    欢迎关注公众号:机器学习算法与Python实战(ID:tjxj666) 原作:Mohammed M Jubapu 译者:机器学习算法与Python实战(公众号ID:tjxj666) 英文:https: ...

  10. 【flask】蓝图的使用方式 g对象的使用 flask配置数据库连接池

    目录 上节回顾 今日内容 1 蓝图的使用 2 g对象 g对象 vs request对象 3 数据库连接池 上节回顾 全局request对象.线程会处理请求,确保线程中的数据不错乱. django_se ...