【Kubernetes资源篇】Namespace名称空间详解

这篇具有很好参考价值的文章主要介绍了【Kubernetes资源篇】Namespace名称空间详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、名称空间概念

K8s中文手册:

K8s名称空间中文官方手册:

Kubernetes 支持多个虚拟集群,它们底层依赖于同一个物理集群。 这些虚拟集群被称为命名空间。
命名空间namespace是k8s集群级别的资源,可以给不同的用户、租户、环境或项目创建对应的命名空间。

在Kubernetes中,名称空间可以用来:

  • 将不同的应用程序隔离开来,避免命名冲突和资源竞争。 -
  • 为不同的团队或项目提供独立的环境,使它们可以独立地管理和部署应用程序。
  • 控制资源配额和访问权限,以确保应用程序之间的安全隔离。

可以抽象的吧Namespace理解为,QQ分组,分组中存着不同的好友,好友就是容器。

k8s创建namespace,# 3-Kubernetes容器编排,kubernetes,容器,云原生

二、名称空间基本操作

1、创建Namespace的两种方式

创建名称空间提供两种方式,通过命令行和YAML文件进行创建,如下:

第一种:通过命令行进项创建Namespace

kubectl create ns mytest

第二种:通过YAML资源清单进行创建Namespace

cat namespace.yaml 

---
apiVersion: v1
kind: Namespace
metadata:
  name: mytest

通过apply进行创建

kubectl apply -f namespace.yaml

查看名称空间

kubectl get ns
kubectl get ns mytest

2、Namespace资源限额

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

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

cat resourcequota.yaml 
apiVersion: v1
kind: Namespace
metadata:
  name: mytest
---
apiVersion: v1
kind: ResourceQuota
metadata:
  name: mytest-quota
  namespace: mytest
spec:
  hard:
    requests.cpu: 2
    requests.memory: 2Gi
    limits.cpu: 4
    limits.memory: 4Gi

配置含义解释:

资源名称 描述
limits.cpu 所有非终止状态的 Pod,其 CPU 限额总量不能超过该值。
limits.memory 所有非终止状态的 Pod,其内存限额总量不能超过该值。
requests.cpu 所有非终止状态的 Pod,其 CPU 需求总量不能超过该值。
requests.memory 所有非终止状态的 Pod,其内存需求总量不能超过该值。
hugepages-<size> 对于所有非终止状态的 Pod,针对指定尺寸的巨页请求总数不能超过此值。
cpu requests.cpu 相同。
memory requests.memory 相同。

执行apply文件

kubectl apply -f resourcequota.yaml

查看Resource Quota 信息:

kubectl get resourcequota -n mytest

k8s创建namespace,# 3-Kubernetes容器编排,kubernetes,容器,云原生

测试:创建一个Pod并限制资源使用如下:

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

cat pod.yaml 
---
apiVersion: v1
kind: Pod
metadata:
  labels:
    app: nginx
  name: web-nginx
  namespace: mytest
spec:
  containers:
  - name: web-nginx
    image: nginx
    imagePullPolicy: IfNotPresent
    ports:
    - containerPort: 80 
    resources:
      limits:
        memory: "2Gi"
        cpu: "2"
      requests:
        memory: "1000Mi"
        cpu: "500m"

查看resourcequota资源限制信息:

kubectl get resourcequota -n mytest

k8s创建namespace,# 3-Kubernetes容器编排,kubernetes,容器,云原生

如果超过Namespace配额限制会报错,如下图:

k8s创建namespace,# 3-Kubernetes容器编排,kubernetes,容器,云原生文章来源地址https://www.toymoban.com/news/detail-522486.html

