当前位置: 首页 > 编程日记 > 正文

k8s入门系列之介绍篇

Kubernetes介绍
1.背景介绍
  云计算飞速发展
    - IaaS
    - PaaS
    - SaaS
  Docker技术突飞猛进
    - 一次构建,到处运行
    - 容器的快速轻量
    - 完整的生态环境
2.什么是kubernetes
  Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部:Borg)。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。
  Kubernetes优势:
    - 容器编排
    - 轻量级
    - 开源
    - 弹性伸缩
    - 负载均衡

•Kubernetes的核心概念
1.Pod
  运行于Node节点上,若干相关容器的组合。Pod内包含的容器运行在同一宿主机上,使用相同的网络命名空间、IP地址和端口,能够通过localhost进行通。Pod是Kurbernetes进行创建、调度和管理的最小单位,它提供了比容器更高层次的抽象,使得部署和管理更加灵活。一个Pod可以包含一个容器或者多个相关容器。
2.Replication Controller
  Replication Controller用来管理Pod的副本,保证集群中存在指定数量的Pod副本。集群中副本的数量大于指定数量,则会停止指定数量之外的多余容器数量,反之,则会启动少于指定数量个数的容器,保证数量不变。Replication Controller是实现弹性伸缩、动态扩容和滚动升级的核心。
3.Service
  Service定义了Pod的逻辑集合和访问该集合的策略,是真实服务的抽象。Service提供了一个统一的服务访问入口以及服务代理和发现机制,用户不需要了解后台Pod是如何运行。
4.Label
  Kubernetes中的任意API对象都是通过Label进行标识,Label的实质是一系列的K/V键值对。Label是Replication Controller和Service运行的基础,二者通过Label来进行关联Node上运行的Pod。
5.Node
  Node是Kubernetes集群架构中运行Pod的服务节点(亦叫agent或minion)。Node是Kubernetes集群操作的单元,用来承载被分配Pod的运行,是Pod运行的宿主机。

•Kubernetes架构和组件
架构:


主从分布式架构,Master/Node
  - 服务分组,小集群,多集群
  - 服务分组,大集群,单集群
组件:
  Kubernetes Master控制组件,调度管理整个系统(集群),包含如下组件:
  1.Kubernetes API Server
    作为Kubernetes系统的入口,其封装了核心对象的增删改查操作,以RESTful API接口方式提供给外部客户和内部组件调用。维护的REST对象持久化到Etcd中存储。
  2.Kubernetes Scheduler
    为新建立的Pod进行节点(node)选择(即分配机器),负责集群的资源调度。组件抽离,可以方便替换成其他调度器。
  3.Kubernetes Controller
    负责执行各种控制器,目前已经提供了很多控制器来保证Kubernetes的正常运行。

- Replication Controller
    管理维护Replication Controller,关联Replication Controller和Pod,保证Replication Controller定义的副本数量与实际运行Pod数量一致。
   - Node Controller
    管理维护Node,定期检查Node的健康状态,标识出(失效|未失效)的Node节点。
   - Namespace Controller
    管理维护Namespace,定期清理无效的Namespace,包括Namesapce下的API对象,比如Pod、Service等。
   - Service Controller
    管理维护Service,提供负载以及服务代理。
   - EndPoints Controller
    管理维护Endpoints,关联Service和Pod,创建Endpoints为Service的后端,当Pod发生变化时,实时更新Endpoints。
   - Service Account Controller
    管理维护Service Account,为每个Namespace创建默认的Service Account,同时为Service Account创建Service Account Secret。
   - Persistent Volume Controller
    管理维护Persistent Volume和Persistent Volume Claim,为新的Persistent Volume Claim分配Persistent Volume进行绑定,为释放的Persistent Volume执行清理回收。
   - Daemon Set Controller
    管理维护Daemon Set,负责创建Daemon Pod,保证指定的Node上正常的运行Daemon Pod。
   - Deployment Controller
    管理维护Deployment,关联Deployment和Replication Controller,保证运行指定数量的Pod。当Deployment更新时,控制实现Replication Controller和 Pod的更新。
   - Job Controller
    管理维护Job,为Jod创建一次性任务Pod,保证完成Job指定完成的任务数目
   - Pod Autoscaler Controller
    实现Pod的自动伸缩,定时获取监控数据,进行策略匹配,当满足条件时执行Pod的伸缩动作。

  Kubernetes Node运行节点,运行管理业务容器,包含如下组件:
  1.Kubelet
    负责管控容器,Kubelet会从Kubernetes API Server接收Pod的创建请求,启动和停止容器,监控容器运行状态并汇报给Kubernetes API Server。
  2.Kubernetes Proxy
    负责为Pod创建代理服务,Kubernetes Proxy会从Kubernetes API Server获取所有的Service信息,并根据Service的信息创建代理服务,实现Service到Pod的请求路由和转发,从而实现Kubernetes层级的虚拟转发网络。
  3.Docker
    Node上需要运行容器服务。

