kubernetes名称空间和资源配额

名称空间

  • 一.名称空间概念
    • 二.Namespace使用场景
    • 三.名称空间基本操作
      • 1.创建Namespace两种方式
      • 2.Namespace资源限额

一.名称空间概念

Kubernetes 支持多个虚拟集群,它们底层依赖于同一个物理集群。 这些虚拟集群被称为命名空间

命名空间namespace是k8s集群级别的资源,可以给不同的用户、租户、环境或项目创建对应的命名空间,例如,可以为test、devlopment、production环境分别创建各自的命名空间。

二.Namespace使用场景

命名空间适用于存在很多跨多个团队或项目的用户的场景。对于只有几到几十个用户的集群,根本不需要创建或考虑命名空间。

三.名称空间基本操作

1.创建Namespace两种方式

第一种:通过命令行的方式创建

kubectl create ns test

第二种:通过YAML资源清单创建名称空间

vim namespace.yamlapiVersion: v1
kind: Namespace
metadata:name: test

通过apply创建

kubectl apply -f namespace.yaml

查看名称空间

kubectl get ns
kubectl get ns test

在这里插入图片描述

2.Namespace资源限额

可以通过Resource Quota来限制Namespace中资源的使用,资源配额是一种控制机制,可以限制Namespace中资源使用量,包括CPU、内存、存储等。

资源限制可以针对Namespace中所有Pod进行限制,当然也可以针对单个Pod进行限制

vim resourcequota.yamlapiVersion: v1
kind: Namespace
metadata:name: test
---
apiVersion: v1
kind: ResourceQuota
metadata:name: test-quotanamespace: test
spec:hard:requests.cpu: 1requests.memory: 1Gilimits.cpu: 2limits.memory: 2Gi

执行apply文件

kubectl apply -f resourcequota.yaml

查看Resourcequota信息

kubectl get resourcequota -n test

在这里插入图片描述
配额机制所支持的资源类型:

资源名称描述
limits.cpu所有非终止状态的 Pod,其 CPU 限额总量不能超过该值。
limits.memory所有非终止状态的 Pod,其内存限额总量不能超过该值。
requests.cpu所有非终止状态的 Pod,其 CPU 需求总量不能超过该值。
requests.memory所有非终止状态的 Pod,其内存需求总量不能超过该值。
hugepages-<size>对于所有非终止状态的 Pod,针对指定尺寸的巨页请求总数不能超过此值。
cpurequests.cpu 相同。
memoryrequests.memory 相同。
  • Requests(请求) 是容器在启动时向 Kubernetes 集群申请的资源(一开始)。它表明容器希望得到的最小资源量。如果容器实际使用的资源低于请求的量,Kubernetes 会为容器分配足够的资源。但是,如果容器实际使用的资源高于请求的量,Kubernetes 可能对容器进行 throttling,限制其使用的资源。
  • Limits(限制) 是容器被允许使用的资源的上限(运行中)。它表明容器在运行时可以使用的资源的最大量。如果容器实际使用的资源超过了限制,Kubernetes 集群中的 QoS 机制可能会介入,可能导致容器被终止或限制其资源使用。

所以:请求是在容器启动时申请的资源量,而限制是在容器运行时允许使用的最大资源量

测试:创建一个Pod并限制资源使用如下:
注意:如果Namespace进行了资源配额了,那么在创建Pod时必须使用resources进行限制

vim pod.yaml ---
apiVersion: v1
kind: Pod
metadata:labels:app: nginxname: web-nginxnamespace: test
spec:containers:- name: web-nginximage: nginximagePullPolicy: IfNotPresentports:- containerPort: 80 resources:limits:memory: "1Gi"cpu: "1"requests:memory: "1000Mi"cpu: "500m"

查看resourcequota资源限制情况:

kubectl get resourcequota -n test

在这里插入图片描述
修改Pod,超过Namespace的资源配额,查看结果

