k8s核心概念

一、集群架构与组件

1,相关组件

【1】 master node三个组件

  • k8s的控制节点,对集群进行调度管理,接受集群外用户去集群操作请求
  • master node 组成(四个组件):控制面
  1. API Server:通信
  2. kube-Scheduler:调度 通过调度算法将pod分布到节点(服务器)上
  3. Cluster State Store(ETCD数据库)/分布式键值存储
  4. Controller Manger Server :资源

【2】 worker node三个组件:用户面

  • 集群工作节点,运行用户业务应用容器1
  • worker node组成(三个组件)
    1. kubelet:worker端的管理工具,负责pod的生命周期、存储、网络管理
    2. kube proxy :网络代理,设置转发路径 ,负责service的服务发现(此处为内部服务的发现,外部服务的发现为ingress),负载均衡(4层负载)
    3. Container Runtime(运行时):创建容器的软件

【3】附加组件

  • kube - dns
  • ingress Controller:为服务提供外网入口(外部服务的发现)

1,分层架构

【1】生态管理层

【2】接口层

【3】管理层

【4】应用层

【5】核心层

对外提供API构建高层的应用,对内提供插件式应用执行环境

二、核心概念与专业术语

1.服务的分类

【1】无状态

  • 代表应用:nginx、aoache
  • 优点:对客户头民,无依赖关系,可以高效实现扩容、迁移
  • 缺点:不能存储数据,需要额外的数据服务支持

【2】有状态

  • 代表应用:MySQL、redis
  • 优点:可以独立存储数据,实现数据管理
  • 缺点:集群环境下需要实现主从、数据同步、备份、水平扩容复杂

2.资源的分类

在这里插入图片描述

【1】元数据型:对于资源的元数据描述,每一个资源都可以使用元空间的数据

  • Horizontal Pod Autoscater(HPA):pod自动扩容,可以根据CPU使用率或自定义指标(metrics )对Pod进行扩容或者缩容
  • PodTeplate:pod模板,是关于pod的定义
  • LimitRange:对集群内的资源进行限制,相当于批量设置了某一范围内(命名空间)的pod的资源使用限制

【2】集群级资源:作用于集群之上,集群下的所有资源都可以共享使用

  • namespace
  • node:节点,相当于一个服务器
  • ClusterRole:用于对集群的权限进行管理
  • ClusterRoleBinding:用于将上述的角色跟某一资源进行绑定(只能绑定集群级别的资源对象上绑定)

【3】命名空间级资源:作用在命名空间之上,通常只能在该命名空间范围内使用

  1. 工作负载型 pod:可以当做容器组,pod内可以有多个容器,可以管理pod中的容器,为最小的可部署单元。

一个pod包含一个应用程序容器(也可以是多个),存储资源,一个唯一的网络IP地址,以及一些确定容器该如何运行的选项。pod容器组代表了k8s中一个独立的应用程序运行实例,该实例可能由单个容器,或者几个紧耦合在一起的容器组成。
【1】副本(replicas):一个pod可以被复制成多个。没复制的一个都是副本。
【2】控制器

  • 适用无状态服务:RC、RS、Deployment
  • 适用有状态服务:StatefuiSet
  • 守护进程:DaeminSet 保证在每个node上都运行一个容器副本,常用来部署一些集群的日志、监控或者其他系统管理应用
  • 任务/定时任务:Job(一次性任务,做完不再重启容器)、CroJob(周期性执行的任务,在job的基础上加了定时功能)
  1. 服务发现
  • Service:实现k8s集群内部的网络调用,负载均衡(四层负载),横向流量
  • ingress:将k8s集群内部服务暴露给外网访问的服务(ingress-nginx 反向代理,七层负载),纵向流量
    在这里插入图片描述
    在这里插入图片描述
  1. 存储
  • volume: 存储卷,共享Pod中容器使用的数据,用来放持久化的诗句,比如数据库数据
  • CSI
  1. 特殊类型配置
  • configmap:集群的配置文件,数据说明,数据卷,可以挂载不同的pod上,不加密,也可以做环境变量
  • secret:加密的,sha256加密。用于保存证书,拉取镜像凭证密码
  • DownwardAPI:
  1. 其他
  • Role:定义一组命名空间的权限
  • RoleBinding

3. 资源清单

4. 对象规约和状态

【1】规约Spec

Spec为必须的,描述了对象的期望状态(Desired Status),以及关于对象的一些基本信息。

【2】状态Status

对象的实际状态,该属性有K8S自己维护,k8s会通过一些列的控制器对对象进行管理,让对象的实际状态尽可能的与期望状态符合。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/8827.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大模型的淘金时代,HPE给出了一份智能经济“奇点”攻略

进入2023年,ChatGPT引发了一个新的AI时代——大模型时代。陆奇说:“我已经跟不上大模型时代的狂飙速度了!”大模型引发了AI产业整体升级换代,各种大模型层出不穷,科技公司纷纷入局,AI创业公司再次雨后春笋般…

【LeetCode】79.单词搜索

题目 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或…

LabVIEW开发环境试验箱控制器

LabVIEW开发环境试验箱控制器 环境或气候试验箱是一种外壳,用于模拟各种材料(包括工业产品、生物物质、复合材料、电子设备和航空航天部件)的特定环境条件,并评估调节对这些材料的影响。 环境试验箱(ETC)…

08.计算机网络——其他重要协议和技术

文章目录 DNSICMPNAT代理服务器 DNS DNS是一整套从域名映射到IP的系统 ​ TCP/IP中使用IP地址和端口号来确定网络上的一台主机的一个程序,但是IP地址不方便记忆,于是人们发明域名,其本质是一个字符串,映射了它和IP地址的关系。 …