相关文章:

元宵节就要到了,花灯要不要来一盏?3D的那种

又是一年元宵佳节!我国各地庆祝元宵节的方式很有讲究,有的地方吃汤圆,一个个软糯香圆;有的地方办灯展,十分热闹。当然,疫情当下,为了大家的安全,不建议线下聚众集会。但是&#xff0…

Android Timer的使用

1&#xff1a;服务端使用PHP <?phpecho date(Y-m-d H:i:s); ?> 2&#xff1a;activity_main.xml <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools"android:layout_w…

屏蔽相应键盘按钮

<script language"Javascript"><!-- //屏蔽鼠标右键、CtrlN、ShiftF10、F11、F5刷新、退格键 //Author: meizz(梅花雨) 2002-6-18 function document.oncontextmenu(){event.returnValuefalse;}//屏蔽鼠标右键function window.onhelp(){return false} //…

MySQL查询缓存

2019独角兽企业重金招聘Python工程师标准>>> MySQL 查询缓存保存查询返回的完整结果。当查询命中改缓存&#xff0c;MySQL 会立刻返回结果&#xff0c;跳过了解析、优化和执行阶段。 查询缓存系统会跟踪查询涉及查询中的每个表&#xff0c;如果这些表发生变化&#…

事半功倍系列 javascript

清华大学出版的《事半功倍系列 javascript》,本人照着书敲出来的,有些翻译了一下.前几年看了一下,最近无事,重新翻了翻,很有帮助.本书应该有光盘的,但学校的书,光盘不知在哪.希望对你学 javascript有帮助 第一章javascript简介 1.在地址栏输入javascript语句 Javascript:Doc…

Golang 本地帮助文档

2019独角兽企业重金招聘Python工程师标准>>> godoc -http:8000 url: http://127.0.0.1:8000 转载于:https://my.oschina.net/koalaone/blog/169626

2021版Java知识体系详解!(赠视频)

本篇文章是我们整理的一份架构师的成长路线&#xff0c;包括了并发编程、设计模式、常用框架、中间件、微服务与分布式、常用工具、JVM、MySQL、数据结构与算法&#xff0c;还有架构师精选视频、架构师成长路线高清大图。又是新的一年&#xff0c;每一年都会有人在成为架构师的…

【6】font-size 字体属性

font-style -- 字体风格font-variant -- 小型大写字母文本font-weight -- 文本的粗细font-size/line-height -- 大小/行高font-family -- 字体常用格式&#xff1a; fo…

MIS开发中.net Framework的打印功能

Microsoft .net Framework的打印功能都以组件的方式提供&#xff0c;为程序员提供了很大的方便&#xff0c;但是这几个组件的使用还是很复杂的&#xff0c;有必要解释一下。 打印操作通常包括以下四个功能 1 打印设置 设置打印机的一些参数比如更改打印机驱动程序等 2 页面设置…

UML部署图(转载)

