• Kubernetes基本概念


    Kubernete模型中的核心概念。这些核心概念反映了Kubernetes设计过程中对应用容器集群的认知模型。

    集群组件,从架构上看,Kubernetes集群(Cluster)也采用了典型的“主-从”架构。一个集群主要由管理组件(Master)和工作节点(Node)组件构成。

    Kubernetes集群的主要任务始终围绕着应用的生命周期。通过将不同资源进行不同层次的抽象,Kubernetes提供了灵活可靠的生命周期管理。

    资源的核心抽象主要包括:

    1. 容器组(Pod):由位于同一节点上若干容器组成,彼此共享网络命名空间和存储卷(Volume)。Pod是Kubernetes中进行管理的最小资源单位,是最为基础的概念。跟容器类似,Pod是短暂的,随时可变的;
    2. 服务(Service):若干(往往是同类型的)Pod形成的对外提供某个功能的抽象,不随Pod改变而变化,带有唯一固定的访问路径,如IP地址或者域名。
    3. 复制控制器(Replication Controller):负责启动Pod,并维护其健康运行的状态。是用户管理Pod的句柄。
    4. 部署(Deployment):创建Pod,并可根据参数自动创建管理Pod的复制控制器,并且支持升级。1.2.0版本引入提供比复制控制器更方便的操作;
    5. 横向Pod扩展器(Horizontal Pod Autoscaler,HPA):类似云里面的自动扩展组,根据Pod的使用率(典型如CPU)自动调整一个部署里面Pod的个数,保障服务可用性;

    还有一些管理资源相关的辅助概念,主要包括:

    1. 注解(Annotation):键值对,可以存放大量任意数据,一般用来添加对资源对象的详细说明,可供其他工具处理。
    2. 标签(Label):键值对,可以标记到资源对象上,用来对资源进行分类和筛选;
    3. 名字(Name):用户提供给资源的别名,同类资源不能重名;
    4. 命名空间(Namespace):这里是指资源的空间,避免不同租户的资源发生命名冲突,另外可以进行资源限额;
    5. 持久卷(PersistentVolume):类似于Docker中数据卷的概念,就是一个数据目录,Pod对其有访问权限。
    6. 秘密数据(Secret):存放敏感数据,例如用户认证的口令等;
    7. 选择器(Selector):基于标签概念的一个正则表达式,可通过标签来筛选出一组资源;
    8. Daemon集(DaemonSet):确保节点上肯定运行某个Pod,一般用来采集日志和监控节点;
    9. 任务(Job):确保给定数目的Pod正常退出(完成了任务);
    10. 入口资源(Ingress Resource):用来提供七层代理服务;
    11. 资源限额(Resource Quotas):用来限制某个命名空间下对资源的使用,开始逐渐提供多租户支持;
    12. 安全上下文(Security Context):应用到容器上的系统安全配置,包括uid、gid、capabilities、SELinux角色等;
    13. 服务账号(Service Accounts):操作资源的用户账号。
  • 相关阅读:
    Apache Solr学习 第二篇 solr安装(windows)
    Apache Solr学习 第一篇 简介和安装环境准备
    第二篇 redis常用操作命令
    第一篇 redis简介及安装
    使用maven安装jar包到本地仓库时遇到The goal you specified requires a project to execute but there is no POM in this directory错误
    使用Arrays.asList()时遇到的问题
    linux下zookeeper的安装
    第六篇 mybatis的运行原理(3):工厂方法模式,SqlSession的创建
    leetcode 剑指 Offer 35. 复杂链表的复制
    leetcode 112. 路径总和
  • 原文地址:https://www.cnblogs.com/doit8791/p/9788320.html
Copyright © 2020-2023  润新知