傲视Kubernetes(五):注解和命名空间

本文主要围绕两部分展开:java

1. 注解的介绍及使用;网络

2. 命名空间的介绍及使用。spa

1、注解code

K8S中的对象除了能够用标签来标识/归类外,还能够用加注解(annotations)属性,它属于metadata的子标签,也是键值对的格式。此处的注解和java中的注解彻底不同,非要类比的话,Java中的注解更像是Kubernetes中的标签-标识特定的用途,而Kubernetes中的注解更像是注释,相对于标签来讲,能够添加更多更详细的内容,但总共不能超过256KB。对象

标签有对应的标签选择器,因此能够用于标识/归类,但注解则没有对应的注解选择器。blog

注解使用:作用域

添加/修改注解(跟操做标签的格式相似):get

kubectl annotate pod podname  annotationkey=annotationvalue

添加完以后当你查看pod信息时就能看到这个注解。io

 

2、命名空间class

命名空间能够将一组与其余对象隔离开,同一个命名空间内部的对象名不能重复,但不一样命名空间之间的对象无此约束。Kubernetes的命名空间是给对象划分的做用域,只有经过这个命名空间才能操做做用域内的对象。不一样的命名空间之间不提供网络隔离。

操做:

查看集群中已有的命名空间:

kubectl get ns

查看某个命名空间中的对象:

kubectl get pod -n namespace-name

建立命名空间能够经过yaml文件建立,也能够直接用下面指令:

kubectl create namespace  namespace-name

注意命名空间的名字不能有点号

如何将对象划分给对应的命名空间呢?能够在建立对象时指定命名空间:

kubectl create -f xxx.yaml  -n  namespace-name

或者在yaml文件中,在metadata标签下增长namespace标签。

相关文章
相关标签/搜索