概述: 部署图用于可视化的软件组件部署的系统中的物理组件的拓扑结构。 因此&#xff0c;部署图是用来描述一个系统的静态部署视图。部署图由节点和它们之间的关系。 目的: 部署名称本身描述的原理图的目的。部署图用于描述软件组件部署的硬件组件。组件图和部署图是密切相关的…

一年新增457万例,用 Python 揭示癌症的可怕之处

来源 | 数据分析与篮球作者 | 俊欣头图 | 下载于视觉中国2月27日下午5时许&#xff0c;香港著名演员吴孟达去世&#xff0c;引发了众多影星以及网友在社交媒体上面的悼念&#xff0c;根据其好友田启文的透露&#xff0c;吴孟达是去年年底发现自己患上肝癌的&#xff0c;当时癌细…

深度学习与计算机视觉系列(9)_串一串神经网络之动手实现小例子

深度学习与计算机视觉系列(9)_串一串神经网络之动手实现小例子 作者&#xff1a;寒小阳 时间&#xff1a;2016年1月。 出处&#xff1a;http://blog.csdn.net/han_xiaoyang/article/details/50521072 声明&#xff1a;版权所有&#xff0c;转载请联系作者并注明出处 1.引言 前面…

虚拟主机上用Asp.net实现Urlrewrite

在网上看到&#xff0c;很多朋友在asp.net中做urlrewrite&#xff0c;用的是HttpHandle&#xff0b;Server.Transfer的方法。其实这种方法是错误的。第一&#xff0c;HttpHandle是实现不了urlrewrite的&#xff1b;第二Server.Transfer是标准的重定向&#xff0c;根本不是urlre…

String spilt时转义特殊字符【转】

在使用String.split方法分隔字符串时&#xff0c;分隔符如果用到一些特殊字符&#xff0c;可能会得不到我们预期的结果。 我们经常使用public String[] split(String regex)方法来拆分一个有分隔符的字符串&#xff0c;但是由于参数regex是一个 regular-expression的匹配模式而…

融合AI与大数据技术,腾讯教育发布智能作业灯

3月2日&#xff0c;腾讯教育新品发布会在深圳举行&#xff0c;发布会上&#xff0c;腾讯教育联合暗物智能正式对外发布了AILA智能作业灯&#xff0c;并与华东师范大学出版社、宏途教育、众诚智学教育、江西软云科技等教育行业合作伙伴签订战略合作协议&#xff0c;共同打造智慧…

【踩坑记录】记一次MySQL主从复制延迟的坑

最近开发中遇到的一个MySQL主从延迟的坑&#xff0c;记录并总结&#xff0c;避免再次犯同样的错误。 情景 一个活动信息需要审批&#xff0c;审批之后才能生效。因为之后活动要编辑&#xff0c;编辑后也可能触发审批&#xff0c;审批中展示的是编辑前的活动内容&#xff0c;考虑…

ASP.NET 应用中大文件上传研究

在项目中经常要用到了大文件上传&#xff0c;要上传的文件有100多m&#xff0c;于是研究现在国内使用的大文件上传的组件发现用的比较多的有两个控件AspnetUpload 2.0和Lion.Web.UpLoadModule&#xff0c;两个控件的方法是&#xff1a;利用隐含的HttpWorkerRequest&#xff0c;…

哪家互联网公司涨薪最厉害?居然不是阿里腾讯

最近脉脉职言区有一条讨论火了&#xff1a;哪家互联网公司涨薪最厉害&#xff1f;按照拼多多员工的说法&#xff0c;应届毕业生可以拿比腾讯阿里高30%的薪资&#xff0c;而有工作经验的员工普遍薪资水平也高出业内30%~50%以上。而且在去年由于疫情众多企业降薪、甚至裁员的状况…

如何修改 远程桌面的 默认端口号 3389

修改注册表的以下位置的键值&#xff1a; [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]"PortNumber"dword:00000d3d

Yolov11-detect训练自己的数据集

至此,整个YOLOv11的训练预测阶段完成,与YOLOv8差不多。欢迎各位批评指正。

联通和阿里云合作 建互联网云化卡号管理系统