vim pod1.yaml ---
apiVersion: v1
kind: Pod
metadata:labels:app: nginxname: web-nginx1namespace: test
spec:containers:- name: web-nginximage: nginximagePullPolicy: IfNotPresentports:- containerPort: 80 resources:limits:memory: "2Gi"cpu: "2"requests:memory: "2Gi"cpu: "2"

超过资源配额,不允许创建Pod
在这里插入图片描述

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

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

相关文章

Thread类中start方法和run方法的源码简单解读,联系和区别

我们可以打开idea,按住ctrl将光标移至所查方法上,单击右键,即可查看这两个方法的源码: 1. start方法源码 我们从上至下分析一下: 这个threadStatus是一个int型的变量来表示线程是否开始,0为没有开始,非0为开始,因此当threadStatus不为0时,会抛出非法开始线程的异常. group对象…

可怜的百度人

可怜的百度股民 注意&#xff0c;这里说的是持有百度股票的股民&#xff0c;不是百度&#xff0c;百度没啥好可怜的。 前天&#xff08;3月25日&#xff09;中午&#xff0c;财联社爆料百度和 Apple 达成合作&#xff0c;百度将为苹果今年发布的 iPhone16、Mac 系统和 iOS18 提…

气体放电的基本物理过程

本篇为本科课程《高电压工程基础》的笔记。 和固体液体介质相比&#xff0c;气体绝缘有不老化的有点&#xff0c;而且击穿后具有完全的绝缘自恢复特性&#xff0c;是绝缘部分的重点。 带电质点的产生与消失 中性气体不到点&#xff0c;但是由于宇宙射线和地壳中的放射性物质…

如何做好位移计保养和维修工作

当涉及到保养和维修位移计时&#xff0c;我们需要考虑一系列的因素&#xff0c;包括正确的使用方法、定期的保养程序以及必要的维修步骤。位移计是一种用于测量物体相对位置变化的仪器&#xff0c;因此其准确性和可靠性对于许多工程和科学应用至关重要。以下是一些关于如何保养…

React 18中hook函数详解之useRef

在上一篇文章《React 18中hook函数详解之useState和useEffect》介绍了react v16.8版本以后&#xff0c;引入的Hooks函数的一些概念&#xff0c;以及useState和useEffect的一些用法。本文将接着上一篇文章着重介绍Hook函数当中常用的另一个函数&#xff1a;useRef。 useRef 是一…

【前端面试3+1】01闭包、跨域、路由模式

一、对闭包的理解 定义&#xff1a; 闭包是指在一个函数内部定义的函数&#xff0c;并且该内部函数可以访问外部函数的变量。闭包使得函数内部的变量在函数执行完后仍然可以被访问和操作。 特点&#xff1a; 闭包可以访问外部函数的变量&#xff0c;即使外部函数已经执行完毕。…

2023最新版Android studio安装入门教程(非常详细)从零基础入门到精通,看完这一篇就够了

目录 JDK安装与配置 一、下载JDK 二、JDK安装 三、JDK的环境配置 四、JDK的配置验证 Android studio安装 Android studio连接手机真机调试&#xff08;以华为鸿蒙为例&#xff09; 一、新建一个android项目 二、进入项目面板 三、配置Android Studio 四、安装手机驱…

抽象类和接口(1)(抽象类部分)

抽象类概念 在面向对象的概念中&#xff0c;所有的对象都是通过类来描绘的&#xff0c;但是反过来&#xff0c;并不是所有的类都是用来描绘对象的&#xff0c;如果一个类中没有包含足够的信息来描绘一个具体的对象&#xff0c;这样的类就是抽象类. 此外还有抽象方法这个概念 …

拿到今日现货白银价格 如何开始分析?

很多投资者看到近期现货白银的强劲涨势&#xff0c;并且开户入场。但入场之后&#xff0c;他们发现对如何找到机会还不甚了解。比方说我们拿到今日现货白银价格要如何开始分析呢&#xff0c;很多新入场的投资者根本没有头绪&#xff0c;下面我们就来讨论一下相关的方法。 我们可…

函数 GetMemoryType 的理解

