0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么有了Docker还要Kubernetes

Wildesbeast 来源:Go语言中文网 作者:JayL 2020-02-12 12:16 次阅读

“一千个读者眼里有一千个哈姆雷特”。同样的话也适用于 Kubernetes,同样的系统在不同的开发人员眼中也是不同的,甚至在不同阶段对于它的理解也截然不同。

在尚未开始使用Kubernetes之前,我认为它是一套非常复杂的系统,各种抽象概念以及复杂的安装过程。差点因为安装不顺,打算就此放弃。理由很简单:既然有了 Docker,为什么还要 Kubernetes?

之所以觉得Kubernetes系统复杂、难,关键是不知道它到底是干啥的?再加上老版本繁琐的安装过程,愿意啃它是需要一点毅力的。现在,就通过一张简单的对比图告诉你,它到底干了啥!

单看图示上部分,发生的变化仅仅是HOST换成了POD,底层网络由真实网络换成了覆盖网络,即虚拟网络。对于APP应用开发者而言, 即使你完全不懂容器技术也没关系.这是Kubernetes的厉害之处,它提供的抽象层对于APP应用开发者而言是完全透明的。应用在POD中和在HOST主机上并没有本质区别。

还是老问题:既然有了 Docker,为什么还要 Kubernetes?

回答这个问题,得从为什么需要引入Docker这个问题先开始。你会说,因为需要容器化部署。那为什么需要容器化部署呢?就这个问题还可以走得更远一点。这里我就偷懒了,先打住。看看容器化部署后出现的新问题,即容器实例越来越多。因为容器实例越来越多,就像鸡蛋太多需要一个篮子来装一样,Kubernetes就是那个篮子。当然这不是一个简单的篮子,此处也不扩展了。

标准答案就是:因为有了 Docker,所以才要Kubernetes。是不是感觉进入一个loop,我也这感觉。

从图中也可以看出,Docker容器技术是Kubernetes平台的基础。容器技术主要作用是隔离,通过对系统的关键资源的隔离,实现了主机抽象。Kubernetes平台则是在抽象主机的基础上,实现了集群抽象。

用一句话做个总结,就是:

容器,提供应用级的系统抽象;Kubernetes,提供应用级的集群抽象。

小结

一篇短文,希望可以帮到还徘徊在Kubernetes大门之外的初学者。当然,新版本Kubernetes已经非常容易安装了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • APP
    APP
    +关注

    关注

    33

    文章

    1525

    浏览量

    71611
  • Docker
    +关注

    关注

    0

    文章

    435

    浏览量

    11593
收藏 人收藏

    评论

    相关推荐

    如何利用树莓派安装DockerDocker-compose呢?

    本文主要演示了树莓派如何安装DockerDocker-compose的过程。
    的头像 发表于 12-14 16:19 1176次阅读
    如何利用树莓派安装<b class='flag-5'>Docker</b>和<b class='flag-5'>Docker</b>-compose呢?

    docker核心组件有哪些

    Docker 是一种开源的容器化平台,它能够实现将应用程序及其依赖项打包到一个可移植的容器中,从而实现快速、可重复、可扩展的部署和管理。Docker 的核心组件包括 Docker Engine
    的头像 发表于 11-23 09:47 690次阅读

    docker进入容器的方法有哪些

    Docker是一种流行的容器化平台,它能够快速构建、交付和运行应用程序。在使用Docker时,我们经常需要进入容器进行调试、管理和运行命令等操作。本文将详细介绍Docker进入容器的各种方法,包括
    的头像 发表于 11-23 09:45 2884次阅读

    linux关闭docker的命令

    在 Linux 系统中,关闭 Docker 的操作可以通过以下多种方式进行。本文将详细讲解每一种方式,并提供示例代码和命令,以帮助读者更好地理解和实践。 使用 docker 命令 最常用的方法
    的头像 发表于 11-23 09:39 1070次阅读

    docker exec命令的使用方法

    Docker是一种开源的容器化平台,可以让开发人员在容器中打包和运行应用程序。它提供了一种快速、可靠和一致的方式来构建、部署和运行应用程序。Docker exec命令是Docker提供的一个非常
    的头像 发表于 11-23 09:33 726次阅读

    docker部署mysql的坏处

    Docker 是一种虚拟化技术,它允许开发人员在容器内打包应用程序及其所有依赖项,从而实现在不同环境中运行相同的应用程序的能力。然而,在使用 Docker 部署 MySQL 时,也存在一些潜在
    的头像 发表于 11-23 09:29 663次阅读

    如何使用 Docker容器化技术

    对于开发人员来说,Docker肯定都不陌生,今天小编带大家重新学习一下Docker。 什么是 Docker 官话: Docker 是一种开源的容器化平台,它可以帮助开发者将应用程序与其
    的头像 发表于 09-30 11:24 9663次阅读

    如何判断是否在docker镜像中?

    实战中首先需要判断服务器是否为docker环境。常用的判断方法两种。 1、通过执行 ls -alh /.dockerenv是否存在.dockerenv文件 docker环境下存在该文件 非
    发表于 09-20 07:42

    docker基础知识和使用bmnnsdk时的docker常用命令

    的物理机上运行一样。 Docker,就不用担心环境问题。 1.2 image文件与容器container Docker 把应用程序及其依赖,打包在 image 文件里面。只有
    发表于 09-18 07:59

    基于Docker提供内置的DNS服务器

    DNS简介 DNS服务是域名系统的缩写, 英文全称:Domain Name System,将域名和IP地址相互映射。在容器环境中,DNS至关重要,例如在Kubernetes集群中,通常一组Pod
    的头像 发表于 08-08 14:14 921次阅读
    基于<b class='flag-5'>Docker</b>提供内置的DNS服务器

    使用Docker安装WordPress教程

    本教程将向您展示如何使用 Docker Compose 在 Docker 容器中运行 WordPress 安装。
    的头像 发表于 07-28 11:39 1044次阅读
    使用<b class='flag-5'>Docker</b>安装WordPress教程

    docker 搜索镜像,docker查看镜像详细信息(docker下载镜像命令)

    Docker Hub是集中管理的Docker镜像注册中心。通过Docker 用户可以在注册中心搜索、下载和使用CLI命令行工具中的镜像。以下是常用的Docker命令搜索镜像:
    的头像 发表于 07-19 09:46 1102次阅读

    Commvault:护航Kubernetes,不止Kubernetes

    Kubernetes已经不再是只存在于路线图中的未来产品。事实上,几乎所有(94%)已经采用容器的企业都在使用Kubernetes,大多数(86%)企业甚至认为它对他们的运营至关重要。这并不令人意外,Kubernetes正在帮助
    的头像 发表于 07-07 14:42 296次阅读

    Docker容器和Kubernetes退出码中文指南

    当容器终止时,容器引擎使用退出码来报告容器终止的原因。如果您是 Kubernetes 用户,容器故障是 pod 异常最常见的原因之一,了解容器退出码可以帮助您在排查时找到 pod 故障的根本原因。以下是容器使用的最常见的退出码。
    发表于 06-06 10:08 168次阅读

    Kubernetes特性有哪些?

    本文将介绍Kubernetes 的重要特性,这将有助于您更深入地了解 Kubernetes 的功能概念。
    的头像 发表于 05-12 16:16 647次阅读
    <b class='flag-5'>Kubernetes</b>特性有哪些?