1月17日晚间消息&#xff0c;继去年11月中国联通与阿里巴巴签订战略合作框架协议之后&#xff0c;今天下午阿里云宣布将于中国联通建卡号管理系统“cBSS2.0集中号卡系统”。据了解&#xff0c;这将是电信行业第一个核心业务系统云化改造的重点工程&#xff0c;也是云计算技术在…

如何最大限度提高.NET的性能

优化 .NET的性能 1&#xff09;避免使用ArrayList。 因为任何对象添加到ArrayList都要封箱为System.Object类型&#xff0c;从ArrayList取出数据时&#xff0c;要拆箱回实际的类型。建议使用自定义的集合类型代替ArrayList。.net 2.0提供了一个新的类型&#xff0c;叫泛型…

别找了,Thonny 才是 Python 小白的最理想的 IDE

来源 | Python编程时光作者 | 写代码的明哥头图 | 下载于视觉中国当你在搜索引擎&#xff08;如百度&#xff09;或者各种问答社区&#xff08;如知乎&#xff09;搜索『学习Python 最好的 IDE/编辑器是哪个&#xff1f;』的时候&#xff0c;我想答案肯定是&#xff1a;PyCharm…

图书抄袭何时休,技术人的版权在哪里?

今天&#xff0c;一个很偶然的机会&#xff0c;看到了一本北京邮电大学出版社出版的技术图书《Linux服务器架设、性能调优、集群管理教程——实训与项目案例》&#xff0c;感觉有种似曾相识的感觉&#xff0c;于是打开目录大概了解了下&#xff0c;一个我不想看到的现象发生了&…

让MySql支持表情符号(MySQL中4字节utf8字符保存方法)

UTF-8编码有可能是两个、三个、四个字节。Emoji表情是4个字节&#xff0c;而MySQL的utf8编码最多3个字节&#xff0c;所以数据插不进去。解决方案&#xff1a;将编码从utf8转换成utf8mb4。 1. 修改my.ini [mysqld] character-set-serverutf8mb4 2. 在Connector/J的连接参数中&a…

短信编码类无错版PDUdecoding.cs

////程 序 员&#xff1a;武志文(蚕蛹)/// sillnet163.net///文 件&#xff1a;PDUdecoding.cs///概 要&#xff1a;针对国内短信编码&#xff08;USC2&#xff09;///组成结构&#xff1a;包含四个函数&#xff1a;/// smsDecodedCenterNumber(string…

你还有学了三年建模的朋友吗?他有救了

【 编者按】“我朋友学了 3 年建模”系列&#xff0c;一直以浮夸的操作占据于各大视频网站搞笑榜。此前&#xff0c;来自布拉格捷克理工大学、 Google 研究院、和华盛顿大学以及苏黎世联邦理工学院的研究者们发布了 Monster Mash 项目的论文和动效视频。用户绘制二维图像&#…

iOS培训objective-c——实例化对象

蓝鸥iOS培训推荐&#xff1a;好像好长时间没和大家分享了&#xff0c;那么今天主要和大家说说OC内容创建实例化对象&#xff0c;基本让也就分为几大类&#xff1a;1.ClassName*myNewClassName;//指针2.myNewClassName[ClassNamealloc];//通过alloc这个命令申请一个空间来存放我…

#423 Div2 D

#423 Div2 D 题意 构造一个 n 个节点的树&#xff0c;恰好有 k 个叶子节点 (叶子节点的定义是只与树上的某一个节点存在连边)&#xff0c;要求任意两个叶子节点的距离的最大值最小&#xff0c;距离为两个节点间边的数量&#xff0c;输出距离的最大值&#xff0c;以及 n - 1 条边…

CDMA模块上网设置的过程

CDMA模块上网设置的过程一&#xff09; AT指令设置部分&#xff08;1&#xff09; ATCSQ 检查信号 若返回10—31&#xff0c;99之间的信号数字则继续&#xff0c;如果信号是99&#xff0c;99&#xff0c;则应该考虑不停的键入A/命令&#xff0c;不停的让模块去搜寻网络。&…