从开始接触Vulkan&#xff0c;有个函数一直不解&#xff0c;今日做一个记录&#xff1a; /*** Get the index of a memory type that has all the requested property bits set** param typeBits Bit mask with bits set for each memory type supported by the resource to r…

2024年3月27号PMP每日三题含答案

2024年3月27号PMP每日三题含答案 1.首席信息官告知项目经理项目使用一个公共文件共享网站的行为违反了公司的安全要求。 项目经理应在下列哪一份文件中找到这项需求&#xff1f; A.项目安全计划 B.事业环境因素 C.组织过程资产 D.项目管理信息系统 1.解析&#xff1a;C 是参考…

Java入门之数据类型

一、数据类型 基本数据类型 &#xff08;1&#xff09;如果要定义“long类型的变量要在数值后面加一个L作为后缀” &#xff08;2&#xff09;如果要定义float类型的变量的时候数据值也要加一个作为后缀 小结&#xff1a; 练习 内容&#xff1a; 姓名&#xff1a;巴巴托斯 &…

【比特币】比特币的奥秘、禁令的深层逻辑与风云变幻

导语&#xff1a; 比特币(Bitcoin)&#xff0c;这个充满神秘色彩的数字货币&#xff0c;自诞生以来便成为各界瞩目的焦点。它背后所蕴含的Mining机制、禁令背后的深层逻辑以及市场的风云变幻&#xff0c;都让人欲罢不能。今天&#xff0c;我们将深入挖掘比特币的每一个角落&…

使用 nohup java - jar 不输出nohup日志

使用 nohup 命令来运行 Java 程序&#xff0c;并且不让输出写入 nohup.out 文件&#xff0c;可以使用重定向操作符 > 将标准输出重定向到 /dev/null 文件中。这样可以将输出丢弃&#xff0c;而不会写入日志文件。下面是具体的命令&#xff1a; nohup java -jar your_progra…

docker将本地镜像pull到阿里云和registry

目录 一、上次到阿里云服务器 1、制作一个带有vim功能的Ubuntu镜像 2、在阿里云上面创建镜像仓库 3、从阿里云仓库中上传和拉取镜像 二、上传镜像到本地私有库registry 1、下载镜像docker registry 2、运行私有库registry&#xff0c;相当于本地有个私有docker hub。 3…

Rust使用feature特性和条件编译,以及常用feature使用说明

Cargo Feature 是非常强大的机制&#xff0c;可以为大家提供条件编译和可选依赖的高级特性&#xff0c;可以为你省下不少的代码量来判断操作系统和条件编译等功能。rust官方条件编译文档&#xff1a;Conditional compilation - The Rust Reference features特性 Featuure 可以…

零基础学习挖掘PHP网站漏洞

教程介绍 本套课程&#xff0c;分为三个阶段&#xff1a;第一阶段&#xff1a;基础篇 学习PHP开发的基础知识&#xff0c;对PHP常见的漏洞进行分析&#xff0c;第二阶段&#xff1a;进阶篇 实战PHP漏洞靶场&#xff0c;了解市面上的PHP主流网站开发技术&#xff0c;并对市面上…

RocketMQ 流数据库解析:如何实现一体化流处理?

作者&#xff1a;林清山&#xff08;隆基&#xff09; 前言&#xff1a; 从初代开源消息队列崛起&#xff0c;到 PC 互联网、移动互联网爆发式发展&#xff0c;再到如今 IoT、云计算、云原生引领了新的技术趋势&#xff0c;消息中间件的发展已经走过了 30 多个年头。 目前&a…

AI+云平台|全闪云底座迎战

AI融万物之势席卷而来 人工智能&#xff08;Artificial Intelligence&#xff09;&#xff0c;英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 行业特点 AI场景中80%以上是小文件&#xff0c;以非结构化数据为…

python-自动化测试- 多接口动态参数设计

什么叫做多接口的动态参数处理&#xff1f; 测试数据都放在excel中管理&#xff0c;每个接口如果有提取的数据就直接放在excel里写好&#xff0c;到时候直接读取出来做响应的提取操作即可。 电商项目&#xff1a; 购物车 token proId skuID等 需要执行多个接口 获取返回值&…