K8s知识点总结_part1

news2024/11/16 13:31:15

Kubernetes 是什么

为用户提供一个具有普遍意义的容器编排工具

着重解决的问题是:大规模集群中的各种运行任务之间的关系处理,这些关系的处理,是作业编排和管理系统最困难的地方。

其能力有:

• 基于容器的应用部署、维护和滚动升级

• 负载均衡和服务发现

• 跨机器和跨地区的集群调度

• 自动伸缩

• 无状态服务和有状态服务

• 插件机制保证扩展性

K8S设计思想

从一开始,Kubernetes 项目就没有像同时期的各种“容器云”项目那样,把 Docker 作为整个架构的核心,而仅仅把它作为最底层的一个容器运行时实现。

它真正的价值,在于提供了一套基于容器构建分布式系统的基础依赖。这也是k8s能长久发展的一个原因。

可以从这四个方面了解一下:

可扩展性:

• 基于微服务部署应用

• 横向扩容缩容

• 自动扩容缩容

高可用:

• 基于replicaset,statefulset 的应用高可用

• Kubernetes 组件本身高可用

可移植性:

• 多种 host Os 选择

• 多种基础架构的选择

• 基于集群联邦建立混合云

安全:

• 基于 TLS 提供服务

• Serviceaccount 和 user

• 基于 namespace 的隔离

• secret

• Taints,psp,networkpolicy

K8S的优势

优势特点,主要是这8个层面:

资源利用:高效率/高密度

低耦合:松散耦合、分布式、弹性、解放的微服务

可移植性和灵活性:K8s有很强的兼容性,它可以在各种基础设施和环境设置下运行

敏捷性:敏捷应用程序的创建和部署,与使用 VM 镜像相比,提高了容器镜像创建的简便性和效率

跨平台:跨云和操作系统,可在 Ubuntu、RHEL、CoreOS、本地、 Google Kubernetes Engine 和其他任何地方运行

开源:CNCF负责管理K8s,这是一个完全开源、由社区驱动的项目

多云兼容性:     

1.容器编排支持多云架构     

2.轻松实现环境迁移/扩展

K8S核心组件

k8s项目的架构,由 Master 和 Node 两种节点组成,这两种角色分别对应着控制节点和计算节点

kube-apiserver

kube-apiserver:kube-apiserver是k8s集群的控制面板,提供了RESTful API来管理集群状态和配置。它是k8s中的核心组件之一,所有其他组件都与kube-apiserver进行通信。kube-apiserver是k8s的面向用户的接口,可以使用kubectl等工具与其进行交互。

kube-scheduler

kube-scheduler:kube-scheduler是k8s的调度器,负责将Pods分配到可用的节点上。kube-scheduler使用节点资源和Pods的需求来进行调度决策。kube-scheduler还支持自定义调度策略,以满足特定的业务需求。

kube-controller-manager

kube-controller-manager:kube-controller-manager是k8s的控制器,负责监视集群状态,并确保集群中的对象处于所需的状态。kube-controller-manager包括多个控制器,如Replication Controller和Endpoint Controller,它们负责管理ReplicaSets和Endpoints等对象。

etcd

etcd:etcd是一个高可用性的键值存储系统,用于存储k8s集群的所有数据。etcd可以存储集群配置、Pods和Services等对象的状态。etcd是一个分布式系统,可以通过多个节点实现高可用性

kubelet

kubelet:kubelet是k8s节点上的代理,负责管理节点上的Pods。kubelet与kube-apiserver通信,获取需要在节点上运行的Pods的信息,并确保Pods处于运行状态。kubelet还负责监视Pods的健康状况,并在必要时重新启动它们。

kube-proxy

kube-proxy:kube-proxy是k8s的网络代理,负责在集群内部进行负载均衡和服务发现。kube-proxy可以将Pods暴露为Kubernetes Services,并使用IPVS或iptables等机制进行负载均衡。

docker/Container Runtime

docker/Container Runtime:Worker Node的运行环境,负责镜像管理以及 Pod 和容器的真正运行

 总结