到了这里,关于【Kubernetes资源篇】Namespace名称空间详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Kubernetes(k8s)核心资源解析:Pod详解

    💖The Begin💖点点关注,收藏不迷路💖 Pod是Kubernetes中最小的调度单元,它可以包含一个或多个容器。Pod中的所有容器共享网络和存储卷,它们一起运行在同一个节点上。Pod提供了一种抽象层,使得容器可以作为一个逻辑单元来管理。 Pod中的容器共享IP地址、端口空间和存储

    2024年04月11日
    浏览(70)
  • k8s资源对象(1) namespace&&pod

    Namespace是kubernetes系统中的一种非常重要资源,它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离。 默认情况下,kubernetes集群中的所有的Pod都是可以相互访问的。但是在实际中,可能不想让两个Pod之间进行互相的访问,那此时就可以将两个Pod划分到不同的

    2024年01月18日
    浏览(50)
  • k8s-基础知识(Service,NodePort,CusterIP,NameSpace,资源限制)

    Node Node 是 Pod 真正运行的主机,可以是物理机,也可以是虚拟机。 Annotations 原文链接 Annotations 是 key/value 形式附加于对象的注解。不同于 Labels 用于标志和选择对象,Annotations 则是用来记录一些附加信息,用来辅助应用部署、安全策略以及调度策略等。比如 deployment 使用 an

    2024年01月24日
    浏览(54)
  • k8s的Namespace详解

    简介 在一个K8s集群中可以拥有多个命名空间,它们在逻辑上彼此隔离 namespaces是对一组资源和对象的抽象集合,比如可以将系统内部的对象划分为不同的项目组或用户组 K8s在集群启动之后,会默认创建几个namespace 默认namespace default:所有未指定Namespace的对象都会被分配在de

    2024年02月14日
    浏览(36)
  • yum部署kubernetes(k8s)集群、k8s常用资源管理

    目录 一、环境搭建 1、准备环境 1)计算机说明,建议系统版本7.4或者7.6 2)修改所有主机的计算机名设置host文件  2、安装master节点 1)安装etcd配置etcd 2)安装k8s-master节点 3)配置apiserver 4)配置controller和scheduler 5)启动k8s服务 3、安装k8s-master上的node 1)安装node 2)配置kube

    2024年02月13日
    浏览(60)
  • K8S(五)—命名空间与资源配额

    Kubernetes(K8s)的命名空间(Namespace)是用于在集群中对资源进行逻辑隔离和分类的一种机制。它可以将集群内的资源划分为不同的组,并且每个命名空间内的资源都有一个唯一的名称。命名空间可以帮助团队将不同的项目、环境或应用程序从彼此中隔离开来,以及更好地管理

    2024年02月04日
    浏览(40)
  • k8s---HPA 命名空间资源限制

     HPA(Horizontal Pod Autoscaling)Pod 水平自动伸缩,Kubernetes 有一个 HPA 的资源,HPA 可以根据 CPU 利用率自动伸缩一个 Replication Controller、 Deployment 或者Replica Set 中的 Pod 数量。 (1)HPA 基于 Master 上的 kube-controller-manager 服务启动参数 horizontal-pod-autoscaler-sync-period 定义的时长(默认为

    2024年01月24日
    浏览(46)
  • kubernetes/k8s配置资源管理

    配置资源管理 Secret Configmap*.1.2加入新特征 1.18 Secret:保存密码,token,敏感的k8s资源 这类数据可以存放在镜像当中,但是防止secret可以更方便的控制,减少暴漏风险。 保存加密的信息 Secret的类型: docker-registry:存储docker仓库认证信息,以及docker组件的认证信息(私有的) generic:是

    2024年01月17日
    浏览(50)
  • (kubernetes)k8s常用资源管理

    目录 k8s常用资源管理 1、创建一个pod 1)创建yuml文件 2)创建容器 3)查看所有pod创建运行状态 4)查看指定pod资源 5)查看pod运行的详细信息 6)验证运行的pod 2、pod管理 1)删除pod 2)查看删除pod无法找到 3)创建pod 4)发现最先创建的pod运行在k8s-master节点上,下载镜像速度太

    2024年02月13日
    浏览(46)
  • K8S集群管理:用名字空间分隔系统资源

    Kubernetes 的名字空间并不是一个实体对象,只是一个逻辑上的概念。它可以把集群切分成一个个彼此独立的区域,然后我们把对象放到这些区域里,就实现了类似容器技术里 namespace 的隔离效果,应用只能在自己的名字空间里分配资源和运行,不会干扰到其他名字空间里的应用

    2024年02月16日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包