Kubernetes1-K8s的简单介绍 (2)

      可以使用Kunbernetes描述已经部署容器的所需状态,并可以以控制速率将实际状态更改所需状态。比如可以自动化Kubernetes来位您的部署创建新容器,删除现有容器并将他们的所有资源用于新容器

    自动包装

      一个Kubernetes集群,可以用于容器化任务,可以指定每个容器需要多少CPU和内存,使其充分利用资源。   

    自检

      Kubernetes可以重新启动失败的容器,替换容器,杀死对用户定义的运行状态检查没有响应的容器,并且在准备好服务之前不会将其通告给客户端

    加密管理

      Kubernetes允许存储和管理敏感信息,如密码,auth令牌和ssh密钥,可以部署和更新机密的应用程序配置,而无需重新构建容器镜像,也无需在堆栈配置中公开。

  7、kubernetes不是什么

    不是一个传统意义上包罗万象的Paas系统,它保留用户的自由选择,比如:

      不限制支持的应用程序类型,不限制应用程序框架,不限制支持的语言(java/python/ruby)支持多种多样的工作负载,包括无状态,有状态和数据处理工作负载。

      不提供内置服务的中间件(例如:消息中间件)、数据处理框架(例如:spark)、数据库(例如:mysql)和分布式存储(例如Ceph),这些应用可以允许在K8s上。

      没有提供点击即部署的服务市场。

      源代码到镜像都是开源的,它不部署源代码且不构建您的应用程序。持续集成,交付和部署(CI/CD)工作流取决各公司组织的文化和偏好。

      允许用户选择其他的日志记录,监控和告警系统,(它也提供一些集成作为概念证明)。

      不提供也不要求应用程序配置语言/系统,提供一个声明性API,可以通过任意形式的声明性规范。

      不提供也不采用任何全面的机器配置,维护,管理或自动修复系统。

     另外许多Paas系统运行在K8s上面,比如openshift,deis,eldarion,可以自定义自己的paas与自己选择的CI系统集成,或与K8s一起使用,将容器镜像部署到K8s上。

    由于K8s在应用级别而不是仅仅在硬件级别运行,因此它提供Paas产品通用的一些功能,如:部署、扩展、负载均衡、日志记录、监控等。但是K8s不是单一的,默认是可选和可插拔的。

    K8s也不仅仅是一个编排系统,它消除了编排的需要,编排代表工作流的执行为从A到B,然后到C,相反,K8s是包括一套独立、可组合的控制过程,通过声明式语法使其连续地朝向期望状态驱动当前状态,不需要告诉它具体的从A到C的过程,只需要告诉到C的状态即可,也不需要集中控制,这使得系统更易于使用,并且强大,更具有弹性和扩展性。

  

二、K8s架构   1、整体架构

Kubernetes1-K8s的简单介绍

三、常见组件

    请见图示1:分别包含1、2、3、4

    

Kubernetes1-K8s的简单介绍

    

  1、master:

    Kubernetes管理节点

  2、apiserver:

    提供接口服务,用户通过apiserver来管理整个容器集群平台。API Server负责和Etcd交互(其他组件不会直接操作etcd,只有API Server这么做),整个Kubernetes集群的所有交互都是以API server为核心的。如:1、所有对集群进行的查询和管理都要通过API来进行;2、所有模块之间并不会互相调用,而是通过和API Server打交道来完成自己那部分的工作、API Server提供的验证和授权保证了整个集群的安全

  3、scheduler Kubernetes 调度服务:   4、Replication Controllers 复制:

     保证pod的高可用

     Replication Controller是Kubernetes系统中最有用的功能,实现复制多个Pod副本,往往一个应用需要多个Pod来支撑,并且可以保证其复制的副本数,即使副本所调度分配的宿主机出现异常,通过Replication Controller 可以保证在其它宿主机启用同等数量的Pod。Replication Controller 可以通过repcon模板来创建多个Pod副本,同样也可以直接复制已存在Pod,需要通过Label selector来关联

 

    请见图示2:包含5、6、7、8

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwysdw.html