首页 > 其他分享 >数据中心的操作系统——kubernets

数据中心的操作系统——kubernets

时间:2023-12-06 23:04:10浏览次数:30  
标签:容器 数据中心 操作系统 Kubernetes 一个 kubernets 存储 Pod Service

操作系统的功能和模块与 Kubernetes 的功能和模块做了一个对比:

数据中心的操作系统——kubernets_kubernets

Kubernetes 作为数据中心的操作系统还是主要管理数据中心里面的四种硬件资源:CPU、内存、存储、网络。

对于 CPU 和内存这两种计算资源的管理,我们可以通过 Docker 技术完成。它可以将 CPU 和内存资源,通过 namespace 和 cgroup,从大的资源池里面隔离出来,并通过镜像技术,实现计算资源在数据中心里面的自由漂移。

Kubernetes 里面有一个调度器 Scheduler,你只需要告诉它,你想运行 10 个 4 核 8G 的 Java 程序,它会自动帮你选择空闲的、有足够资源的服务器,去运行这些程序。

Kubernetes 里面有 Controller 的概念,可以控制 Pod 们的运行状态以及占用的资源。如果 10 个变 9 个了,就选一台机器添加一个;如果 10 个变 11 个了,就随机删除一个。

Kubernetes 的 Scheduler 也是有亲和性功能的,你可以选择两个 Pod 永远运行在一台物理机上,这样本地通信就非常方便了;你也可以选择两个 Pod 永远不要运行在同一台物理机上,这样一个挂了不影响另一个。

统一的存储常常有三种形式:

1、对象存储:这种方式是将文件作为一个完整对象的方式来保存。每一个文件对我们来说,都应该有一个唯一标识这个对象的 key,而文件的内容就是 value。对象可以分门别类地保存在一个叫作存储空间(Bucket)的地方,有点儿像文件夹。

2、分布式文件系统:这种是最容易习惯的,因为使用它和使用本地的文件系统几乎没有什么区别,只不过是通过网络的方式访问远程的文件系统。多个容器能看到统一的文件系统,一个容器写入文件系统,另一个容器能够看到,可以实现共享。

3、分布式块存储:这就相当于云硬盘,也即存储虚拟化的方式,只不过将盘挂载给容器而不是虚拟机。块存储没有分布式文件系统这一层,一旦挂载到某一个容器,可以有本地的文件系统。

这三种形式,对象存储使用 HTTP 进行访问,当然任何容器都能访问到,不需要 Kubernetes 去管理它。而分布式文件系统和分布式块存储,就需要对接到 Kubernetes,让 Kubernetes 可以管理它们。Kubernetes 提供 Container Storage Interface(CSI)接口,这是一个标准接口,不同的存储可以实现这个接口来对接 Kubernetes。

Kubernetes 同样是提供统一的接口 Container Network Interface(CNI,容器网络接口)。无论你用哪种方式实现网络模型,只要对接这个统一的接口,Kubernetes 就可以管理容器的网络。

使用操作系统,运行一个进程是最常见的需求。第一种进程是交互式命令行,运行起来就是执行一个任务,结束了马上返回结果。在 Kubernetes 里面有对应的概念叫作 Job,Job 负责批量处理短暂的一次性任务 (Short Lived One-off Tasks),即仅执行一次的任务,它保证批处理任务的一个或多个 Pod 成功结束。

第二种进程是 nohup(长期运行)的进程。在 Kubernetes 里对应的概念是 Deployment,使用 Deployment 来创建 ReplicaSet。ReplicaSet 在后台创建 Pod。

第三种进程是系统服务。在 Kubernetes 里面对应的概念是 DaemonSet,它保证在每个节点上都运行一个容器副本,常用来部署一些集群的日志、监控或者其他系统管理应用。

第四种进程是周期性进程,也即 Crontab,常常用来设置一些周期性的任务。在 Kubernetes 里面对应的概念是 CronJob(定时任务),就类似于 Linux 系统的 Crontab,在指定的时间周期运行指定的任务。

Kubernetes Volume 的生命周期与 Pod 绑定在一起,容器挂掉后,Kubelet 再次重启容器时,Volume 的数据依然还在,而 Pod 删除时,Volume 才会真的被清理。

Kubernetes Service 是一个 Pod 的逻辑分组,这一组 Pod 能够被 Service 访问。每一个 Service 都一个名字,Kubernetes 会将 Service 的名字作为域名解析成为一个虚拟的 Cluster IP,然后通过负载均衡,转发到后端的 Pod。虽然 Pod 可能漂移,IP 会变,但是 Service 会一直不变。

对应到 Linux 操作系统的 iptables,Kubernetes 在有个概念叫 Network Policy,Network Policy 提供了基于策略的网络控制,用于隔离应用并减少入侵面。它使用标签选择器模拟传统的分段网络,并通过策略控制它们之间的流量以及来自外部的流量。

