一 命名空间的介绍以及作用

  1  概念

    为了方便不同部门之间对kubernets集群的使用,并且对其进行有效的隔离,kubernets提供了一种资源隔离手段,通过将各种不同资源分组到

一个区域,并且统一管理,这个区域的名称叫做命名空间

  2 使用

    查询kubernets集群内部的所有命名空间

[root@node01 ~]# k get nsNAME                 STATUS                   AGEdefault              Active                   26hkube-node-lease      Active                   26hkube-public          Active                   26hkube-system          Active                   26h

  3 查询kube-system空间的pod资源

[root@node01 ~]# k get po -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-fb8b8dccf-gfkss 1/1 Running 1 26h
coredns-fb8b8dccf-tjr6m 1/1 Running 1 26h
etcd-master 1/1 Running 1 26h
kube-apiserver-master 1/1 Running 0 26h
kube-controller-manager-master 1/1 Running 1 26h
kube-flannel-ds-b95br 1/1 Running 0 26h
kube-flannel-ds-mwlgl 1/1 Running 0 26h
kube-flannel-ds-w4mvw 1/1 Running 0 26h
kube-proxy-2h9ck 1/1 Running 0 26h
kube-proxy-qprh7 1/1 Running 0 26h
kube-proxy-z6nwk 1/1 Running 0 26h
kube-scheduler-master 1/1 Running 1 26h

  4 创建一个命名空间

[root@node01 pod]# k create -f custom-namespace.yml
namespace/custom-namespace created
[root@node01 pod]# cat custom-namespace.yml
apiVersion: v1
kind: Namespace
metadata:
name: custom-namespace

  5 如何在刚创建的命名空间创建资源

    5.1 通过在资源的ym文件的metadata的属性里面的namesapce里面指定

apiVersion: v1
kind: Pod
metadata:
name: kubia-manual-namespace
namespace: custom-namespace
spec:
containers:
- image: luksa/kubia
name: kubia
ports:
- containerPort: 8080
protocol: TCP

    在集群查询该pod的信息,在default没查到,在custom-namespace里面查询到该pod信息

[root@node01 pod]# k get po
NAME READY STATUS RESTARTS AGE
kubia-manual 1/1 Running 0 21h
kubia-manual-gpu 1/1 Running 0 172m
kubia-manual-with-labels 1/1 Running 0 4h14m
[root@node01 pod]# k get po -n custom-namespace
NAME READY STATUS RESTARTS AGE
kubia-manual-namespace 0/1 ContainerCreating 0 17s

  5.2 也可通过创建时指定参数 -n和命名空间来指定

kubectl create -f kubia-manual.yam1 -n custom-namespaces
pod ”kubia-manual" created

 

   5.3 如何修改目前的命名空间 

export namespace=XXXX
kubectl config set-context $(kubectl config current-context) --namespace=${namespace}
unset namespace

  6 命名空间提供的隔离

    命名空间很大程度上提供了不同命名空间之间的资源隔离,但是却不是绝对的隔离,例如,不同的命名空间之间的pod是否可以互相通信

  取决于集群内部使用的网络插件,当使用的网络插件允许的情况下,不同命名空间之间的pod仍然可以互相通信

