• K8S是什么?为什么会出现这个技术?


    Kubernetes能做什么?

    简单来说,Kubernetes是和Mesos Marathon类似的容器编排框架,它也是一个自动化、容器化的应用程序部署扩展和管理的开放源代码系统。
    Kubernetes通过Master节点进行容器的统一编排决策和管理(类似人体的大脑),通过Worker节点(或者直接叫做Node节点)进行容器引擎(如Docker Engine)的配合和容器Container的实际操作(类似人体的手,但不止一双,可以有很多只手),真正实现了从单一容器的管理,向微服务应用的容器化落地的飞跃,提供了包含计算资源管理、存储资源管理、网络服务发现、系统和应用监控、软件升级回滚、安全认证等等主题的完整解决方案。
    图片描述
    图片来自dzone.com,图片版权归属原作者
    Kubernetes能做的内容很多,笼统起来看可以归结为以下几条问答题:

    1. 虚拟数据中心管理
      狄仁杰:我有一个数据中心,既想能同时支持开发、测试、生产环境,又希望统一进行资源和容器的管理。元芳,此事你怎么看?
      李元芳:回大人,可以通过Kubernetes的namespace实现逻辑集群,完成容器环境的隔离。
    2. 软件发布和回退
      狄仁杰:我想把自己开发的软件像yum intall、pip install这样方便地进行安装管理,并且可以指定版本方便地进行回退,有没有好方法?
      李元芳:回大人,您可以用Kubernetes进行代码发布和回退,还可以用配套的Helm和Jenkins进行软件包和CI/CD的整体控制,非常灵活方便。
    3. 网络和存储透明管理
      狄仁杰:我的开发团队对于网络和存储的细节不太了解,但是现在流行devops文化,怎么让他们快速地学习网络和存储技术,独立完成应用的网络和存储配置呢?
      李元芳:回大人,不需要他们专门学习存储和网络知识。Kubernetes容器技术的服务发现层抽象了网络访问,存储的PV/PVC两级管理技术抽象了存储的配置,只要他们能提出明确的需求,Kubernetes自动可以完成相应的资源分配。
    4. 弹性扩缩容
      狄仁杰:我想让应用可以根据策略自动地增加资源或者释放资源,元芳,你怎么看?
      李元芳:回大人,此事必定有蹊跷。我听说Kubernetes可以很方便地进行容器弹性扩缩容,应该可以解决问题。我们可以去听听张飞扬老师的Kubernetes章节和容器弹性扩缩容章节,说不定会有所收获。
    5. 高可用
      狄仁杰:我还想让我的应用可以实现全链路高可用,元芳,你怎么看?
      李元芳:大人,听说Kubernetes本身的集群是高可用的,同时上面发布的容器又可以通过负载均衡和Service功能实现容器高可用。
      狄仁杰: 元芳,此工具甚好,还是你懂我啊。

    Kubernetes好归好,但是它这个长长的名字的读音确实是吓坏了不少同学,为了方便大家记忆,我们通常将其中间的ubernete这8各字符用8来代替,这也就是K8S缩写的由来。K8S这个昵称,是不是很像NBA球场上大家熟悉的“字母哥”一样,叫起来特别亲切啊。

    Kubernetes的发展

    Kubernetes开源架构的源头来自于Google生产系统中运行的内部集群管理系统Borg。Google将在Borg中的10多年经验在2014年开源出来,开启了Kubernetes热潮的端倪。同年,微软、RedHat、IBM、Docker、CoreOS、Mesosphere和Saltstack等公司相继加入Kubernetes生态圈。次年,VMware、HP、Intel等公司也相继加入。也正是在2015年,随着Kubernetes 1.0正式发布,掀开了容器编排管理一发不可收拾的大幕。
    Kubernetes在这场容器编排的大角逐中,从普通选手(当时Docker是容器技术的裁判,而Docker Swarm、Apache Mesos、Google Kubernetes分别是Docker容器编排的选手)逐步变成了领跑选手,进而升级为了裁判(由Kubernetes主导容器编排,而将Docker和CoreOS的Rkt等容器技术纳入容器隔离技术的角逐中),从而在容器届一骑绝尘。

     

     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    vue-cli + webpack 构建vue.js开发环境
    JDK、Eclipse、Myeclipse、Tomcat等各种软件的版本详解(写给对版本和兼容性问题焦头烂额的你)
    总结下var、let 和 const 的区别
    vue双向绑定原理
    Vue中computed和watch的区别
    前端面试题总结
    微信开发之上传素材
    微信开发之向用户群发文本消息
    微信开发之获取用户详细列表
    TPshop入门大纲
  • 原文地址:https://www.cnblogs.com/wjx6270/p/14019698.html
Copyright © 2020-2023  润新知