这个数据中心操作系统的功能如下:

数据中心的操作系统——kubernets_kubernets_02

数据中心的操作系统——kubernets_kubernets_03

标签:容器,数据中心,操作系统,Kubernetes,一个,kubernets,存储,Pod,Service
From: https://blog.51cto.com/key3feng/8711239

相关文章

  • 文件操作系统
    【一】文件操作基本流程#1.打开文件,由应用程序向操作系统发起系统调用open(...),操作系统打开该文件,对应一块硬盘空间,并返回一个文件对象赋值给一个变量ff=open('a.txt','r',encoding='utf-8')#默认打开模式就为r#2.调用文件对象下的读/写方法,会被操作系统转换为读/写硬盘......
  • LAXCUS分布式操作系统的产品规划和发展阶段​
    又是一位网友的提问,把回答贴出来给大家看看,欢迎大家在下方留言交流。问:关注你们很久了,我想问一问,Laxcus分布式操作系统有没有具体的产品规划,如果有是什么,打算怎么做?你们的主要着眼点在哪里?目前Laxcus分布式操作系统发展到什么阶段了?答:感谢关注!Laxcus做为全球第一款纯粹的分布式操......
  • 对Laxcus分布式操作系统的认知、价值、痛点解决的回答​
    下面是一位网友的提问,回答贴出来供大家参考,欢迎在下方留言评论。问:Laxcus分布式操作系统有哪些与众不同的地方?它的价值在哪里?解决了哪些市场痛点?我公司现在已经使用Linux操作系统部署了一堆服务器,你如何说服我弃用Linux使用Laxcus?回答:Laxcus分布式操作系统是操作系统的一个异类,它是......
  • 他山之石,可以攻玉|银行业数据中心数字化转型之模型篇 04(完结)
    ​导语: 银行业数据中心数字化转型是一项系统性工程既涉及管理层面转型——包括数字化转型战略、基础架构和技术架构转型、技术创新和知识体系转型,又涉及执行层面转型——包括人员管理(P)、流程管理(P)、技术管理(T)、资源管理(R)等。数据中心数字化转型作为一项宏大的系统性工程,必须要......
  • linux操作系统学习8
    大家好!我是学习Linux操作系统的学生,这一周我学习了文件查找、打包压缩及解压和rpm包管理,收获颇丰。现在我将与大家分享我的学习心得。一、文件查找在Linux中,文件查找是一项非常基础且重要的技能。查找文件时可以使用find命令,它可以按照文件名、文件类型、文件大小等多种条件......
  • 手把手教学Zabbix7.0+麒麟操作系统,兼容认证
    感谢本文作者李根,Zabbix高级认证工程师(ZCP)。Zabbix6.0在麒麟操作系统上进行部署测试成功,所以此刻想验证Zabbix7.0的兼容性。结果证明是兼容的!主要步骤见下文。Zabbix7.0LTS(长期支持版本)计划于2024年第一季度发布,但其内测版本已于近日在官方更新。信创托底Zabbix提供了百......
  • 软考架构师(2)——操作系统基础知识(上)
    一:操作系统引论1:操作系统的目标和作用操作系统的主要功能也正是针对四类资源进行有效的管理,及处理机管理,存储器管理,文件管理。设备管理。用户可通过以下三种方式使用计算机:一命令方式,二系统调用方式,三图形窗口方式联机命令接口(交互式命令接口):适用于分时或实时操作系统,cmd中的......
  • 图形渲染操作系统分析
    图形渲染操作系统分析迄今为止,博主在博客中阐述的内容包含渲染技术、性能优化、图形API、Shader、GPU、游戏引擎架构、图形驱动等等技术范畴的内容,这些内容都仅仅局限于单个应用程序之中,常常让人有”只缘身在此山中“的感叹。现在是时候更进一步了——进入操作系统(OperatingSyst......
  • 龙蜥操作系统 升级 openssh
    龙蜥8.8openssh升级步骤1.查看目前openssh版本rpm -qa|grep openssh2.安装rpm包制作需要的工具dnf install rpm-build zlib-devel openssl-devel gcc perl-devel pam-devel libXt-devel gtk2-devel make perl -ydnf install imake  -y3.官网下载openssh源码包ht......
  • 操作系统OS学习总结
    操作系统OS笔记操作系统概述操作系统定义操作系统,是计算机系统中最基本、最重要的系统软件,是其它软件的支撑。控制和管理计算机系统的硬件和软件资源,合理的组织计算机工作流程,并为用户使用计算机提供公共和基本的服务。操作系统组成计算机采用的都是冯·诺依曼体系结构,一台计......