范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Kubernetes从云原生到kubernetes

  一、前言二、kubernetes和云原生
  Cloud Native 直接翻译为云原生,云原生官网:https://www.cncf.io/
  CNCF,表示 Cloud Native Computing Foudation ,翻译为 云原生计算基金会,属于Linux基金会,初衷是围绕"云原生"服务云计算,维护和集成开源技术,支持编排容器化微服务架构应用。
  时至今日,Kubernetes逐渐已经成为云原生失败的基础设置。
  Docker是容器化技术,Kubernetes是一种容器编排技术,之前还有一个Docker Swarm也是一种容器编排技术,但是已经不被使用。
  云原生这三字,云表示在云服务器上部署,原生的意义就是 部署在一个陌生的环境,像部署在自己熟悉的环境上,类似于 JVM 一次编译,到处运行。
  要实现云原生这个一次编译,到处运行,涉及很多组件,从小到大,Docker是容器化部署,Kubernetes是容器编排工具(Docker Swarm也是),对Docker进行编排,就是通过 yaml 文件来实现;Helm是包管理工具,对Kubernetes的 yaml 进行编排,Helm 中通过 if 块可以用 values.yaml 文件中变量 精确的决定 kubernetes yaml 文件中哪一行是否需要被运用。
  kubernetes是云原生时代基础设施,如下图:
  上图表示,将应用部署在Kubernetes集群上,这样 应用就可以在 公有云 私有云 混合云 上无缝迁移。应用包括用于数据存储的有状态的应用,使用StatefulSet部署,不用于数据存储的无状态的应用,使用Deployment部署。
  Kubernetes四种部署方式:Deployment StatefulSet DaemonSet Job(CronJob)
  ReplicaSet 存在的意义就是 replicas 这个属性 how many Pods
  Deployment 存在的意义就是无状态
  StatefulSet 存在的意义就是有状态
  DaemonSet 存在的意义就是日志 监控
  Job(CronJob) 存在的意义是一次性任务和定时任务
  小结:云原生这三字,云表示在云服务器上部署,原生的意义就是部署在一个陌生的环境,像部署在自己熟悉的环境上,类似于 JVM 一次编译,到处运行。容器化部署实现了这个目标,Kubernetes是一种容器编排技术,所以说Kubernetes是云原生时代基础设施,这就是Docker、Kubernetes与云原生的关系。 三、从Docker Swarm到Kubernetes
  kubernetes本质是一个容器编排技术,docker内置的 docker swarm 也是做容器编排的,都是管理和编排Docker Container容器,但是对于容器编排,k8s更加优秀,是现在的主流。
  重点学习kubernetes,docker swarmy了解即可,知道有这个东西即可。
  Github上:https://github.com/kubernetes/kubernetes
  docker swarm 架构设计(了解即可)
  四、kubernetes组件和架构简介4.1 kubernetes组件
  本节官方地址(K8S Docs Concepts):https://kubernetes.io/docs/concepts/ 4.1.1 Container
  (1)先以container为起点,k8s既然是容器编排工具,那么一定会有container
  4.1.2 Pod
  那k8s如何操作这些container呢?从感性的角度来讲,得要有点逼格,k8s不想直接操作container,因为操作container的事情是docker来做的,k8s中要有自己的最小操作单位,称之为Pod说白了,Pod就是一个或多个Container的组合
  官方解释 :https://kubernetes.io/docs/concepts/workloads/pods/pod/
  A Pod (as in a pod of whales or pea pod) is a group of one or more containers (such as Docker containers), with shared storage/network, and a specification for how to run the containers. 4.1.3 ReplicaSet
  那Pod的维护谁来做呢?那就是ReplicaSet,通过selector来进行管理
  官方解释 :https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/
  A ReplicaSet is defined with fields, including a selector that specifies how to identify Pods it can acquire, a number of replicas indicating how many Pods it should be maintaining, and a pod template specifying the data of new Pods it should create to meet the number of replicas criteria. 4.1.4 Deployment
  Pod和ReplicaSet的状态如何维护和监测呢?Deployment
  官网是如何描述的 :https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
  A Deployment controller provides declarative updates for Pods and ReplicaSets. You describe a desired state in a Deployment, and the Deployment controller changes the actual state to the desired state at a controlled rate. You can define Deployments to create new ReplicaSets, or to remove existing Deployments and adopt all their resources with new Deployments. 4.1.5 Label与Selector
  不妨把相同或者有关联的Pod分门别类一下,那怎么分门别类呢?Label
  官网是如何描述的 :https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
  Labels are key/value pairs that are attached to objects, such as pods.
  label 可以在任何类型的资源上,然后用 selector 选择器来选择,比如pod、node,都可以打标签。  4.1.6 Service
  具有相同label的service要是能够有个名称就好了,Service
  看官网上怎么说 :https://kubernetes.io/docs/concepts/services-networking/service/
  An abstract way to expose an application running on a set of Pods as a network service.
  With Kubernetes you don’t need to modify your application to use an unfamiliar service discovery mechanism. Kubernetes gives Pods their own IP addresses and a single DNS name for a set of Pods, and can load-balance across them. 4.1.7 Node
  上述说了这么多,Pod运行在哪里呢?当然是机器咯,比如一台centos机器,我们把这个机器称作为Node.
  看看官网怎么说 :https://kubernetes.io/docs/concepts/architecture/nodes/
  A node is a worker machine in Kubernetes, previously known as a minion. A node may be a VM or physical machine, depending on the cluster. Each node contains the services necessary to run pods and is managed by the master components. 4.1.8 多Node节点组成的集群
  难道只有一个Node吗?显然不太合适,多台Node共同组成集群才行嘛
  画个图表示一下咯,最好能把之前的Label,Service也一起画上去,整体感受一下
  此时,我们把目光转移到由3个Node节点组成的Master-Node集群
  4.2 kubernetes架构
  这个集群要配合完成一些工作,总要有一些组件的支持吧?接下来我们来想想有哪些组件,然后画一个相对完整的架构图
  01-总得要有一个操作集群的客户端,也就是和集群打交道
  回答:kubectl,每个集群node上都可以使用kubectl,只要 /root/.kube/config 文件。
  02-请求肯定是到达Master Node,然后再分配给Worker Node创建Pod之类的 关键是命令通过kubectl过来之后,是不是要认证授权一下?
  回答:Master Node上的apiserver,/etc/kubernetes/manifests目录下有 kube-apiserver.yaml 文件
  03-请求过来之后,Master Node中谁来接收?
  回答:APIServer
  04-API收到请求之后,接下来调用哪个Worker Node创建Pod,Container之类的,得要有调度策略
  回答:Master节点的上的静态Pod Scheduler 来负责。
  官方资料:https://kubernetes.io/docs/concepts/scheduling/kube-scheduler/
  05-Scheduler通过不同的策略,真正要分发请求到不同的Worker Node上创建内容,具体谁负责?
  回答: Controller Manager
  06-Worker Node接收到创建请求之后,具体谁来负责?
  回答:Kubelet服务,最终Kubelet会调用Docker Engine,创建对应的容器[这边也反应出一点,在Node上需要有Docker Engine,才能创建维护容器]
  07-会不会涉及到域名解析的问题?
  回答:主节点上的CoreDNS服务
  08-是否需要有监控面板能够监测整个集群的状态?
  回答:Dashboard
  09-集群中这些数据如何保存?
  回答:分布式存储 ETCD
  10-至于像容器的持久化存储,网络等可以联系一下
  回答:Docker中的内容
  11- 不妨用一个图片总结整个流程
  回答:
  这个图片上告诉我们:
  (1) 对于主节点来说,kubectl 连接主节点的所有操作,都必须通过 apiserver 的认证、授权、准入控制,才能正常进行;
  (2) 四个静态Pod: apiserver controllerManager scheduler etcd 都是运行在主节点上,apiserver用于认证、打开外网、rbac授权、controllerManager用来管理各种controller,包括 replicaset deployment statefulset daemonset job/cronjob,scheduler决定某个Pod分配哪个Node上,etcd作为配置中心存放数据。
  (3) dashboard 提供简单的可视化,完整的可视化还是需要 Prometheus+Grafana 监控
  (4) 默认情况下主节点有污点Taint,不分配Pod运行
  (5) 每个节点上都会有 kubelet 服务,可以使用 systemctl status kubelet 查看
  每个节点上都会有 docker 服务 ,可以使用 systemctl status docker 查看,其作用是将镜像image运行起来变为容器Container
  每个节点上都会有 kube-proxy 容器 ,可以使用 kubectl get pod -o wide -n kube-system 查看,其作用是将 kubectl 发送到 service 的请求路由到 具体的Pod 上;
  每个节点上都会有 calico/fluend 容器 ,可以使用 kubectl get pod -o wide -n kube-system 查看,其作用Node之间网络通信;
  集群一些节点上有 dns 容器,可以使用 kubectl get pod -o wide -n kube-system 查看,其作用使用将 serviceName.namespace 解析为 集群内ip,也可以解析 外网域名,通过配置 /etc/resolv.conf nameserver域名解析服务器列表 和 /etc/hosts 本地域名解析文件来实现。
  再来一张横向架构图图,加深理解,如下:
  五、尾声
  从云原生到kubernetes,完成了。

