【问题标题】:cri-o socket (crio.sock) vs dockershim socket (dockershim.sock)cri-o 套接字 (crio.sock) 与 dockershim 套接字 (dockershim.sock)
【发布时间】:2020-08-28 01:02:36
【问题描述】:

我对 Kubernetes 非常陌生,并试图了解 crio 与 dockershim 之间的区别。

我正在阅读有关如何安装 kubernetes 的手册,我看到建议将 crio 作为一个步骤(请参阅链接)Container runtimes/cri-o

然而,当我第一次尝试启动试验时,我更加困惑,我看到默认情况下 kubernetes 使用另一个 cri 工具 (dockershim) 作为默认 cri 工具,请参阅链接 crictl/General usage

我的问题是是否值得通过 CRI-O 的安装程序?我在 centos7 (1.15.1-2.el7) 的最新可用版本中发现了错误。

我还测试了 crio-v1.18.0,错误似乎已修复,但在这种情况下,当使用私有 repo 拉取试点图像时,CRI-O 似乎可以连接到端口 10248。

有人可以分享一下吗?尝试修复这些错误是否值得,或者我在这方面花费了太多时间?

【问题讨论】:

    标签: kubernetes cri-o


    【解决方案1】:

    Kubelet(Kubernetes 的节点守护进程)通过Container Runtime Interface 与运行在节点上的容器运行时通信。 dockershimcrio 实现了 CRI,并充当 runtime 和 kubelet 之间的连接器,但它们引用不同的容器运行时。

    • dockershim 是 kubelet 和 docker 之间的连接器
    • crio 是 kubelet 和 符合 OCI 规范的运行时 之间的连接器(例如:runc)

    有很多方法可以设置容器运行时。各种 kubernetes 发行版都使用各种容器运行时作为它们的默认值(例如,Google Kubernetes Engine 在我上次尝试时使用 containerD-shim 安装了 containerD 运行时)

    我想说,如果你想开始使用 kubernetes 并希望它稳定,你应该先从 docker 开始(使用 dockershim 作为 CRI 连接器)。这是使用 K8S 最常用的测试方式。

    【讨论】:

    • 我想我会使用默认的,它看起来没有那么多错误。我想知道为什么 Kubernetes 推荐 CRI-O 但它使用 dockershim 作为默认值。我不确定为什么。感谢您花时间和精力阅读和回答我的问题。
    猜你喜欢
    • 2021-09-28
    • 1970-01-01
    • 2012-02-22
    • 2012-03-30
    • 1970-01-01
    • 2013-03-18
    • 2012-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多