控制节点,即 Master 节点,由4个紧密协作的独立组件组合而成,它们分别是:

负责 API 服务的 kube-apiserver、负责调度的 kube-scheduler、负责容器编排的 kube-controller-manager。整个集群的持久化数据,则由 kube-apiserver 处理后保存在 Etcd 中

而计算节点上最核心的部分,则是一个叫作 kubelet 的组件。

在 k8s项目中,kubelet 主要负责同容器运行时(比如 Docker 项目)打交道。而这个交互所依赖的,是一个称作 CRI(Container Runtime Interface)的远程调用接口,这个接口定义了容器运行时的各项核心操作比如:启动一个容器需要的所有参数。

这也是为什么,Kubernetes 项目并不关心你部署的是什么容器运行时、使用的什么技术实现,只要你的这个容器运行时能够运行标准的容器镜像,它就可以通过实现 CRI 接入到 Kubernetes 项目当中。

参考:

Kubernetes是什么 _ Kubernetes(K8S)中文文档_Kubernetes中文社区

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

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

相关文章

C#编程-使用反射检索元数据

使用反射检索元数据 术语反射通常用来指镜像。如果您站在镜子面前,镜子会反射出您的所有物理属性,如:您的身高、肤色和身体结构。在C#中也一样,反射被用于反射程序有关的所有信息。C#程序可以利用反射获得类在运行时的信息。 反射在运行时获取类型信息的过程中被使用。提…

Python自动化报告的输出用例详解

1、设计简单的用例 2、设计用例 以TestBaiduLinks.py命名 # coding:utf-8from selenium import webdriverimport unittestclass BaiduLinks(unittest.TestCase):def setUp(self):base_url https://www.baidu.comself.driver webdriver.Chrome()self.driver.implicitly_wait(…

监控系统——Zabbix

目录 Zabbix概述 Zabbix 监控原理 Zabbix 与 Prometheus的区别 Zabbix 6.0 新特性 Zabbix 6.0 功能组件 Zabbix Server 数据库 Web 界面 Zabbix Agent Zabbix Proxy Java Gateway Zabbix 6.0 部署 部署 zabbix 服务端 添加 zabbix 客户端主机 自定义监控内容…

如何使用idm下载百度网盘的资源

IDM是海内外都非常受欢迎的一款下载管理软件。它支持视频媒体嗅探和多线程下载,能够完美替代谷歌Chrome浏览器、Edge浏览器等浏览器的原生下载功能。在浏览器中单击下载链接时,idm将接管浏览器的原生下载工具并加快下载速度,支持HTTP&#xf…

Architecture Lab:part A 【实现sum_list/rsum_list/copy_block/熟悉Y86-64指令】

Architecture Lab 对应CS:APP的Chap 4——处理器体系结构。Part A要实现三个函数,分别为sum_list/rsum_list/copy_block。建议先得到x86-64指令,然后再转换为Y86-64指令。 准备工作 在misc目录下,键入以下命令用来生成汇编代码。命令执行完…

tui.calender日历创建、删除、编辑事件、自定义样式

全是坑🕳!全是坑🕳!全是坑🕳!能不用就不用! 官方文档:https://github.com/nhn/tui.calendar/blob/main/docs/en/apis/calendar.md 实例的一些方法,比如创建、删除、修改、…

【React】脚手架创建项目

文章目录 创建React项目目录结构分析了解PWA脚手架中的webpack 创建React项目 ◼ 创建React项目的命令如下: ​  注意:项目名称不能包含大写字母 ​  另外还有更多创建项目的方式,可以参考GitHub的readme 命令: create-rea…

Redis相关命令详解及其原理

Redis概念 Redis,英文全称是remote dictionary service,也就是远程字典服务。这是kv存储数据库。Redis,包括所有的数据库,都是请求-回应模式,通俗来说就是数据库不会主动地要给前台推送数据,只有前台发送了…

1026 程序运行时间 (15)

要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗费的时间。这个时间单位是 clock tick,即“时钟打点”。同时还有一个常数 CLK_TCK&…