杜兰特大交易的背后,是一次艰难抉择篮网放弃了继续冲冠的机会今年与往年有所不同,NBA交易截止日当天并没有传出令人瞠目结舌的消息,但即便是这样,也丝毫没有影响到本次交易窗口期的精彩程度,欧文杜兰特,威少等球星先后更换主队,让原本就竞争激烈的佩佩国米在红牌后才有更多机会,此前我们一直掌控比赛已经结束的欧冠18决赛首回合的比赛中,10人波尔图客场01不敌国际米兰。赛后,波尔图老将中卫佩佩和门将迪奥戈科斯塔也接受了媒体的采访谈到了自己对比赛的看法。佩佩表示在我们来到这里所华纳药厂营收近13亿连增五年蒙脱石散院供市占率36。38居第一长江商报消息长江商报记者潘瑞冬覆盖中药化药生物大分子药物产业链的华纳药厂(688799。SH)业绩稳步增长。2月22日,华纳药厂披露2022年业绩快报,报告期公司实现营收12。93国际收支仍将保持平衡近日,国家外汇管理局公布了2022年四季度及全年国际收支平衡表初步数据。数据显示,2022年我国国际收支基本平衡。其中,经常账户顺差4175亿美元,仅次于2008年的历史最高值,较越南制造ampampquot接替之路ampampquot能撑多久?对美出口下降40对欧出口减少60这是因为该国拥有着非常低廉的劳动力成本,为了能够获得更高的利润,降低成本,有许多工厂转移到了该国。大量企业的进入推动了该国经济发展,短时间之内越方的对外贸易快速提升。但是大量企业的香港有关加密货币新政的5个要点如何抓住香港新政红利?从老外的视角看香港新政,目前透露的监管框架可以满足传统机构投资者交易一部分加密资产的需求,但要适用于加密原生基金和散户积极交易者还有很长的道路要走。无论如何,有开始就是好的开始!香母公司冲刺上市的冷酸灵超五成募资拟用于营销,曾多次联名南都记者从深交所官网获悉,近日,老牌牙膏品牌冷酸灵的母公司重庆登康口腔护理用品股份有限公司(下称登康口腔)主板IPO获受理。南都记者关注到,登康口腔成人基础口腔护理产品为营收的主力晶圆代工厂们迎来最冷的一季度当前晶圆代工市场与去年上半年产能满载的景象形成了鲜明对比由于PC智能手机等消费电子市场需求持续疲软,半导体景气下滑,晶圆代工产能不再紧缺,产业发展进入调整时期。这一背景下,业界对今德国工业界正在变成富士康中国投资者去年对欧洲的公司收购和投资大幅减少。法兰克福汇报文章对此予以了关注。每日镜报文章认为,德国从中国的进口额陡增展示出一种趋势德国工业界正在变成中国供应商的终端制造基地一种形京东集团与龙江交投达成战略合作数智化供应链带动区域经济高质量发展近日,京东集团与黑龙江省交通投资集团有限公司(以下简称龙江交投)签署战略合作框架协议,双方将发挥各自优势,基于双方的战略共识和资源优势互补,寻求机会在现代物流产业数智化供应链体系建新时代铁路人林俊波北疆国门闪耀青春春运期间,一列列满载汽车配件家用电器等货品的中欧班列奔驰不息,驶往欧洲。呼和浩特机务段二连运用车间调车司机林俊波所在的9002青年文明号包乘组,担负着二连铁路口岸中欧班列的解编重组
17位中日登山队员遇难,7年后发现日记,记录的内容堪称诡异我国境内除却喜马拉雅山脉顶峰珠穆朗玛之外,还有许多世界著名的高峰。其中不乏被藏族人民奉为神山的冈仁波齐梅里雪山亚拉雪山。这些山峰或秀丽或壮阔的风景也吸引了无数旅客。其中一些雪山,更入住广东的小斯里兰卡,倚峦风吕温泉酒店,叹两日奢华游及时远离城市的喧嚣,寻找一个世外桃源,治疗心脏,一站式高端安静的度假体验,希望和你见过的扩散小斯里兰卡,一步一景,像置身白色的童话世界,庭院花园漫步,浅行动味红茶,林蝉噪声于静,鸟陌上秋意浓秋日生活打卡季东坡就是东坡,虽屡遭贬谪,即使在萧瑟的秋日,他依然高昂旷达不用悲秋,今年身健还高宴。江村海甸。总作空花观。尚想横汾,兰菊纷相半。楼船远。白雪飞乱。空有年年雁。时光荏苒成都的青城山分为前后山,我来告诉你,这两者的区别在哪里?青城山位于四川省都江堰市西南成都平原西北部青城山都江堰风景区内,距成都68公里,距都江堰市区16公里。古称丈人山,为邛崃山脉的分支。青城山前山青城山主要是分为前山和后山,前山景点的岳池石马山石马山,岳池县黄龙乡与南充鄢家交界处,县境以东,距离县城约四十里。站在山下顾县团坝村翘首仰望,石马山高高巍峨。临近的大马坪海拔638米,仅算石马山的半山腰,估计石马山海拔高度应有七小刀N11长征山区版来了,配石墨烯电池,续航200公里,适合跑长途您在阅读前请点击上面的关注二字,后续会第一时间为您提供更多有价值的相关内容,感谢您的支持。随着科学技术的发展,现在很多款电动车的续航里程已经超过了100公里,但是还是无法满足一些经满足这3个要求,电动车上路不再受处罚!了解一下绝无坏处我国是世界上的电动车生产大国,同时也是消费大国。中国的电动车不仅在短时间内实现了自给自足,而且还出口到许多国家。电动车产业在我国还算是一种新兴产业,无论是新能源汽车还是两轮电动车,专门给电动汽车充电的充电宝,充电速度是2级充电桩的三倍在酒店商场等很多的公共场所中我们都可以看见共享充电宝的身影,但是这些充电宝一般都是用来给我们的手机进行充电的,但是下面要介绍的这款充电宝却是为纯电汽车所专属打造的,目的就是缓解纯电小虎FEV值得入手东风小虎新能源汽车萌翻全场,小虎FEV共分为三门两座版和五门四座版两款车型,34万元您的完美选择!这让人直呼真香,吸引了众多消费者的关注。虎系新物,萌宠来袭外观上来看,小虎FEV使GPS已经跌落神坛,28年布局,中国北斗卫星系统全球时代已经到来上个世纪美国的海湾战争给全世界上了一课,让各国明白信息化战争和拥有自身导航系统的重要性。美军通过信息差将号称世界第三军事强国的伊拉克瞬间打的溃不成军。而中国认识到信息化的重要性之后共和国今年已痛失32位两院院士10月以来,3位两院院士相继离世。10月16日,分子生物学专家中国工程院院士王琳芳因病医治无效在北京逝世,享年93岁。王琳芳1929年11月出生于山东莱州,1951年毕业于哈尔滨医