首页 > 其他分享 >k8s的架构和组件介绍1

k8s的架构和组件介绍1

时间:2022-10-17 23:12:50浏览次数:55  
标签:node 容器 架构 API 组件 k8s 节点

image-20221017222356584

                                                          1图

openstack是kvm的管理集群,k8s是docker的管理集群,一个k8s节点可以管理n多个宿主机节点,master节点控制node节点,node节点负责工作,etcd做数据库,k8s里面最核心的就是API Server ,我们操作就是通过API Server来控制k8s ;研发人员来操作我们的k8s,只能命令API Server,剩下的组件命令不了。多个节点,每个节点里面有容器,我要创建一个容器,谁来启动这个容器,这个时候就需要调度了,那么Scheduler就来调度,有了Scheduler之后,就可以选择一个合适的节点之后,之后API Server命令哪个node节点上的kubelet服务,kubelet在调用docker,docker去启动容器,每个node节点上都得安装一个kubelet服务。这些容器都运行在node节点上,和master节点没有关系。外界用户访问的就是node节点上的容器,node节点上的Kube-Proxy服务帮我们的容器做了自动端口映射。容器运行着一旦内存不够了就自动挂了,容器比较容易挂,K8s的master节点有一个巡查组件Controller Manager ,每个node节点的容器每秒中都会检查一次,只要挂了,就给你再启动起来。如果发现这个node节点都挂了,这个节点上的容器都锁了。不要担心,我全部迁移到其他节点上,在把这些容器都启动起来。因为要启动哪些容器,数据库etcd里面都有。Controller Manager一读数据库etcd,发现这个node节点的容器没启动起来,就是找一个node节点来帮他启动起来,始终保证容器的高可用,保证服务的高可用。这就是k8s的主要架构。k8s的这个架构要比openstack简略很多。组件比较少功能也比较简单。如1图所示

image-20221017222309395

                        2图

master节点上需要搭建四个服务,API Server ,Controller Manager,Scheduler,etcd;node节点上搭建两个服务,Kubelet,Kube-Proxy;装好kubelet服务的时候会自动把docker装上。以上这些都是核心组件。如2图所示

image-20221017222058295

                         3图

还有附加组件 kube-dns可以做集群服务,负责为整个集群提供DNS服务,DNS就是做域名解析的;默认k8s里面容器之间有个负载均衡调度,是基于四层负载的;Ingress controller,后期可以提供一个七层负载均衡,就是通过这个Ingress controller来实现的;后期弹性伸缩里面就需要用到heapster监控。Dashboard提供一个友好的图形web界面,方便点击,只需要通过鼠标点击就可以控制k8s里面的所有资源;搭建多个k8s集群的时候,Federation可以集中起来管理;Fluentd-elasticsearch提供日志收集,存储日志与查询日志,在物理机上用的是elk,在容器里面用的就是Fluentd-elasticsearch。如图3所示

 

 

 

 

标签:node,容器,架构,API,组件,k8s,节点
From: https://www.cnblogs.com/ypyyds/p/16801094.html

相关文章

  • K8s---Kubernetes简介
    Kubernetes简介:kubernetes,简称k8s,是因为KuberneteS之间是由8个字符组成的,是一个开源的,用于管理云平台中多个主机上的容器化应用,也称容器的资源管理器、容器的编排工具......
  • K8S Service基础详解
    ​一起学kubernetes系列(2)‌本篇文章我们介绍KubernetesService的各个类型,各类端口的含义,向外部暴露内部服务的方式。Service介绍Kubernetes中一个应用服务会有一个或多......
  • 一起学kubernetes系列(3)‌K8S的WebUI:Dashboard&Kuboard
    ​本篇介绍2套kubernetes的WEBUI管理控制台Kubernetes官方Dashboard部署KubernetesDashboard是Kubernetes的官方WebUI。使用KubernetesDashboard,您可以:向Kubern......
  • 如何修改vant组件库中下拉菜单的背景色
    一、前言vant组件库在前端APP开发中可以说出现的频率是非常高的,但是刚开始接触时总会遇到一些难以解决的问题,尤其是下拉菜单的(van-dropdown-menu)背景色,这篇博客将为你......
  • SWT组件介绍
    介绍本文介绍SWT中一些组件的使用方法。ScrolledComposite[captionid="attachment_2688"align="aligncenter"width="188"]​​​​ScrolledComposite[/caption][codesy......
  • Jmeter组件:Aggregate Report
    1、是什么AggregateReport:聚合报告,是jmeter中常用的监听器之一。2、参数详解Samples:取样器的数量Aveage:服务器平均响应时间Median:服务器响应时间中位数90%Line:90%的响应时......
  • K8S运维经验分享记录
    1.namespace资源限制:CPU、内存、Pod、Service命名空间设置了CPU或内存资源配额后,创建工作负载时,必须指定CPU或内存的请求值(request)和限制值(limit)apiVersion:v1kind:Resou......
  • ITIL(IT基础架构库)学习历程(四)——ITIL服务价值体系
    ITIL(IT基础架构库)学习历程(四)——ITIL服务价值体系一、服务价值体系ITILServerValueSystem(服务价值体系,SVS)描述了组织的所有组件和活动如何作为一个系统协同工作,以实......
  • k8s限制cpu和内存的策略
    1.概要最近发现一个服务cpu占用了100%,导致整个服务器崩溃的悲剧,我就想k8s如何能够限制cpu/内存等的时候了。研究了一下发现还真的可以,这篇做个记录2.POD级别2.1.配置d......
  • 可见光项目节点加入k8s集群
    一、安装jdk:64rpm-qa|grepjava65rpm-ejava-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64--nodeps66rpm-ejava-1.8.0-openjdk-headless-1.8.0.181-7.b13......