伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

K8S 命名空间 (namespace)

来源:本站原创 浏览:67次 时间:2023-04-06
命名空间 (namespace)

Namespace是对一组资源和对象的抽象集合.
常见的 pod, service, deployment 等都是属于某一个namespace的
(默认是 default)
不是所有资源都属于namespace,如nodes, persistent volume, namespace 等资源则不属于任何 namespace

一、查看namespace

kubectl get namespaces       # namespaces可以简写为namespace或ns

[root@master ~]# kubectl get namespacesNAME              STATUS   AGEdefault           Active   2d6h   # 所有未指定 Namespace的对象都会被默认分配在default命名空间kube-node-lease   Active   2d6h  kube-public       Active   2d6h   # 此命名空间下的资源 可以被所有人访问kube-system       Active   2d6h  # 所有由Kubernetes 系统创建的资源都处于这个命名空间
二、查看namespace里的资源

使用kubectl get all --namespace=命名空间名称可以查看此命名空间 下的所有资源
kubectl get all --namespace=kube-system

使用kubectl get 资源类型 --namespace=命名空间名称可以查看此命名 空间下的对应的资源
kubectl get pod --namespace=kube-system

三、创建namespace1.命令创建

kubectl create namespace ns1
kubectl get ns

2.YAML文件创建

k8s中几乎所有的资源都可以通这YAML编排来创建
可以使用kubectl edit 资源类型 资源名编辑资源的YAML语法
kubectl edit namespace ns1

# Please edit the object below. Lines beginning with a '#' will be ignored,# and an empty file will abort the edit. If an error occurs while saving this file will be# reopened with the relevant failures.#apiVersion: v1kind: Namespacemetadata:  creationTimestamp: "2021-02-08T14:55:00Z"  name: ns1  #此处修改  resourceVersion: "17578"  selfLink: /api/v1/namespaces/ns1  uid: 9dfae471-6a1d-11eb-9a72-000c2936bb86spec:  finalizers:  - kubernetesstatus:  phase: Active

也可使用kubectl get 资源类型 资源名 -o yaml来查看

kubectl get ns ns1 -o yaml

还可通过kubectl explain 资源类型来查看语法文档

3.查看namespace相关语法参数

kubectl explain namespace

4.查看namespace下级metadata的相关语法参数

kubectl explain namespace.metadata

5.查看namespace下级metadata再下级name的相关语法参数

kubectl explain namespace.metadata.name

6.编写创建namespace的YAML文件

vim create_ns2.yml

apiVersion: v1                          # api版本号kind: Namespace                         # 类型为namespace metadata:                               # 定义namespace的元 数据属性  name: ns2                             # 定义name属性为ns2
7.使用kubctl apply -f应用YAML文件

kubectl apply -f create_ns2.yml
kubectl get ns

四、删除namespace

注意:
删除一个namespace会自动删除所有属于该namespace的资源(类似 mysql中drop库会删除库里的所有表一样,请慎重操作)
default,kube-system,kube-public命名空间不可删除

1.命令删除

kubectl delete namespace ns1
kubectl get ns

2.YAML文件删除

kubectl delete -f create_ns2.yml
kubectl get ns

  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net