• Kubernetes


    Kubernetes是Google开源的容器集群管理系统,是Google多年⼤规模容器管理技术Borg的开源版本,主要功能包括:

      • 基于容器的应用部署、维护和滚动升级
      • 负载均衡和服务发现
      • 跨机器和跨地区的集群调度
      • 自动伸缩
      • 无状态服务和有状态服务
      • 广泛的Volume支持
      • 插件机制保证扩展性

    Kubernetes (K8s) 是一个谷歌开源工具,它可以让你管理 Docker 容器。

    Dockers是容器化技术。K8S是一套自动化部署工具,可全生命周期管理Dockers容器。

    1、Pod

    Pod是一组紧密关联的容器集合,支持多个容器在一个Pod中共享网络和文件系统,可以通过进程间通信和文件共享这种简单高效的方式完成服务,是Kubernetes调度的基本单位。Pod的设计理念是每个Pod都有一个唯一的IP。

    Pod具有如下特征:

      • 包含多个共享IPC、Network和UTC namespace的容器,可直接通过localhost通信
      • 所有Pod内容器都可以访问共享的Volume,可以访问共享数据
      • 优雅终止:Pod删除的时候先给其内的进程发送SIGTERM,等待一段时间(grace period)后才强制停止依然还在运行的进程
      • 特权容器(通过SecurityContext配置)具有改变系统配置的权限(在网络插件中大量应用)
      • 支持三种重启策略(restartPolicy),分别是:Always、OnFailure、Never
      • 支持三种镜像拉取策略(imagePullPolicy),分别是:Always、Never、IfNotPresent
      • 资源限制,Kubernetes通过CGroup限制容器的CPU以及内存等资源,可以设置request以及limit值
      • 健康检查,提供两种健康检查探针,分别是livenessProbe和redinessProbe,前者用于探测容器是否存活,如果探测失败,则根据重启策略进行重启操作,后者用于检查容器状态是否正常,如果检查容器状态不正常,则请求不会到达该Pod
      • Init container在所有容器运行之前执行,常用来初始化配置
      • 容器生命周期钩子函数,用于监听容器生命周期的特定事件,并在事件发生时执行已注册的回调函数,支持两种钩子函数:postStart和preStop,前者是在容器启动后执行,后者是在容器停止前执行

    2、Namespace

    Namespace(命名空间)是对一组资源和对象的抽象集合,比如可以用来将系统内部的对象划分为不同的项目组或者用户组。常见的pod、service、replicaSet和deployment等都是属于某一个namespace的(默认是default),而node, persistentVolumes等则不属于任何namespace。

    3、Node

    Node是Pod真正运行的主机,可以是物理机也可以是虚拟机。Node本质上不是Kubernetes来创建的, Kubernetes只是管理Node上的资源。为了管理Pod,每个Node节点上至少需要运行container runtime(Docker)、kubelet和kube-proxy服务。

    4、Service

    Service是对一组提供相同功能的Pods的抽象,并为他们提供一个统一的入口,借助 Service 应用可以方便的实现服务发现与负载均衡,并实现应用的零宕机升级。Service通过标签(label)来选取后端Pod,一般配合ReplicaSet或者Deployment来保证后端容器的正常运行。

    5、Volume 存储卷

    默认情况下容器的数据是非持久化的,容器消亡以后数据也会跟着丢失,所以Docker提供了Volume机制以便将数据持久化存储。Kubernetes提供了更强大的Volume机制和插件,解决了容器数据持久化以及容器间共享数据的问题。

  • 相关阅读:
    java 环境变量
    maven配置国内镜像库
    swagger ui
    jenkins systemctl启动失败
    gradle 错误
    jenkins 自动构建gitlab项目
    git
    Spinnaker 介绍
    openstack 基础服务软件安装配置(queens,centos-7)
    openstack-nova(queens)
  • 原文地址:https://www.cnblogs.com/KL2016/p/15748962.html
Copyright © 2020-2023  润新知