【iOS】—— RunLoop和多线程相关问题总结

RunLoop 1. 讲讲RunLoop,项目中有用到过吗? RunLoop 的基本作用:保持程序的持续运行,节省 CPU 的资源,提高程序的性能 ( 没有事情,就请休眠,不要功耗。有事情,就处理&a…

【JavaSE】运算符

【本节目标】 1. 熟练掌握各种运算符 这部分内容和C语言的位运算相似,可以参考这篇文章:【C语言】操作符详解 目录 1. 什么是运算符 2. 算术运算符 3. 关系运算符 4. 逻辑运算符 5. 位运算符 6. 移位运算(了解) 7. 条件运算符 1. 什么是运算符 …

day31贪心算法 用最少数量的箭引爆气球 和无重叠区间

题目描述 题目分析: x轴向上射箭,12一支,重叠的需要一支,3-8一支,7-16一支 返回2; 就是让重叠的气球尽量在一起,局部最优;用一支弓箭,全局最优就是最少弓箭&#xff1b…

SQL ORDER BY 关键字

ORDER BY 关键字用于对结果集进行排序。 ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。 ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,您可以使用 DESC 关键字。 ORDER BY 子句后面的列名指示按哪些列进行排序。如…

如何才能做Cox呢?今天带来Cox回归分析步骤详解

Cox回归是生存分析中运用最多的一个模型,又称为比例风险回归模型(proportional hazards model)。是由英国统计学家D.R.Cox在1962年提出的,为了表示对他的尊敬,所以大家以他的名字命名这个模型。这是一种半参数回归模型,以结局和生…

数据结构【绪论】

数据结构入门级 第一章绪论 什么是数据结构?什么是数据类型? 程序数据结构算法 一、基本概念: 数据:指所有能被计算机处理的,无论图、文字、符号等。数据元素:数据的基本单位,通常作为整体考…

快速上手Webpack打包指南:用简单的步骤掌握Webpack的使用技巧

目录 概念:1. webpack 打包简介1.0 多个 JS 文件打包:1.1 webpack 数组形式1.2 webpack 对象形式 总结 Webpack的打包过程可以总结为以下几个步骤: 1.入口点配置:在Webpack的配置文件中,我们需要指定一个或多个入口点…

数据接口有哪些?(数据接口有哪几种)

数据接口是指不同应用程序或系统之间交换数据的通信界面。在现代信息化社会中,数据接口扮演着极为重要的角色,它们使得不同平台之间能够相互连接和交流,从而实现数据共享和应用集成。 数据接口的种类繁多,常见的有以下几种&#…

SpringBoot开发小技巧使用(DEBUG、启动图标修改、Lombok、devtools、Spring Initializr)

目录 1. 通过DEBUG查看自动配置的组件2. springboot启动图标修改3. Lombok4. devtools5. 通过IDEA的Spring Initializr快速创建新项目 1. 通过DEBUG查看自动配置的组件 在resources/application.properties中添加如下,开启DEBUG功能: debugtrue然后启动…

SpringBoot 集成 EasyExcel 3.x 优雅实现 Excel 导入导出

介绍 EasyExcel 是一个基于 Java 的、快速、简洁、解决大文件内存溢出的 Excel 处理工具。它能让你在不用考虑性能、内存的等因素的情况下,快速完成 Excel 的读、写等功能。 EasyExcel文档地址: https://easyexcel.opensource.alibaba.com/ 快速开始 …

前后端分离windows本地nginx解决跨域

下载 http://nginx.org/en/download.html 命令 启动Nginx: nginx.exe start 快速停止或关闭Nginx: nginx.exe -s stop 正常停止或关闭Nginx: nginx.exe -s quit 配置文件修改重装载命令: nginx.exe -s reload 强制停用…

SQL调优教程

SQL调优教程 基础方法论 任何计算机应用系统性能问题最终都可以归结为 1.cpu消耗 2.内存使用 3.对磁盘,网络或其他I/O设备的输入/输出(I/O)操作 遇到性能问题时,要判断的第一点就是“在这三种资源中,是否有哪一种资源达到了有问题的程度”&…

Linux环境下Elasticsearch相关软件安装

Linux环境下Elasticsearch相关软件安装 本文将介绍在linux(Centos7)环境下安装Elasticsearch相关的软件。 1、安装Elasticsearch 1.1 Elasticsearch下载 首先去Elasticsearch官网下载相应版本的安装包,下载之后传输到linux服务器上。 官网地址:http…

Python采集某网站小视频内容, m3u8视频内容下载

目录标题 前言环境使用:模块使用:代码实现步骤代码展示尾语 前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 环境使用: python 3.8 运行代码 pycharm 2021.2 辅助敲代码 模块使用: import requests >>> pip install requests 内置模块 你安装好python环境就…

Windows 微信更新内核(小程序框架)的指南

WMPF-PC 更新指引: 准备工作 1. 安装最新微信客户端( https://dldir1.qq.com/weixin/Windows/WeChatSetup.exe ) 2. 在微信在搜索栏输入:showcmdwnd (包括前面冒号) 中输入以下代码以开启 wmpf 新内核版本(已经是现网默认,可以…

安装redis,适配阿里云服务器,Liunx安装redis

下载redis以及编译安装 下载redis文件 wget http://download.redis.io/releases/redis-6.0.8.tar.gz #下载redis压缩文件 tar xzf redis-6.0.8.tar.gz #解压缩 cd redis-6.0.8 make 查看是否安装了gcc编译输入gcc --version如果没有…