建设项目网站备案申请表,免费网站空间怎么办,建设银行网站一直打不开,大岭山镇网站建设Kubernetes为什么叫K8S#xff1a;因为K和S之间有8个字母
为什么需要K8S
对于云计算来说有自己的交互标准 Paas的下一代标准就是容器化#xff0c;容器的集群化有没有很好的方案#xff1f;有需求就会有产品#xff0c;这个产品就叫做资源管理器。 首先是Apache的MESOS因为K和S之间有8个字母
为什么需要K8S
对于云计算来说有自己的交互标准 Paas的下一代标准就是容器化容器的集群化有没有很好的方案有需求就会有产品这个产品就叫做资源管理器。 首先是Apache的MESOS最开始不是为容器化诞生的而是作为最基础的资源管理器是开源的分布式资源管理框架。后被推特选中作为其基础平台大规模盛行但是好景不长2019年推特宣布不使用MESOS全面使用K8S。 Docker SWARM是Docker的总部诞生的一款资源管理器主要实现的是Docker的集群化方案。新版Docker已经和SWARM融为一体了SWARM已经成为了Docker内部的组件功能。安装Docker之后Docker SWARM init就可以声明一个Docker集群而老版本中需要附加一些组件etcd)才可以实现。首先Docker SWARM很轻量本机消耗的额外资源只有几十MB而已对于一个集群化资源管理器来说相当于没有。那为什么我们选中的是K8S而不是SWARM?主要原因是它的功能相较于K8S还是太单一太少。K8S功能全面非常适合企业的运行。
K8S的发展
为什么突然就蹦出来一个K8S成为企业选择的主流方案了Docker官方的SWARM为什么不好使 原因是K8S的靠山是Google。Google在10年前就已经将容器化作为其基础架构了有一个组件叫borg它就是Google内部管理容器的一个框架的资源管理器。其它的公司也想用但是Google不对外开放不差钱。随着Docker的火爆越来越多的公司介入容器的资源管理器此时Google站出来说话了完用未来的趋势不是我的borg框架就尴尬了于是Google公司派了几名工程师采用GO语言对borg系统进行翻写采用了borg的一些设计思路开发出了新的组件也就是K8S。自称K8S诞生并且开源给了容器基金会。成为了当前的标准
K8S有什么样的特点
1.轻量级 对于现存的资源管理器大多采用解释型语言开发像Java等解释型语言效率低下作为管理器来说日常工作非常繁忙并且解释型语言会消耗大量的内存所以运行起来之后并不轻量。K8S采用的是GO语言GO语言被誉为现代的C语言GO也是解释型语言效率跟C看齐但是比C语言好的是在语级别支持进程管理不需要人为的去控制。因此由GO语言开发的K8S对系统占用是非常小的。因此轻量级不是说功能少而是消耗的资源少。 2.开源 3.弹性伸缩 当资源不够用的时候可以扩展资源并且扩展的过程是平缓的升级不能说又是改配置又是重启。在主节点通过一条命令就可以将一些节点剥离出集群调度即就是当访问量不需要这么多节点的时候就可以释放这些节点的资源。 4.负载均衡 K8S内部已经实现了模块之间的负载均衡完全不需要搭载调度器去实现完全由K8S本机去实现并且采用IPVS的框架
框架及组件说明
Google borg架构 BorgMaster负责请求分发相当于大脑 高可用集群副本数目最好是3的奇数。 为什么是奇数投票的时候方便决策
K8S架构 组件说明 APISERVER所有服务访问统一入口 CrontrollerManager维持副本期望数目 Scheduler负责接受任务选择合适的节点进行分配任务 ETCD键值对数据库储存K8S集群所有重要信息持久化 Kubelet直接跟容器引擎交互实现容器的生命周期管理 Kube-proxy负责写入规则至IPTABLES、IPVS实现服务映射访问的
COREDNS可以为集群中的SVc创建一个域名IP的对应关系解析 DASHBOARD给K8S集群提供 B/S结构访问体系 INGRESS CONTROLLER官方只能实现四层代理 INGRESS可以实现七层代理可以根据主机名域名进行负载均衡 FEDERAT工ON提供一个可以跨集群中心多K8S统一管理功能 PROMETHEUS提供K8S集群的监控能力 ELK提供K8S集群日志统一分析接入平台
etcd 的官方将它定位成一个可信赖的分布式键值存储服务它能够为整个分布式集群存储一些关键数据协助分布式集群的正常运转
etcd内部架构图 依然是一个采用HTTP协议进行C/S的构件服务除此之外K8S也是采用这种方案。因为HTTP协议天生支持PUT,GET等等操作包括授权认证Raft里面存放的是所有的读写信息并且为了防止这些信息出现损坏还有一个WAL这是一个预写日志即就是如果要对信息进行修改需要先生成一个日志并且会定时对这些日志进行完整备份因为随时进行完整备份消耗量太大还会实时将增量日志写入本地磁盘进行保存。