使用zabbix-proxy进行分布式监控

目录 一、准备4台服务器 二、配置主从复制 1.准备环境 2.主机名解析 3.安装数据库 4.配置主库db1 5.配置从库db2 6.主从状态显示 三、db1,db2配置zabbix-agent 三、zabbix-server的配置 四、zabbix-proxy的配置 1.为您的平台安装和配置Zabbix-proxy a. …

勒索病毒:原理与防御

一、勒索病毒概述 勒索病毒,又称为Ransomware,是一种恶意软件,通过感染电脑系统、服务器或者手机等设备,使用户文件被加密,从而向用户索取赎金以解锁文件。近年来,勒索病毒已经成为网络安全领域的一大公害…

linux java 8安装

tar -zxf jdk-8u***.tar.gz -C /usr/loacl/ vim /etc/profile i 输入 export JAVA_HOME/usr/local/安装文件名 export PATH${JAVA_HOME}/bin:$PATH ESC :wq 保存退出 source /etc/profile 验证 java -version

【漏洞复现】上海真兰燃气收费系统信息泄露漏洞

Nx01 产品简介 上海真兰仪表科技股份有限公司,成立于2011年,真诺测量仪表成员,位于上海市,是一家以从事仪器仪表制造业为主的企业。 Nx02 漏洞描述 上海真兰仪表科技股份有限公司燃气收费系统存在信息泄露漏洞,log目录…

上海智慧岛大数据云计算中心项目正式封顶!

上海智慧岛大数据云计算中心封顶仪式现场 1月15日,云端股份在上海智慧岛大数据云计算中心举行封顶仪式。云之端网络(江苏)股份有限公司(以下称“云端股份”)总经理贡伟力先生,常务副总张靖先生等公司成员&…

BGP最通俗易懂的讲解——路由反射器

路由反射器 点赞关注,持续更新 路由反射器RR (Route Reflector) : 允许把从IBGP 对等体学到的路由反射到其他BGP对等体的BGP设备。客户机 (Client) : 与RR形成反射邻居关系的IBGP设备。在AS内部客户机只需要与RR建立邻居关系。非客户机 (Non-Client) …

CentOS 8.5 安装图解

特特特别的说明 CentOS发行版已经不再适合应用于生产环境,客观条件不得不用的话,优选7.9版本,8.5版本次之,最次6.10版本(比如说Oracle 11GR2就建议在6版本上部署)! 引导和开始安装 选择倒计时结…

如何使用Lychee结合内网穿透搭建私人图床网站并发布至公网远程访问

文章目录 1.前言2. Lychee网站搭建2.1. Lychee下载和安装2.2 Lychee网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 1.前言 图床作为图片集中存放的服务网站,可以看做是云存储的一部分,既可…

【计算机网络】HTTP协议以及简单的HTTP服务器实现

文章目录 一、HTTP协议1.认识URL2.urlencode和urldecode3.HTTP协议格式4.HTTP的方法5.HTTP的状态码6.HTTP常见Header7.重定向8.长连接9.会话保持10.基本工具 二、简单的HTTP服务器实现1.err.hpp2.log.hpp3.procotol.hpp4.Sock.hpp5.Util.hpp6.httpServer.hpp7.httpServer.cc8.总…

阿里云ECS使用docke搭建redis服务

目录 1.确保正确安装好docker 2.安装redis镜像 3.创建容器设置端口映射 1.确保正确安装好docker 安装教程: 阿里云ECS(CentOS镜像)安装docker-CSDN博客https://blog.csdn.net/qq_62262918/article/details/135686614?spm1001.2014.3001.5501 2.安装redis镜像…

年龄性别预测1:年龄性别数据集说明(含下载地址)

年龄性别预测1:年龄性别数据集说明(含下载地址) 目录 年龄性别预测1:年龄性别数据集说明(含下载地址) 1.前言 2.MegaAge_Asian 3.MORPH 4.IMDB-WIKI 5.数据集下载 6.年龄性别预测和识别(Python/C/Android) 1.前言 本项目将实现年龄性别预测和识…