kubernets之namespace的更多相关文章

  1. 003.kubernets对于namespace的管理

    一 Kuberbetes的架构简单介绍 1.1 云计算的传统分类 1.2 kubernetes基础架构 工作机制 用户通过kubectl向api-server提交需要运行的pod描述 api-serv ...

  2. Kubernets搭建Kubernetes-dashboard

    接上篇文章,在已经部署好Kubernetes的基础上部署kubernetes-dashboard,它是官方提供的用户管理Kubernets集群可视化工具:部署dashboard其实和在kubernet ...

  3. Kubernets 资源类型简介

    # Node 代表 Kubernets 集群运行的宿主物理机或者虚拟服务器, 为容器提供必要的计算资源: 内存 与 CPU 等. # Pod 最底层的抽象. 一个 Pod 中可以包含一个或者多个运行的 ...

  4. [原]CentOS7安装Rancher2.1并部署kubernetes (三)---解决登录kubernets超时和部署测试Pod和Containter[nginx为例]

    ##################    Rancher v2.1.7  +    Kubernetes 1.13.4  ################ ##################### ...

  5. K8S中如何跨namespace 访问服务?为什么ping不通ClusterIP?

    1.K8S中如何跨namespace 访问服务? 2.在Pod中为什么ping不通ClusterIP? 简述: Rancher2.0中的一个用户,在K8S环境中,创建两个namespace,对应用进行 ...

  6. kubernets实战采坑1

    1.NLog.config失效,日志ElasticSearch的Index不匹配 <?xml version="1.0" encoding="utf-8" ...

  7. Kubernetes基本概念之Name和NameSpace

    在Kubernetes中,所有对象都会被指定一个唯一的Name和UID. 用户还可以指定一些不要求唯一性的数据附加到对象上,例如Label和Annotation. 1. Name Name是创建一个K ...

  8. Kubernets中获取客户端真实IP总结

    1. 导言 绝大多数业务场景都是需要知道客户端IP的 在k8s中运行的业务项目,如何获取到客户端真实IP? 本文总结了通行的2种方式 要答案的直接看方式一.方式二和总结 SEO 关键字 nginx i ...

  9. Kubernetes-17:Kubernets包管理工具—>Helm介绍与使用

    Kubernets包管理工具->Helm 什么是Helm? 我们都知道,Linux系统各发行版都有自己的包管理工具,比如Centos的YUM,再如Ubuntu的APT. Kubernetes也有 ...

随机推荐

  1. 小米k30 pro刷国际版rom

    时间:2020.8.20 最新的是miui12但是普遍反映耗电量巨大,所以还是刷miui11了. 知乎上有个教程:https://zhuanlan.zhihu.com/p/86160027 但是是针对 ...

  2. 二、初步认识LoadRunner工具

    LoadRunner工具有三个组成分别是: Virtual User Generator:用户行为模拟:录制运行脚本. Controller:上面的录制一个用户操作,这个可以将其克隆成多个用户,模拟多 ...

  3. 【译】理解Rust中的Futures (一)

    原文标题:Understanding Futures In Rust -- Part 1 原文链接:https://www.viget.com/articles/understanding-futur ...

  4. Python高级语法-贯彻回顾-元类(4.99.1)

    @ 目录 1.为什么要掌握元类 2.正文 关于作者 1.为什么要掌握元类 在django中编写models的时候遇到了元类的相关操作 并且在mini-web框架编写的时候也遇到了相关的问题 意识到深入 ...

  5. Geoserver 谷歌瓦片地图的使用 多级发布

    下面,我来介绍一下如何在离线的情况下,在Geoserver 中配置出如同谷歌地图般绚丽的效果. 为了让大家有动力看我我接下来写的东西,我先把结果图给大伙儿展现一下: 正如上图所示,该地图是谷歌第四级的 ...

  6. NET 5 使用RabbitMQ以及Kafka区别

    区别 1.应用场景方面RabbitMQ:用于实时的,对可靠性要求较高的消息传递上.kafka:用于处于活跃的流式数据,大数据量的数据处理上.2.架构模型方面producer,broker,consum ...

  7. 给因特尔S2600CO服务器主板安装【SAS控制器】驱动

    给因特尔S2600CO服务器主板安装[SAS控制器]驱动 1:首先打开[设备管理器]找到未识别驱动的[SAS控制器]双击进入 2:在[详细信息]选项卡,选择[兼容Id]属性可以看到PCI\VEN_80 ...

  8. Windows Server 2016介绍与安装

    版本介绍 Windows Server 2016 Essentials edition Windows Server 2016 Essentials版是专为小型企业而设计的.它对应于Windows S ...

  9. [EF] - 全连接

    在EntityFramework里有个DeflautIfEmpty方法可以用来表示数据库里的左联接或者右连接: http://msdn.microsoft.com/en-us/library/bb39 ...

  10. Hyperledger fabric-SDK-GO客户端开发篇(六)

    Hyperledger fabric-SDK-GO客户端开发篇(六) Fabric-SDK-GO是提供的Go语言开发包,应用程序可以利用Fabric-SDK-GO与fabric网络进行交互并访问链码. ...